AGENTS.md · git:20260920.915812f · 2026-09-20 · sha256 e04e308ddc71a4a1
AGENTS.md git:20260920.915812fA
Immutable. This exact content never changes and is served at /api/v1/blob/e04e308ddc71a4a1.
# Worker Routing contributor contract This independent repository is the canonical source for the Worker Routing plugin and its optional main-session context integration. - Edit `plugins/worker-routing/` for delegation policy and role instructions. - Edit `integrations/main-session/` for the native SessionStart adapter. - Edit `integrations/acpx/` for the optional ACP transport. Keep route names, provider/model priorities, account state, worker homes, and route config outside Git. - Dispatch source lives in `integrations/acpx/src/dispatch.mjs`, `dashboard.mjs`, `share.mjs` and `dashboard/`. `time.mjs` owns shared calendar bucketing; `workspaces.mjs` resolves private local Git/folder identity; `observations.mjs` retains only structured runtime evidence. `preferences.mjs` permits only theme, language and timezone writes outside Git. Project paths and runtime notes never cross the public share allowlist. Receipts own runtime truth; append-only review events own attributed collaboration annotations; projections are rebuildable. Keep HTTP loopback-only and exports aggregate-only. Never publish real state or infer acceptance, rework, provider identity or quota savings from completion. Validate accounting/privacy/shutdown with the ACP suite and exercise the actual dashboard in desktop and narrow browser viewports after UI changes. - `integrations/acpx/src/brand.mjs` owns the cat logo. The plugin asset `plugins/worker-routing/assets/cat.svg` is derived; regenerate it with `npm run brand:sync` from `integrations/acpx/` after changing the cat artwork. Its `.gitattributes` LF rule preserves exact renderer parity on Windows too. - `integrations/acpx/src/mark.mjs` owns the fixed line product mark used in the page header, favicon and share header. It does not replace the Canon cat artwork or plugin icon. - `integrations/acpx/src/themes.mjs` owns the named theme palettes; the adjacent `mascots.mjs` owns their companion artwork. The folded-ear cat and sage/blush default are the Canon identity: preserve the cat vector and colours when adding adjacent family themes. - Keep provider IDs and personal preferences in operator-owned configuration. - Never place personal instructions, chats, memory, tokens, real request captures, machine paths, or private continuity in this repository, including fixtures. - Keep examples synthetic and installation reversible. The installer must not rewrite AGENTS, approve hook trust, or change model/provider configuration. - Main context must arrive before the first root model request. Worker spawning uses `fork_turns="none"`; new work must preserve the root/child input boundary. - Keep installed copies separate from source. Use the plugin-creator update flow for an existing local installation; never patch a cache in place. - `LICENSE` governs software and functional material under `SUL-1.0`; `LICENSE-DOCUMENTATION.md` governs documentation under `CC-BY-NC-SA-4.0`. Keep the exact path map in `LICENSING.md` aligned, and do not call the project OSI open source or change these grants without the owner's explicit choice. - Check `python3 -m unittest discover -s tests -p 'test_*.py'` after Python changes. Run the opt-in native context probe for changes to hook delivery or spawning. - After ACP changes, run `npm ci --ignore-scripts`, `npm run check`, and `npm run test:acpx` from `integrations/acpx/`. Track `package-lock.json`, never `node_modules/`, private route state, adapter profiles, or receipts. - Update README and installation docs for changed behavior, dependencies, paths, privacy boundaries, commands, and acceptance claims. - Commit only explicit reviewed component paths. Source, local installation, context delivery, actual model execution, and GitHub state are separate claims.