|
1 | 1 | <!-- multiagent-safety:START --> |
2 | | -## Multi-Agent Execution Contract (multiagent-safety) |
| 2 | +<!-- AUTONOMY DIRECTIVE — DO NOT REMOVE --> |
| 3 | +YOU ARE AN AUTONOMOUS CODING AGENT. EXECUTE TASKS TO COMPLETION WITHOUT ASKING FOR PERMISSION. |
| 4 | +DO NOT STOP TO ASK "SHOULD I PROCEED?" — PROCEED. DO NOT WAIT FOR CONFIRMATION ON OBVIOUS NEXT STEPS. |
| 5 | +IF BLOCKED, TRY AN ALTERNATIVE APPROACH. ONLY ASK WHEN TRULY AMBIGUOUS OR DESTRUCTIVE. |
| 6 | +USE CODEX NATIVE SUBAGENTS FOR INDEPENDENT PARALLEL SUBTASKS WHEN THAT IMPROVES THROUGHPUT. THIS IS COMPLEMENTARY TO OMX TEAM MODE. |
| 7 | +<!-- END AUTONOMY DIRECTIVE --> |
3 | 8 |
|
4 | | -0. Session plan comment + read gate (required) |
| 9 | +# oh-my-codex - Intelligent Multi-Agent Orchestration |
5 | 10 |
|
6 | | -- Before editing, each agent must post a short session comment/handoff note that includes: |
7 | | - - plan/change name (or checkpoint id), |
8 | | - - owned files/scope, |
9 | | - - intended action. |
10 | | -- Before deleting/replacing code, each agent must read the latest session comments/handoffs first and confirm the target code is in their owned scope. |
11 | | -- If ownership is unclear or overlaps, stop that edit, post a blocker comment, and let the leader/integrator reassign scope. |
12 | | -- For git isolation, each agent must start on a dedicated branch via `scripts/agent-branch-start.sh "<task-or-plan>" "<agent-name>"`. |
13 | | -- Agent completion must use `scripts/agent-branch-finish.sh` (merge into `dev`, push, delete agent branch). |
| 11 | +This AGENTS.md is the top-level operating contract for this repository. |
14 | 12 |
|
15 | | -1. Explicit ownership before edits |
| 13 | +## Operating principles |
16 | 14 |
|
17 | | -- Assign each agent clear file/module ownership. |
18 | | -- Do not edit files outside your assigned scope unless the leader reassigns ownership. |
| 15 | +- Solve the task directly when possible. |
| 16 | +- Delegate only when it materially improves quality, speed, or correctness. |
| 17 | +- Keep progress short, concrete, and useful. |
| 18 | +- Prefer evidence over assumption; verify before claiming completion. |
| 19 | +- Use the lightest path that preserves quality. |
| 20 | +- Check official docs before implementing with unfamiliar SDKs/APIs. |
19 | 21 |
|
20 | | -2. Preserve parallel safety |
| 22 | +## Working agreements |
21 | 23 |
|
22 | | -- Assume other agents are editing nearby code concurrently. |
23 | | -- Never revert unrelated changes authored by others. |
24 | | -- If another change conflicts with your approach, adapt and report the conflict in handoff. |
| 24 | +- For cleanup/refactor/deslop work: write a cleanup plan first. |
| 25 | +- Lock behavior with regression tests before cleanup edits when needed. |
| 26 | +- Prefer deletion over addition. |
| 27 | +- Reuse existing patterns before introducing new abstractions. |
| 28 | +- No new dependencies without explicit request. |
| 29 | +- Keep diffs small, reviewable, and reversible. |
| 30 | +- Branching policy (always enforce): |
| 31 | + - Docs-only edits may be done directly on the active `main` branch (`README.md`, `AGENTS.md`, `CONTRIBUTING.md`, `SECURITY.md`, `LICENSE`, and `docs/**`). |
| 32 | + - Any code/runtime/test/release/config change must be done on a new branch and merged to `main` only through a PR (never direct push to `main`). |
| 33 | + - For branch+merge flows, bump npm version and include updated `package.json` + lockfile in the merge. |
| 34 | +- Run lint/typecheck/tests/static analysis after changes. |
| 35 | +- Final reports must include: changed files, simplifications made, and remaining risks. |
25 | 36 |
|
26 | | -3. Verify before completion |
| 37 | +## Delegation rules |
27 | 38 |
|
28 | | -- Run required local checks for the area you changed. |
29 | | -- Do not mark work complete without command output evidence. |
| 39 | +Default posture: work directly. |
30 | 40 |
|
31 | | -4. Required handoff format (every agent) |
| 41 | +Mode guidance: |
| 42 | +- Use deep interview for unclear requirements. |
| 43 | +- Use ralplan for plan/tradeoff/test-shape consensus. |
| 44 | +- Use team only for multi-lane coordinated execution. |
| 45 | +- Use ralph only for persistent single-owner completion loops. |
| 46 | +- Otherwise execute directly in solo mode. |
32 | 47 |
|
33 | | -- Files changed |
34 | | -- Behavior touched |
35 | | -- Verification commands + results |
36 | | -- Risks / follow-ups |
| 48 | +## Verification |
37 | 49 |
|
38 | | -## OpenSpec Plan Workspace (recommended) |
| 50 | +- Verify before claiming completion. |
| 51 | +- Run dependent tasks sequentially. |
| 52 | +- If verification fails, continue iterating instead of stopping early. |
| 53 | +- Before concluding, confirm: no pending work, tests pass, no known errors, and evidence collected. |
39 | 54 |
|
40 | | -When work needs a durable planning phase, scaffold a plan workspace before implementation: |
| 55 | +## Lore commit protocol |
41 | 56 |
|
42 | | -```bash |
43 | | -bash scripts/openspec/init-plan-workspace.sh "<plan-slug>" |
44 | | -``` |
| 57 | +Commit messages should capture decision records using git trailers. |
45 | 58 |
|
46 | | -Expected shape: |
| 59 | +Recommended trailers: |
| 60 | +- Constraint: |
| 61 | +- Rejected: |
| 62 | +- Confidence: |
| 63 | +- Scope-risk: |
| 64 | +- Reversibility: |
| 65 | +- Directive: |
| 66 | +- Tested: |
| 67 | +- Not-tested: |
| 68 | +- Related: |
47 | 69 |
|
48 | | -```text |
49 | | -openspec/plan/<plan-slug>/ |
50 | | - summary.md |
51 | | - checkpoints.md |
52 | | - planner/plan.md |
53 | | - planner/tasks.md |
54 | | - architect/tasks.md |
55 | | - critic/tasks.md |
56 | | - executor/tasks.md |
57 | | - writer/tasks.md |
58 | | - verifier/tasks.md |
59 | | -``` |
| 70 | +## Cancellation |
| 71 | + |
| 72 | +Use cancel mode/workflow only when work is complete, user says stop, or a hard blocker prevents meaningful progress. |
| 73 | + |
| 74 | +## State management |
| 75 | + |
| 76 | +OMX runtime state typically lives under `.omx/`: |
| 77 | +- `.omx/state/` |
| 78 | +- `.omx/notepad.md` |
| 79 | +- `.omx/project-memory.json` |
| 80 | +- `.omx/plans/` |
| 81 | +- `.omx/logs/` |
60 | 82 | <!-- multiagent-safety:END --> |
0 commit comments