Publicar
1. Crie os bancos de dados
npx wrangler d1 create rubry-config # configurações e chaves de API: middleware/wrangler.jsonc (DB)
npx wrangler d1 create rubry-memory # memória dos agentes: agents/wrangler.jsonc (MEMORY)
Cole cada database_id no seu wrangler.jsonc.
2. Defina os segredos
cd middleware
npx wrangler secret put ADMIN_TOKEN # faz login na página de configurações
npx wrangler secret put SECRET_KEY # criptografa a chave do provedor: guarde, nunca mude
Opcionalmente, defina o mesmo AGENTS_API_KEY nos dois Workers. O Worker de agentes não tem URL pública (workers_dev: false), então o service binding do middleware já é a única entrada.
3. Publique
npm run deploy
Isso publica o Worker de agentes, aplica as migrações do middleware e publica o middleware (agentes primeiro: o middleware se liga a ele). Sua página de configurações e seu endpoint ficam em https://rubry-middleware.<seu-subdominio>.workers.dev.
Um domínio próprio
Em middleware/wrangler.jsonc, adicione uma rota numa zona da sua conta e publique de novo:
"routes": [{ "pattern": "agents.example.com", "custom_domain": true }]
Vários assistentes numa conta
Renomeie os dois Workers (name em cada wrangler.jsonc, e services[0].service no middleware) e crie um par de bancos para cada um.
Modo de demonstração
Para publicar um ambiente de testes que qualquer pessoa possa usar, como o example.rubry.ai, defina DEMO_MODE no middleware:
"vars": { "DEMO_MODE": "true" }
O token de administrador passa a aparecer na tela de entrada. Como todos o compartilham, o ambiente trava o que permitiria a um visitante afetar outro:
| Modo de demonstração | |
|---|---|
| Provedor de modelo | sempre o modelo embutido do Workers AI |
| Agentes ligados/desligados | fixos |
| Chaves de API | qualquer pessoa cria uma; ninguém lista nem apaga; cada uma dura 24 horas |
| Uso | 30 requisições por chave e 1.000 no total por dia |
Mude os limites em DEMO, no arquivo middleware/src/store.ts.