Hospedagem estática e SPA
Seu site no ar com um comando. Sem YAML.
Você já buildou. Falta publicar — e é aí que aparecem o workflow, o bucket, o DNS e o certificado. O Hoster pula essa parte: um comando, HTTPS automático, e a rota /qualquer-coisa da sua SPA não dá 404. Com servidor MCP, se você trabalha com agente.
Antes e depois
Publicar não deveria ser
UM PROJETO.
Escrever o workflow, criar o bucket, apontar o DNS, emitir o certificado, descobrir por que /dashboard dá 404 no reload. Uma tarde inteira para um site que já estava pronto na sua máquina.
- Sem arquivo de workflow
- Sem bucket para configurar
- Sem certificado para emitir e renovar
- Sem regra de rewrite para a sua SPA
A CLI inteira
Não temos site de documentação.
Temos dois comandos — e eles são o produto inteiro.
1 · Entrar
Uma chave, uma vez
hoster login hk_sua_chave, e pronto. A chave fica salva em ~/.hoster-config.json — você não digita isso de novo. Sem instalar nada: bunx @ciromaciel/hoster-cli.
2 · Publicar
hoster deploy --dir ./dist
É o comando inteiro. Zipa, envia e devolve a URL do site no ar com HTTPS. Não há passo três.
3 · As flags
São quatro. Não há uma quinta.
A CLI inteira: --project define o subdomínio, --dir o que subir, --main a entrada e --token o acesso em CI/CD. Todas têm padrão. Sem arquivo de configuração, sem hoster.config.js, sem convenção escondida.
4 · CI/CD
O mesmo comando, no workflow
Sem action própria pra instalar, sem plugin. É a mesma linha que você roda no terminal, com --token vindo do secret do repositório.
Para quem trabalha com agente
Seu agente publica o site.
Sem você colar documentação antes.
1 · Conectar
Uma linha, e o agente já tem as ferramentas
É um servidor remoto: não há pacote pra instalar, nem processo pra manter rodando. Sem chave no comando: o cliente recebe 401, descobre o servidor de login sozinho e abre o navegador para você aprovar.
$ claude mcp add --transport http \
hoster \
https://hoster.worker.myinfrastructure.click/mcp
→ 401 WWW-Authenticate
→ descobre o servidor de login
→ você aprova no navegador
✔ Connected · 16 tools2 · Pedir
Em português, não em curl
O agente descobre os projetos, lê o estado e executa. Você não cola documentação nem explica a ordem dos passos.
Você: "aponta o site-cliente pra API de homologação" → hoster_read · hoster_get_project → hoster_write · hoster_set_variables ✔ sem rebuild, sem deploy
3 · Os tools
Dez. Um por intenção, não por rota.
A API tem vinte endpoints; o servidor expõe dez tools. Publicar é uma intenção, não três chamadas — e o agente não precisa saber a ordem.
list_projects get_project check_name check_domain set_variables set_cache set_domain purge_cache deploy_ticket deploy_status list_deployments rollback audit_project delete_project
4 · Publicar
Uma frase, e o site está no ar
O agente pede o ticket, roda o comando e confirma. Os arquivos vão direto do seu disco para o Hoster — eles não passam pelo modelo, então publicar um site não consome o seu contexto. O ticket vale para um projeto, uma vez, quinze minutos. Apagar projeto exige confirmação explícita.
Você: "publica a pasta dist no site-novo"
→ hoster_write · hoster_deploy_ticket ✔ criado
bunx @ciromaciel/hoster-cli push
ht_a1b2… --dir ./dist
→ hoster_read · hoster_deploy_status ✔ no ar
https://site-novo.myhoster.click5 · Nenhuma chave no arquivo
Você aprova no navegador
O conector não guarda segredo nenhum: o cliente descobre o Infrastructure Auth sozinho a partir do 401, você autoriza no navegador e o token fica com ele. E o escopo continua valendo — um token de leitura nem enxerga as ferramentas que apagam.
$ claude mcp add --transport http \
hoster \
https://hoster.worker.myinfrastructure.click/mcp
→ autorize no navegador
✔ Connected · 16 tools
escopo auth:read → só as 7 de leituraPreço
3, 9 ou 99 projetos
Dois comandos. Sem YAML.
Se você travar em algum passo antes de ver o site no ar, a culpa é nossa — e a gente quer saber qual foi o passo.
FAQ
As perguntas que a gente prefere responder antes
Seu caso é um dos que a gente não atende?
Fala direto com engenharia. Se o Hoster não serve para o que você precisa, a gente diz na hora — e aponta o que serve.