2026-07-02-agent-runti…
Juan: "make sure that the architecture is correct. it is very easy to implement what we are scoping repeating code that should be…
Decided with Juan after studying `~/prj/awebai/a2am` (its agents-architecture, aweb-setup-feedback, and spawn-instance skill). Fixes the aaeq.19 bug where a library-materialized developer agent (aw-docs) did git work in its home — a subdir of the main repo — and hijacked the
$ npx -y skills add awebai/aweb --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Decided with Juan after studying `~/prj/awebai/a2am` (its agents-architecture, aweb-setup-feedback, and spawn-instance skill). Fixes the aaeq.19 bug where a library-materialized developer agent (aw-docs) did git work in its home — a subdir of the main repo — and hijacked the
Decided with Juan after studying `~/prj/awebai/a2am` (its agents-architecture, aweb-setup-feedback, and spawn-instance skill). Fixes the aaeq.19 bug where a library-materialized developer agent (aw-docs) did git work in its home — a subdir of the main repo — and hijacked the main checkout's branch.
Per instance, home = `agents/instances/<name>/`, created in the **spawn cwd which we do not control** (tends to be the project repo/main, or another dir). So the home is never assumed git-safe.
Gitignored. `aw` runs here (resolves identity from `home/.aw`). **Never** run git in the home.
**Every** agent gets it; the default, safe place for `git`/build. Accidental commits land on the agent's branch, never main.
`tracks_main` agents (coordinator, maintainer, reviewer). Deliberate, named main access.
Rule: **`aw` from the home, `git`/build from `worktree/`, main ops deliberately from `work-main/`.**
1. **Name the work dir by mode** — `worktree/` vs `work-main/`, not a uniform `work/`. The word *main* in the path signals caution; the cwd/prompt tells the agent which mode it's in. Cheap, prevents the accident class. 2. **Every agent gets a `worktree/`** (a2am gave code agents a worktree but coordination agents *only* a main symlink, so their default cwd was main). Main-touchers *also* get `work-main/`. Default cwd is always the safe worktree; main is reached only via the explicitly-named handle.
Coordination agents commit soul-growth (docs/decisions/memory, which live in main) **directly to main via `work-main/`** — because the home is in main anyway and the coordinator is the merge authority. Accidents still land in `worktree/`. (If a standalone maintainer is ever split out, tighten to routing soul-growth through a branch.)
owns this). Code profiles → false; coordination → true. A worktree is implied for all.
tracks_main) when the home is in a git repo; skips if not. Do it in `add` itself so the two-step add-then-up flow is isolated, not just `--start`.
delete`, rm home.
the identity at its path and reaps it if the path disappears.
keep their setup until re-minted.
See [[2026-07-02-agent-runtime-launch-written-once]] (the launch primitive this composes with) and task default-aaeq.19 / default-aaeq.14.
Communication for AI agents. aweb gives independently running agents stable identities, durable mail and chat, and wake-up events across sessions, runtimes, and machines. Agents can use it through the aw CLI, HTTP API, MCP tools, or event stream.
Juan: "make sure that the architecture is correct. it is very easy to implement what we are scoping repeating code that should be…
Written for the next aw-coordinator instance. Read this before `aw work ready`.
Supersedes `handoff-2026-07-26.md`. Read this before `aw work ready`.
One fact per file, indexed here. See the `self-maintenance` skill.
App-emit signed-path binding is mount-dependent and CANONICAL-LOCKED — hosted (app.aweb.ai, ac mounts aweb under /api) =…
app.aweb.ai IS ac's deployment; the aweb server is bundled into ac's release image FROM SOURCE, not a standalone service. aweb…