Guia do Standard Cloud
O plano Starter Cloud inclui um contêiner Docker dedicado para o seu time de IA. Este guia cobre o provisionamento, acesso ao terminal, configuração do GitHub e gerenciamento do ciclo de vida.
O que você recebe
Um contêiner Ubuntu 22.04 dedicado no arc-cloud-prod da Hetzner (157.180.44.232):
- Claude CLI pré-instalado e autenticado
- Binário Arc pré-instalado
- Volume
/workspacepersistente (sobrevive a reinicializações do contêiner) - Usuário não-root
arcuserpor segurança - 1.5 vCPU, 2 GB de RAM, política de segurança no-new-privileges
Provisionamento
- Faça upgrade para o plano Starter Cloud (Settings → Billing).
- Vá em Settings → Cloud Workspace.
- Clique em Provision Container — leva ~30 segundos.
- Quando o status mostrar
ready, clique em Open Terminal.
Terminal Web
O terminal é uma sessão WebSocket completa em xterm.js proxiada pelo servidor do CRM. Você pode executar:
arc <project> # start a bridge session
claude -p "..." # direct Claude call
git clone ... # clone your repo into /workspace
A sessão usa seu JWT do CRM para autenticação — nenhuma chave SSH é necessária a partir do navegador.
Roteamento Chat ↔ Cloud (Phase 70)
Após o provisionamento, as mensagens de chat do CRM ou do Telegram são executadas dentro do seu
contêiner, não no servidor master. O worker inicia claude -p em
/workspace/<project>; as edições vão para seus repositórios da bot-org; os snapshots de pausa por inatividade
enviam o trabalho ao GitHub. Guia completo: cloud-chat-routing.md.
Repositórios
Todo projeto do Arc OS recebe automaticamente um repositório privado em uma organização
do GitHub gerenciada por bot. Seu Cloud Workspace clona cada repositório de projeto em
/workspace/<project> no provisionamento e envia um snapshot ao pausar. Você controla
a sincronização do seu laptop via arc pull / arc push / arc cloud sync.
Para o modelo completo — três tipos de repositório (system / project / external), a convenção de nomes, comandos do dia a dia e fluxo de repositórios externos — veja cloud-repos.md.
Configuração de SSH do GitHub (para repositórios externos)
Os repositórios auto-gerenciados do Arc OS descritos acima não exigem nenhuma configuração — eles
se autenticam via um token de instalação de curta duração gravado automaticamente em
~/.git-credentials. A configuração de SSH abaixo é apenas necessária
quando você quer clonar seus próprios repositórios privados do GitHub como entradas externas
no painel Repositories:
- Em Settings → Cloud Workspace, clique em GitHub SSH Setup.
- O Arc OS gera um par de chaves Ed25519 no contêiner.
- Copie a chave pública exibida na interface.
- Adicione-a em GitHub → Settings → SSH and GPG keys → New SSH key.
- Teste com
ssh -T [email protected]no terminal.
Inatividade e Retomada
Os contêineres pausam automaticamente após 30 minutos de inatividade (cron roda a cada 5 min no servidor da API). Isso é intencional — um contêiner pausado custa US$ 0 de computação.
Para retomar:
- Envie qualquer mensagem no chat do Workspace do CRM
- Execute
/continueno Telegram (se o seu projeto tiver um bot TG) - Clique em Resume em Settings → Cloud Workspace
A retomada leva ~2-3 segundos (Docker unpause).
Estados do Ciclo de Vida
| Estado | Significado |
|---|---|
provisioning |
Contêiner sendo criado |
ready |
Em execução, aceitando conexões |
paused |
Suspenso por inatividade, retoma com atividade |
suspended |
Suspenso manualmente ou cobrança vencida |
deleted |
Desprovisionado (cancelamento) |
Cancelamento
Quando você cancela o Starter Cloud:
- O status do contêiner muda para
pausedimediatamente - Seus dados em
/workspacesão preservados por 7 dias - Após 7 dias, o contêiner é desprovisionado
Para reativar, faça upgrade de volta para o Starter Cloud — um novo contêiner é provisionado.
Segurança
- O contêiner roda como
arcuser(não-root) --cap-drop=ALL --security-opt=no-new-privilegesem tempo de execução- O bridge SSH do servidor da API usa a chave dedicada
hetzner_ed25519(não a sua chave pessoal) - O IP do contêiner é interno à rede da Hetzner — sem acesso público direto
- Todo o tráfego passa pelo proxy
62.171.128.248(servidor de API Contabo) →157.180.44.232(contêineres Hetzner)