Guías
Agentes
Un revisor, un traductor y un auditor semanal que trabajan tu contenido junto a tu Hollware, y nunca publican.
Agentes
@hollware/agents ejecuta tres agentes en un Worker propio, junto a tu Hollware:
| Agente | Qué hace |
|---|---|
| Revisor | Comenta una vez cada revisión pendiente: claridad, la voz de tu guía de estilo, afirmaciones sin un ejemplo. |
| Traductor | Redacta la traducción que falta de una entrada publicada, corrige lo que rechazan los contratos y pide su revisión. |
| Auditor | Una vez por semana, informa las entradas muy leídas que no cambian hace meses y las entradas publicadas que los contratos rechazan ahora. |
Ninguno publica. Su cliente MCP rechaza cada herramienta que publica o decide (publish, approve_review, request_changes, unpublish), tenga lo que tenga su token. Una traducción llega a los lectores solo cuando una persona aprueba su revisión; una auditoría es un borrador.
Configúralos
- Crea un token para ellos, sin permiso para publicar:
npx hollware token create --label agents --scopes content:read,content:write --remote- Crea un namespace de KV para lo que recuerdan:
npx wrangler kv namespace create my-cms-agents- Crea un Worker para ellos. Su
wrangler.jsonc, con el nombre de tu Worker de Hollware enservice:
{
"name": "my-cms-agents",
"main": "src/index.ts",
"compatibility_date": "2026-10-06",
"vars": { "HOLLWARE_PUBLIC_URL": "https://cms.example.com" },
"services": [{ "binding": "HOLLWARE", "service": "my-cms" }],
"ai": { "binding": "AI" },
"kv_namespaces": [{ "binding": "AGENTS_KV", "id": "<el id del paso 2>" }]
}Y src/index.ts:
import { createHollwareAgents } from '@hollware/agents'
import { WorkerEntrypoint } from 'cloudflare:workers'
const agents = createHollwareAgents({
auditor: { collection: 'reports', locale: 'en' },
})
export class HollwareAgents extends WorkerEntrypoint<Env> {
async run() {
await agents.run(this.env)
}
}
export default { fetch: agents.fetch, scheduled: agents.scheduled }- Dale el token y despliega:
npx wrangler secret put HOLLWARE_AGENT_TOKEN
npx wrangler deploy- Deja que tu Hollware los despierte. En el
wrangler.jsoncde tu Hollware, y luego despliégalo de nuevo:
"services": [{ "binding": "AGENTS", "service": "my-cms-agents", "entrypoint": "HollwareAgents" }]El cron trigger de Hollware despierta a los agentes cada diez minutos, así que no necesitan uno propio: el plan gratuito de Workers tiene cinco por cuenta. Cada ejecución es de un agente, por turnos: el revisor, luego el traductor y luego el auditor, que revisa una docena de entradas por ejecución y escribe su informe una vez por semana. Un agente a la vez mantiene cada ejecución dentro de las cincuenta llamadas que puede hacer un Worker gratuito.
Si te sobran cron triggers, dale uno a los agentes en vez del binding: scheduled los ejecuta de la misma forma.
El modelo
Los agentes usan Workers AI, @cf/meta/llama-3.3-70b-instruct-fp8-fast salvo que indiques otro. Se detienen por el día después de 100 llamadas al modelo, lo que los mantiene dentro del uso gratuito de Workers AI:
createHollwareAgents({ model: '@cf/openai/gpt-oss-120b', dailyLimit: 50, gateway: 'my-gateway' })gateway envía las llamadas por un AI Gateway, por sus logs y su caché. Para otro proveedor, pasa una función que reciba los mensajes y devuelva la respuesta.
El informe
El auditor no necesita un modelo. Su informe reúne lo que encontraron sus ejecuciones en la última semana, con las páginas muy leídas que no cambian hace seis meses. Escribe el informe como un borrador de la colección que le indiques, con el slug audit-<día>, y nunca lo publica. La colección necesita un title y una description en su esquema, o una función frontmatter que entregue lo que sí necesita.
Para recibir el informe también en Slack, configura la URL de un incoming webhook como secreto:
npx wrangler secret put AGENTS_WEBHOOK_URLEl auditor informa las páginas muy leídas solo cuando la analítica del sitio está conectada: consulta Búsqueda y analítica.
reviewer: false, translator: false o auditor: false.