بنقرة واحدة
e2e-loop
End-to-end stability loop — repeatedly run agentbox new, diagnose failures, fix, and validate
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
End-to-end stability loop — repeatedly run agentbox new, diagnose failures, fix, and validate
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | e2e-loop |
| description | End-to-end stability loop — repeatedly run agentbox new, diagnose failures, fix, and validate |
| disable-model-invocation | true |
| allowed-tools | Bash, Grep, Glob, Read, Write, Edit, Agent, TaskCreate, TaskList, TaskGet, TaskUpdate, TeamCreate, TeamDelete, SendMessage |
You are the orchestrator for the e2e stability loop. Your goal: make agentbox new --mode dev work reliably 5
consecutive times. You do not write code — you delegate to the implementor and verify via the reviewer.
.agent-memory/e2e-loop/STATUS.json to understand current phase and progress..agent-memory/e2e-loop/runs.jsonl (last 5 entries) to understand recent history..agent-memory/e2e-loop/CHECKLIST.md to know the verification criteria..claude/skills/e2e-loop/PLAN.md for the full plan, principles, and key code locations.Alternate between trusted and untrusted on each run to exercise both code paths.
Use totalRuns from STATUS.json to determine: even runs → untrusted, odd runs → trusted.
Spin up (untrusted): agentbox new --mode dev --untrusted --use-local-branch --no-focus test
Spin up (trusted): agentbox new --mode dev --use-local-branch --no-focus test
Tear down: agentbox rm --force test
List: agentbox list
If .agent-memory/e2e-loop/STATUS.json shows phase: "baseline" and totalRuns: 0:
.agent-memory/e2e-loop/STATUS.json to phase: "fixing" with the failure details.If .agent-memory/e2e-loop/STATUS.json shows phase: "fixing":
SendMessage..agent-memory/e2e-loop/runs.jsonl or baseline).Project tooling:
Format: bun run fmt:check
Lint: bun run lint
Typecheck: bun run typecheck
Build: n/a
Test: bun test
SendMessage.
The reviewer handles: teardown, spin-up, readiness polling, full checklist, diagnosis quality gate, and result recording.SendMessage..agent-memory/e2e-loop/STATUS.json to phase: "validating".If .agent-memory/e2e-loop/STATUS.json shows phase: "validating":
.agent-memory/e2e-loop/STATUS.json. If consecutivePasses >= 5, update phase to "complete" and stop.totalRuns % 2 === 0 → untrusted, else → trusted.SendMessage. The reviewer handles: teardown, spin-up,
readiness polling, checklist verification, result recording in runs.jsonl and STATUS.json.SendMessage):
STATUS.json shows phase: "fixing", consecutivePasses: 0. Report to user.STATUS.json shows incremented consecutivePasses. If now >= 5, set phase: "complete".If consecutivePasses >= 5: report success to the user. Done.
Generate a short, unique team name based on the task context (e.g., e2e-fix-teardown, e2e-validate-run9). Do NOT use
a generic name like implement — multiple concurrent sessions may run, and agent names must be globally unique to avoid
cross-team message routing collisions. Create the team with TeamCreate using the generated name, then spawn both
teammates using the Agent tool with the specified subagent_type and unique names derived from the team. Do this
once — at the start of Phase 2, or at the start of Phase 3 if entering validation directly. Teammates persist for the
session. Communicate with them via SendMessage — never spawn a new agent for a task a teammate can handle. If you need
to respawn an agent, append a suffix (e.g., e2e-impl-2).
subagent_type: "implementor"
name: "<team-derived-name>" # e.g., "e2e-impl-teardown", NOT "implementor"
Provide: task description and evidence, code locations from PLAN.md, the project tooling block, the principles (especially evidence-before-action), and instruction to flag behavioral questions to you.
subagent_type: "reviewer"
name: "<team-derived-name>" # e.g., "e2e-review-teardown", NOT "reviewer"
The reviewer owns the full run lifecycle: teardown, spin-up, readiness polling, checklist verification, and result
recording. Send it instructions via SendMessage; it reports back with a structured result.
Provide:
totalRuns % 2)git diff origin/main...HEAD for the diff commandtmux capture-pane -t test:<window>.<pane> -p -S -1000).agent-memory/e2e-loop/runs.jsonl format for recording.agent-memory/e2e-loop/STATUS.json pathagentbox list — parse devtools port for Playwright MCP verification)The reviewer must:
rm --force test, then tmux kill-session -t test if leftover)runs.jsonl and update STATUS.jsonReport to the user at these milestones: