Commit graph

2 commits

Author SHA1 Message Date
7799fd62e3 framework(core): lift site identity into site.mjs (config-driven)
Phase 2. host + agent modules no longer hardcode identity:
- site.mjs derives name/url/host/model/agentUser/home/role/qaEmail from
  site.config.json + astroagent.config.json
- host uses site.model/site.tools/site.home; QA uses site.url/host/qaEmail/routes
- personas templated from site.*; site-specific brand wording (sumi-e, .ca-*,
  'law firms') dropped — brand now comes only from brand/BRAND.md + the brand skill
Core (host.mjs + agents/*) is now site-agnostic; identity lives in config.
2026-07-24 07:57:54 -04:00
542858b1ec framework(core): split console runner into host + pluggable agent modules
Phase 1 of the standalone agent framework. Pure refactor, behaviour identical:
- host.mjs: shared runtime (route registry, one runClaudeJson/runClaudeStream
  replacing 5 inline spawns, build/git/phpCli, SSE job model, scheduler, core
  /ping /auth /logout)
- agents/{in-page-console,project-builder,web-designer,qa}.mjs: each exports
  register(host), owns its routes/triggers/persona
- server.mjs: bootstrap that loads host + registers agents
- web-designer exposes host.drainTasks; qa autofix kicks it
Verified: QA pass, Web Designer queue task, heartbeat, all endpoints.
2026-07-24 07:50:26 -04:00