[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M732AMHC79MFCMANMRHCSN2S":3,"skill-same:01M732AMHC79MFCMANMRHCSN2S":47},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":6,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":31,"updatedAt":32,"install":33,"resources":46},"01M732AMHC79MFCMANMRHCSN2S","execute",null,"Full execution protocol for MODE: EXECUTE -- task execution, coder retry handling, QA gates, completion evidence, and per-task closure.","djimit\u002Fdjimitflo","djimit","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F19958832?v=4","01M7327CH792DZPFZPYAEFPRXT","Dutch Dim","01M7327CHWPSXT9AWE4MPWCX9Q",2,"MIT","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fexecute\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: execute\ndescription: >\n  Full execution protocol for MODE: EXECUTE -- task execution, coder retry handling, QA gates, completion evidence, and per-task closure.\n---\n\n# Execute Protocol\n\nThis protocol is loaded on demand by the architect stub in src\u002Fagents\u002Farchitect.ts. The architect prompt keeps only activation, action, and hard safety constraints; the full execution details live here.\n\n### MODE: EXECUTE\nFor each task (respecting dependencies):\n\nRETRY PROTOCOL — when returning to coder after any gate failure:\n1. Provide structured rejection: \"GATE FAILED: [gate name] | REASON: [details] | REQUIRED FIX: [specific action required]\"\n2. Re-enter at step 5b (the active swarm's coder agent) with full failure context\n3. Resume execution at the failed step (do not restart from 5a)\n   Exception: if coder modified files outside the original task scope, restart from step 5c\n4. Gates already PASSED may be skipped on retry if their input files are unchanged\n5. Print \"Resuming at step [5X] after coder retry [N\u002Fconfigured QA retry limit]\" before re-executing\n\nGATE FAILURE RESPONSE RULES — when ANY gate returns a failure:\nYou MUST return to the active swarm's coder agent. You MUST NOT fix the code yourself.\n\nWRONG responses to gate failure:\n✗ Editing the file yourself to fix the syntax error\n✗ Running a tool to auto-fix and moving on without coder\n✗ \"Installing\" or \"configuring\" tools to work around the failure\n✗ Treating the failure as an environment issue and proceeding\n✗ Deciding the failure is a false positive and skipping the gate\n\nRIGHT response to gate failure:\n✓ Print \"GATE FAILED: [gate name] | REASON: [details]\"\n✓ BEFORE the retry delegation: call `declare_scope` with the file list the retry will touch. Re-declare even if the files are identical to the original task — retry scope persists per-call, not per-task. See Rule 1a.\n✓ Delegate to the active swarm's coder agent with:\nTASK: Fix [gate name] failure\nFILE: [affected file(s)]\nINPUT: [exact error output from the gate]\nCONSTRAINT: Fix ONLY the reported issue, do not modify other code\n✓ After coder returns, re-run the failed gate from the step that failed\n✓ Print \"Coder attempt [N\u002Fconfigured QA retry limit] on task [X.Y]\"\n\nThe ONLY exception: lint tool in fix mode (step 5g) auto-corrects by design.\nAll other gates: failure → return to coder. No self-fixes. No workarounds.\n\n5a. **UI DESIGN GATE** (conditional — Rule 9): If task matches UI trigger → the active swarm's designer agent produces scaffold → pass scaffold to coder as INPUT. If no match → skip.\n\n→ After step 5a (or immediately if no UI task applies): Call update_task_status with status in_progress for the current task. Then proceed to step 5b.\n\n5a-bis. **DARK MATTER CO-CHANGE DETECTION**: After declaring scope but BEFORE finalizing the task file list, call knowledge_recall with query hidden-coupling primaryFile where primaryFile is the first file in the task's FILE list. Extract primaryFile from the task's FILE list (first file = primary). If results found, add those files to the task's AFFECTS scope with a BLAST RADIUS note. If no results or knowledge_recall unavailable, proceed gracefully without adding files. This is advisory — the architect may exclude files from scope if they are unrelated to the current task. Delegate to the active swarm's coder agent only after scope is declared.\n\n5b-PRE (required): Call `declare_scope({ taskId, files })` with the EXACT file list for this task — including any co-change files surfaced by 5a-bis. Skipping this call will cause every coder write to be BLOCKED by scope-guard. No `declare_scope` → no 5b delegation. See Rule 1a.\n    5b-BASE (required, once per task): Call `sast_scan` with `{ capture_baseline: true, phase: \u003CN>, changed_files: \u003Cfiles from 5b-PRE> }` where `\u003CN>` is the current phase number (extract from current task ID: task \"3.2\" → phase 3, task \"1.5\" → phase 1). The tool maintains `.swarm\u002Fevidence\u002F{phase}\u002Fsast-baseline.json` as a phase-scoped, incrementally merged baseline of pre-existing SAST findings. Calling twice for the same files is safe (idempotent merge). Do NOT re-capture mid-task.\n    → REQUIRED: Print \"sast-baseline: [WRITTEN — N fingerprints | MERGED — N fingerprints | SKIPPED — gate disabled | ERROR — details]\"\n    → Subsequent `pre_check_batch` calls with `phase: \u003CN>` will automatically diff against this baseline — only NEW findings (not in baseline) drive the fail verdict.\n    -> PREFLIGHT CHECKLIST: Before first coder delegation, answer \"SAST baseline captured before first coder delegation? yes\u002Fno\u002Fdisabled\u002Ferror\". If the answer is no, do not delegate to coder; run 5b-BASE first. If disabled or error, record the exact tool result.\n5b. the active swarm's coder agent - Implement (if designer scaffold produced, include it as INPUT).\n    → If this dispatch fails with `PLAN_CRITIC_GATE_VIOLATION`: the plan has no current critic-approved snapshot (commonly a plan approved before this mechanical gate existed). Do NOT retry the coder dispatch as-is — re-run MODE: CRITIC-GATE to get a fresh critic `APPROVED` verdict, then retry this step.\n5b-bis. **CODER OUTPUT VERIFICATION**: After the coder reports completion, do NOT accept the self-report alone. Run `diff` (step 5c) and inspect at least one of the modified files yourself to confirm the change exists. The coder may report DONE without having produced any diff. A 30-second read of the changed file(s) catches this failure mode. This is NOT a separate explorer dispatch — the existing `diff` tool at step 5c is the verification mechanism; the key discipline is checking that `diff` returns actual changes before proceeding, rather than forwarding the coder's self-report to the next gate.\n5c. Run `diff` tool. If `hasContractChanges` → the active swarm's explorer agent integration analysis. If COMPATIBILITY SIGNALS=INCOMPATIBLE or MIGRATION_SURFACE=yes → coder retry. If COMPATIBILITY SIGNALS=COMPATIBLE and MIGRATION_SURFACE=no → proceed.\n    → REQUIRED: Print \"diff: [PASS | CONTRACT CHANGE — details]\"\n    5d. Run `syntax_check` tool. SYNTACTIC ERRORS → return to coder. NO ERRORS → proceed to placeholder_scan.\n    → REQUIRED: Print \"syntaxcheck: [PASS | FAIL — N errors]\"\n    5e. Run `placeholder_scan` tool. PLACEHOLDER FINDINGS → return to coder. NO FINDINGS → proceed to imports.\n    → REQUIRED: Print \"placeholderscan: [PASS | FAIL — N findings]\"\n    5f. Run `imports` tool for dependency audit. ISSUES → return to coder.\n    → REQUIRED: Print \"imports: [PASS | ISSUES — details]\"\n    5g. Run `lint` tool with fix mode for auto-fixes. If issues remain → run `lint` tool with check mode. FAIL → return to coder.\n    → REQUIRED: Print \"lint: [PASS | FAIL — details]\"\n    5h. Run `build_check` tool. BUILD FAILS → return to coder. SUCCESS → proceed to pre_check_batch.\n    → REQUIRED: Print \"buildcheck: [PASS | FAIL | SKIPPED — no toolchain]\"\n    5i. Run `pre_check_batch` tool with `phase: \u003CN>` (same phase number used in 5b-BASE) → runs four verification tools in parallel (max 4 concurrent):\n    - lint:check (code quality verification)\n    - secretscan (secret detection)\n    - sast_scan (static security analysis — diffs against phase baseline when phase provided)\n    - quality_budget (maintainability metrics)\n    → Returns { gates_passed, lint, secretscan, sast_scan, quality_budget, total_duration_ms }\n    → sast_scan result may include { new_findings, pre_existing_findings, baseline_used } when baseline diff is active.\n    → If ALL FOUR tools have ran === false (lint.ran === false && secretscan.ran === false && sast_scan.ran === false && quality_budget.ran === false):\n        → This is a SKIP - no tools actually ran. Print \"pre_check_batch: SKIP — all tools ran===false (no files to check or tools not available)\" and proceed to the active swarm's reviewer agent.\n    → Else if gates_passed === false: read individual tool results, identify which tool(s) failed, return structured rejection to the active swarm's coder agent with specific tool failures. Do NOT call the active swarm's reviewer agent.\n    → If gates_passed === true AND sast_preexisting_findings is present: proceed to the active swarm's reviewer agent. Include the pre-existing SAST findings in the reviewer delegation context with instruction: \"SAST TRIAGE REQUIRED: The following SAST findings existed before this task began (from phase baseline or unchanged lines). Verify these are acceptable pre-existing conditions and do not interact with the new changes.\" Do NOT return to coder for pre-existing findings.\n    → If gates_passed === true (no sast_preexisting_findings): proceed to the active swarm's reviewer agent.\n    → REQUIRED: Print \"pre_check_batch: [PASS — all gates passed | PASS — pre-existing SAST findings (N findings, reviewer triage) | FAIL — [gate]: [details]]\"\n\n⚠️ pre_check_batch SCOPE BOUNDARY:\npre_check_batch runs FOUR automated tools: lint:check, secretscan, sast_scan, quality_budget.\npre_check_batch does NOT run and does NOT replace:\n- the active swarm's reviewer agent (logic review, correctness, edge cases, maintainability)\n- the active swarm's reviewer agent security-only pass (OWASP evaluation, auth\u002Fcrypto review)\n- the active swarm's test_engineer agent verification tests (functional correctness)\n- the active swarm's test_engineer agent adversarial tests (attack vectors, boundary violations)\n- diff tool (contract change detection)\n- placeholder_scan (TODO\u002Fstub detection)\n- imports (dependency audit)\ngates_passed: true means \"automated static checks passed.\"\nIt does NOT mean \"code is reviewed.\" It does NOT mean \"code is tested.\"\nAfter pre_check_batch passes, you MUST STILL delegate to the active swarm's reviewer agent.\nTreating pre_check_batch as a substitute for the active swarm's reviewer agent is a PROCESS VIOLATION.\n\n    5j-COUNCIL (when council_mode is ON — replaces steps 5j through 5l):\n    When `council_mode` is enabled in the QA gate profile, Stage B (steps 5j-5l: reviewer + test_engineer) is REPLACED by the full 5-member council per task.\n\n    After Stage A (pre_check_batch) passes:\n    1. Ensure `declare_council_criteria` was called for this task (prerequisite).\n    2. Dispatch all 5 council members (critic, reviewer, sme, test_engineer, explorer) in PARALLEL with task-scoped context.\n    3. Collect all 5 verdict objects. Do NOT fabricate or substitute verdicts.\n    4. Call `submit_council_verdicts` with the collected verdicts.\n    5. Act on the verdict: APPROVE → task passes. CONCERNS with `success: false` + `reason: 'blocking_concerns_unresolved'` → HIGH\u002FCRITICAL findings are blocking, no evidence written, return to coder with requiredFixes and re-council after fixes. CONCERNS with `success: true` → only MEDIUM\u002FLOW advisory findings, task passes. REJECT → return to coder with requiredFixes.\n\n    When `council_mode` is OFF, the standard Stage B flow (steps 5j-5l: reviewer + test_engineer) runs as normal.\n\n    5j. the active swarm's reviewer agent - General review. REJECTED before the configured QA retry limit → coder retry. REJECTED at the configured QA retry limit → escalate.\n    → REQUIRED: Print \"reviewer: [APPROVED | REJECTED — reason]\"\n    5k. Security gate: if change matches TIER 3 criteria OR content contains SECURITY_KEYWORDS OR secretscan has ANY findings OR sast_scan has ANY findings at or above threshold → MUST delegate the active swarm's reviewer agent security-only review. REJECTED before the configured QA retry limit → coder retry. REJECTED at the configured QA retry limit → escalate to user.\n    → REQUIRED: Print \"security-reviewer: [TRIGGERED | NOT TRIGGERED — reason]\"\n    → If TRIGGERED: Print \"security-reviewer: [APPROVED | REJECTED — reason]\"\n    5l. the active swarm's test_engineer agent - Verification tests. FAIL → coder retry from 5g.\n    → REQUIRED: Print \"testengineer-verification: [PASS N\u002FN | FAIL — details]\"\n    5l-bis. REGRESSION SWEEP (automatic after test_engineer-verification PASS):\n    Run test_runner with { scope: \"graph\", files: [\u003Call source files changed by coder in this task>] }.\n    scope:\"graph\" traces imports to discover test files beyond the task's own tests that may be affected by this change.\n    \n    Outcomes (based on test_runner result.outcome field):\n    - outcome: \"pass\" → All tests passed. Print \"regression-sweep: PASS [N additional tests, M files]\"\n    - outcome: \"regression\" → Tests ran but some failed. Print \"regression-sweep: FAIL — REGRESSION DETECTED in [files]. The failing tests are CORRECT — fix the source code, not the tests.\" Return to coder with retry from 5g.\n    - outcome: \"skip\" → No test files resolved (nothing to run). Print \"regression-sweep: SKIPPED — no related tests beyond task scope\"\n    - outcome: \"scope_exceeded\" → Too many files for graph scope. Print \"regression-sweep: SKIPPED — broad scope, no related tests beyond task scope\"\n    - outcome: \"error\" → Tool error (timeout, no framework, etc.). Print \"regression-sweep: SKIPPED — test_runner error\" and continue pipeline.\n    \n    IMPORTANT: The regression sweep runs test_runner DIRECTLY (architect calls the tool). Do NOT delegate to test_engineer for this — the test_engineer's EXECUTION BOUNDARY restricts it to its own test files. The architect has unrestricted test_runner access.\n    → REQUIRED: Print \"regression-sweep: [PASS | FAIL — REGRESSION DETECTED | SKIPPED — no related tests | SKIPPED — broad scope | SKIPPED — test_runner error]\"\n\n    5l-ter. TEST DRIFT CHECK (conditional): Run this step if the change involves any drift-prone area:\n    - Command\u002FCLI behavior changed (shell command wrappers, CLI interfaces)\n    - Parsing or routing logic changed (argument parsing, route matching, file resolution)\n    - User-visible output changed (formatted output, error messages, JSON response structure)\n    - Public contracts or schemas changed (API types, tool argument schemas, return types)\n    - Assertion-heavy areas where output strings are tested (command\u002Fhelp output tests, error message tests)\n    - Helper behavior or lifecycle semantics changed (state machines, lifecycle hooks, initialization)\n    \n    If NOT triggered: Print \"test-drift: NOT TRIGGERED — no drift-prone change detected\"\n    If TRIGGERED:\n    - Use grep\u002Fsearch to find test files that cover the affected functionality\n    - Run those tests via test_runner with scope:\"convention\" on the related test files\n    - If any FAIL → print \"test-drift: DRIFT DETECTED in [N] tests\" and escalate to reviewer\u002Ftest_engineer\n    - If all PASS → print \"test-drift: [N] related tests verified\"\n    - If no related tests found → print \"test-drift: NO RELATED TESTS FOUND\" (not a failure)\n    → REQUIRED: Print \"test-drift: [TRIGGERED | NOT TRIGGERED — reason]\" and \"[DRIFT DETECTED in N tests | N related tests verified | NO RELATED TESTS FOUND | NOT TRIGGERED]\"\n\n    5n. TODO SCAN (advisory): Call todo_extract with paths=[list of files changed in this task]. If any results have priority HIGH → print \"todo-scan: WARN — N high-priority TODOs in changed files: [list of TODO texts]\". If no high-priority results → print \"todo-scan: CLEAN\". This is advisory only and does NOT block the pipeline.\n    → REQUIRED: Print \"todo-scan: [WARN — N high-priority TODOs | CLEAN]\"\n\n    5m. ADVERSARIAL TEST STEP (config-specific): Use the rendered adversarial-test instruction from the MODE: EXECUTE architect stub. If the stub omits step 5m, skip this step.\n    5n. COVERAGE CHECK: If the active swarm's test_engineer agent reports coverage \u003C 70% → delegate the active swarm's test_engineer agent for an additional test pass targeting uncovered paths. This is a soft guideline; use judgment for trivial tasks.\n\nPRE-COMMIT RULE — Before ANY commit or push:\n  You MUST answer YES to ALL of the following:\n  [ ] Did the active swarm's reviewer agent run and return APPROVED? (not \"I reviewed it\" — the agent must have run)\n  [ ] Did the active swarm's test_engineer agent run and return PASS? (not \"the code looks correct\" — the agent must have run)\n  [ ] Did pre_check_batch run with gates_passed true?\n  [ ] SAST baseline captured before first coder delegation (or explicit disabled\u002Ferror recorded)?\n  [ ] Did the diff step run?\n  [ ] Did regression-sweep run (or SKIP with no related tests or test_runner error)?\n  [ ] Did test-drift check run (or NOT TRIGGERED)?\n\n  If ANY box is unchecked: DO NOT COMMIT. Return to step 5b.\n  There is no override. A commit without a completed QA gate is a workflow violation.\n\n## ROLE-BOUNDARY CHANGE VALIDATION (mandatory for prompt changes)\nWhen a task modifies agent prompts (especially explorer, reviewer, critic, or any agent involved in the mapper\u002Fvalidator\u002Fchallenge hierarchy), add an explicit test validation step:\n- If new prompt contract tests exist (e.g., explorer-role-boundary.test.ts, explorer-consumer-contract.test.ts): Run them via test_runner\n- If no specific tests exist for the changed prompt: Run test_runner with scope \"convention\" on the changed file\n- Verify the new tests pass before completing the task\n\nThis step supplements (not replaces) the existing regression-sweep and test-drift checks. It exists to catch prompt contract regressions that automated gates might miss.\n\n5o. ⛔ TASK COMPLETION GATE — You MUST print this checklist with filled values before marking ✓ in .swarm\u002Fplan.md:\n  [TOOL] diff: PASS \u002F SKIP — value: ___\n  [TOOL] syntax_check: PASS — value: ___\n  [TOOL] placeholder_scan: PASS — value: ___\n  [TOOL] imports: PASS — value: ___\n  [TOOL] lint: PASS — value: ___\n  [TOOL] build_check: PASS \u002F SKIPPED — value: ___\n  [TOOL] pre_check_batch: PASS (lint:check ✓ secretscan ✓ sast_scan ✓ quality_budget ✓) — value: ___\n  [GATE] reviewer: APPROVED — value: ___\n  [GATE] reuse_re_verification: VERIFIED \u002F SKIPPED \u002F DUPLICATION_DETECTED — value: ___\n  [GATE] security-reviewer: APPROVED \u002F SKIPPED — value: ___\n  [GATE] test_engineer-verification: PASS — value: ___\n  [GATE] regression-sweep: PASS \u002F SKIPPED — value: ___\n  [GATE] test-drift: TRIGGERED \u002F NOT TRIGGERED — value: ___\n  [GATE] test_engineer-adversarial: use the rendered checklist entry from the MODE: EXECUTE architect stub\n  [GATE] coverage: ≥70% \u002F soft-skip — value: ___\n\n  You MUST NOT mark a task complete without printing this checklist with filled values.\n  You MUST NOT fill \"PASS\" or \"APPROVED\" for a gate you did not actually run — that is fabrication.\n  Any blank \"value: ___\" field = gate was not run = task is NOT complete.\n  Filling this checklist from memory (\"I think I ran it\") is INVALID. Each value must come from actual tool\u002Fagent output in this session.\n\n    5p. Call update_task_status with status \"completed\".\n    5q. OPTIONAL TASK-COMPLETION COMMIT POLICY: read `.swarm\u002Fcontext.md`.\n        - If `## Task Completion Commit Policy` contains `commit_after_each_completed_task: true`, immediately call:\n          `checkpoint save task-\u003Ctask-id>-complete`\n        - If the section is absent or false, skip this step.\n        - This optional commit policy NEVER bypasses PRE-COMMIT RULE checks above.\n        - If checkpoint save fails with \"duplicate label\", the task was already checkpointed from a prior completion or retry. Silently skip — the existing checkpoint is valid.\n    5r. Proceed to next task.\n\n## Dispatch-lanes empty-output fallback\n\nThis fallback applies only to a settled, blocking `dispatch_lanes` result with empty output (0 chars, `output_digest` matching SHA-256 of empty string `e3b0c442...b855`). It does **not** apply to `dispatch_lanes_async` rows that are still pending\u002Frunning, an early `collect_lane_results` poll, or an async result whose full text is available through `retrieve_lane_output`.\n\nFor read-only advisory lanes, do **not** jump straight to Task. First re-collect async lanes with `collect_lane_results` (`wait: true` when no independent work remains) and inspect any `output_ref` with `retrieve_lane_output`. If a settled blocking `dispatch_lanes` lane is genuinely empty, prefer retrying the same agent through `dispatch_lanes_async` when promptAsync is available. Use the **Task tool** (`Task(subagent_type=..., prompt=...)`) only as a last-resort equivalent dispatch mechanism after the lane tools are unavailable or have produced a confirmed empty settled result; record the same agent, same prompt, same scope, and which dispatch mechanism succeeded.\n\nIf the Task tool also returns empty, **then** escalate to substitute review (4-member council without the broken agent) or surface to the user. Never fabricate or substitute a verdict for the missing agent.\n\n## Post-coder write verification\n\nAfter **any** coder delegation, verify the change actually landed by reading back at least one changed file (grep for a key line that should be present). Coder large or full-file writes can **silently fail** — the tool call appears in the response text but the file remains unchanged, and the coder reports DONE without realizing the write didn't execute.\n\nFor large or full-file changes, instruct the coder to use **targeted EDIT operations**, not full-file WRITE — targeted edits are more reliable for substantial changes. If a file appears unchanged after the coder reports DONE, re-delegate with explicit \"use targeted EDIT operations, not a full-file WRITE\" and verify the readback.\n","# Execute Protocol\n\nThis protocol is loaded on demand by the architect stub in src\u002Fagents\u002Farchitect.ts. The architect prompt keeps only activation, action, and hard safety constraints; the full execution details live here.\n\n### MODE: EXECUTE\nFor each task (respecting dependencies):\n\nRETRY PROTOCOL — when returning to coder after any gate failure:\n1. Provide structured rejection: \"GATE FAILED: [gate name] | REASON: [details] | REQUIRED FIX: [specific action required]\"\n2. Re-enter at step 5b (the active swarm's coder agent) with full failure context\n3. Resume execution at the failed step (do not restart from 5a)\n   Exception: if coder modified files outside the original task scope, restart from step 5c\n4. Gates already PASSED may be skipped on retry if their input files are unchanged\n5. Print \"Resuming at step [5X] after coder retry [N\u002Fconfigured QA retry limit]\" before re-executing\n\nGATE FAILURE RESPONSE RULES — when ANY gate returns a failure:\nYou MUST return to the active swarm's coder agent. You MUST NOT fix the code yourself.\n\nWRONG responses to gate failure:\n✗ Editing the file yourself to fix the syntax error\n✗ Running a tool to auto-fix and moving on without coder\n✗ \"Installing\" or \"configuring\" tools to work around the failure\n✗ Treating the failure as an environment issue and proceeding\n✗ Deciding the failure is a false positive and skipping the gate\n\nRIGHT response to gate failure:\n✓ Print \"GATE FAILED: [gate name] | REASON: [details]\"\n✓ BEFORE the retry delegation: call `declare_scope` with the file list the retry will touch. Re-declare even if the files are identical to the original task — retry scope persists per-call, not per-task. See Rule 1a.\n✓ Delegate to the active swarm's coder agent with:\nTASK: Fix [gate name] failure\nFILE: [affected file(s)]\nINPUT: [exact error output from the gate]\nCONSTRAINT: Fix ONLY the reported issue, do not modify other code\n✓ After coder returns, re-run the failed gate from the step that failed\n✓ Print \"Coder attempt [N\u002Fconfigured QA retry limit] on task [X.Y]\"\n\nThe ONLY exception: lint tool in fix mode (step 5g) auto-corrects by design.\nAll other gates: failure → return to coder. No self-fixes. No workarounds.\n\n5a. **UI DESIGN GATE** (conditional — Rule 9): If task matches UI trigger → the active swarm's designer agent produces scaffold → pass scaffold to coder as INPUT. If no match → skip.\n\n→ After step 5a (or immediately if no UI task applies): Call update_task_status with status in_progress for the current task. Then proceed to step 5b.\n\n5a-bis. **DARK MATTER CO-CHANGE DETECTION**: After declaring scope but BEFORE finalizing the task file list, call knowledge_recall with query hidden-coupling primaryFile where primaryFile is the first file in the task's FILE list. Extract primaryFile from the task's FILE list (first file = primary). If results found, add those files to the task's AFFECTS scope with a BLAST RADIUS note. If no results or knowledge_recall unavailable, proceed gracefully without adding files. This is advisory — the architect may exclude files from scope if they are unrelated to the current task. Delegate to the active swarm's coder agent only after scope is declared.\n\n5b-PRE (required): Call `declare_scope({ taskId, files })` with the EXACT file list for this task — including any co-change files surfaced by 5a-bis. Skipping this call will cause every coder write to be BLOCKED by scope-guard. No `declare_scope` → no 5b delegation. See Rule 1a.\n    5b-BASE (required, once per task): Call `sast_scan` with `{ capture_baseline: true, phase: \u003CN>, changed_files: \u003Cfiles from 5b-PRE> }` where `\u003CN>` is the current phase number (extract from current task ID: task \"3.2\" → phase 3, task \"1.5\" → phase 1). The tool maintains `.swarm\u002Fevidence\u002F{phase}\u002Fsast-baseline.json` as a phase-scoped, incrementally merged baseline of pre-existing SAST findings. Calling twice for the same files is safe (idempotent merge). Do NOT re-capture mid-task.\n    → REQUIRED: Print \"sast-baseline: [WRITTEN — N fingerprints | MERGED — N fingerprints | SKIPPED — gate disabled | ERROR — details]\"\n    → Subsequent `pre_check_batch` calls with `phase: \u003CN>` will automatically diff against this baseline — only NEW findings (not in baseline) drive the fail verdict.\n    -> PREFLIGHT CHECKLIST: Before first coder delegation, answer \"SAST baseline captured before first coder delegation? yes\u002Fno\u002Fdisabled\u002Ferror\". If the answer is no, do not delegate to coder; run 5b-BASE first. If disabled or error, record the exact tool result.\n5b. the active swarm's coder agent - Implement (if designer scaffold produced, include it as INPUT).\n    → If this dispatch fails with `PLAN_CRITIC_GATE_VIOLATION`: the plan has no current critic-approved snapshot (commonly a plan approved before this mechanical gate existed). Do NOT retry the coder dispatch as-is — re-run MODE: CRITIC-GATE to get a fresh critic `APPROVED` verdict, then retry this step.\n5b-bis. **CODER OUTPUT VERIFICATION**: After the coder reports completion, do NOT accept the self-report alone. Run `diff` (step 5c) and inspect at least one of the modified files yourself to confirm the change exists. The coder may report DONE without having produced any diff. A 30-second read of the changed file(s) catches this failure mode. This is NOT a separate explorer dispatch — the existing `diff` tool at step 5c is the verification mechanism; the key discipline is checking that `diff` returns actual changes before proceeding, rather than forwarding the coder's self-report to the next gate.\n5c. Run `diff` tool. If `hasContractChanges` → the active swarm's explorer agent integration analysis. If COMPATIBILITY SIGNALS=INCOMPATIBLE or MIGRATION_SURFACE=yes → coder retry. If COMPATIBILITY SIGNALS=COMPATIBLE and MIGRATION_SURFACE=no → proceed.\n    → REQUIRED: Print \"diff: [PASS | CONTRACT CHANGE — details]\"\n    5d. Run `syntax_check` tool. SYNTACTIC ERRORS → return to coder. NO ERRORS → proceed to placeholder_scan.\n    → REQUIRED: Print \"syntaxcheck: [PASS | FAIL — N errors]\"\n    5e. Run `placeholder_scan` tool. PLACEHOLDER FINDINGS → return to coder. NO FINDINGS → proceed to imports.\n    → REQUIRED: Print \"placeholderscan: [PASS | FAIL — N findings]\"\n    5f. Run `imports` tool for dependency audit. ISSUES → return to coder.\n    → REQUIRED: Print \"imports: [PASS | ISSUES — details]\"\n    5g. Run `lint` tool with fix mode for auto-fixes. If issues remain → run `lint` tool with check mode. FAIL → return to coder.\n    → REQUIRED: Print \"lint: [PASS | FAIL — details]\"\n    5h. Run `build_check` tool. BUILD FAILS → return to coder. SUCCESS → proceed to pre_check_batch.\n    → REQUIRED: Print \"buildcheck: [PASS | FAIL | SKIPPED — no toolchain]\"\n    5i. Run `pre_check_batch` tool with `phase: \u003CN>` (same phase number used in 5b-BASE) → runs four verification tools in parallel (max 4 concurrent):\n    - lint:check (code quality verification)\n    - secretscan (secret detection)\n    - sast_scan (static security analysis — diffs against phase baseline when phase provided)\n    - quality_budget (maintainability metrics)\n    → Returns { gates_passed, lint, secretscan, sast_scan, quality_budget, total_duration_ms }\n    → sast_scan result may include { new_findings, pre_existing_findings, baseline_used } when baseline diff is active.\n    → If ALL FOUR tools have ran === false (lint.ran === false && secretscan.ran === false && sast_scan.ran === false && quality_budget.ran === false):\n        → This is a SKIP - no tools actually ran. Print \"pre_check_batch: SKIP — all tools ran===false (no files to check or tools not available)\" and proceed to the active swarm's reviewer agent.\n    → Else if gates_passed === false: read individual tool results, identify which tool(s) failed, return structured rejection to the active swarm's coder agent with specific tool failures. Do NOT call the active swarm's reviewer agent.\n    → If gates_passed === true AND sast_preexisting_findings is present: proceed to the active swarm's reviewer agent. Include the pre-existing SAST findings in the reviewer delegation context with instruction: \"SAST TRIAGE REQUIRED: The following SAST findings existed before this task began (from phase baseline or unchanged lines). Verify these are acceptable pre-existing conditions and do not interact with the new changes.\" Do NOT return to coder for pre-existing findings.\n    → If gates_passed === true (no sast_preexisting_findings): proceed to the active swarm's reviewer agent.\n    → REQUIRED: Print \"pre_check_batch: [PASS — all gates passed | PASS — pre-existing SAST findings (N findings, reviewer triage) | FAIL — [gate]: [details]]\"\n\n⚠️ pre_check_batch SCOPE BOUNDARY:\npre_check_batch runs FOUR automated tools: lint:check, secretscan, sast_scan, quality_budget.\npre_check_batch does NOT run and does NOT replace:\n- the active swarm's reviewer agent (logic review, correctness, edge cases, maintainability)\n- the active swarm's reviewer agent security-only pass (OWASP evaluation, auth\u002Fcrypto review)\n- the active swarm's test_engineer agent verification tests (functional correctness)\n- the active swarm's test_engineer agent adversarial tests (attack vectors, boundary violations)\n- diff tool (contract change detection)\n- placeholder_scan (TODO\u002Fstub detection)\n- imports (dependency audit)\ngates_passed: true means \"automated static checks passed.\"\nIt does NOT mean \"code is reviewed.\" It does NOT mean \"code is tested.\"\nAfter pre_check_batch passes, you MUST STILL delegate to the active swarm's reviewer agent.\nTreating pre_check_batch as a substitute for the active swarm's reviewer agent is a PROCESS VIOLATION.\n\n    5j-COUNCIL (when council_mode is ON — replaces steps 5j through 5l):\n    When `council_mode` is enabled in the QA gate profile, Stage B (steps 5j-5l: reviewer + test_engineer) is REPLACED by the full 5-member council per task.\n\n    After Stage A (pre_check_batch) passes:\n    1. Ensure `declare_council_criteria` was called for this task (prerequisite).\n    2. Dispatch all 5 council members (critic, reviewer, sme, test_engineer, explorer) in PARALLEL with task-scoped context.\n    3. Collect all 5 verdict objects. Do NOT fabricate or substitute verdicts.\n    4. Call `submit_council_verdicts` with the collected verdicts.\n    5. Act on the verdict: APPROVE → task passes. CONCERNS with `success: false` + `reason: 'blocking_concerns_unresolved'` → HIGH\u002FCRITICAL findings are blocking, no evidence written, return to coder with requiredFixes and re-council after fixes. CONCERNS with `success: true` → only MEDIUM\u002FLOW advisory findings, task passes. REJECT → return to coder with requiredFixes.\n\n    When `council_mode` is OFF, the standard Stage B flow (steps 5j-5l: reviewer + test_engineer) runs as normal.\n\n    5j. the active swarm's reviewer agent - General review. REJECTED before the configured QA retry limit → coder retry. REJECTED at the configured QA retry limit → escalate.\n    → REQUIRED: Print \"reviewer: [APPROVED | REJECTED — reason]\"\n    5k. Security gate: if change matches TIER 3 criteria OR content contains SECURITY_KEYWORDS OR secretscan has ANY findings OR sast_scan has ANY findings at or above threshold → MUST delegate the active swarm's reviewer agent security-only review. REJECTED before the configured QA retry limit → coder retry. REJECTED at the configured QA retry limit → escalate to user.\n    → REQUIRED: Print \"security-reviewer: [TRIGGERED | NOT TRIGGERED — reason]\"\n    → If TRIGGERED: Print \"security-reviewer: [APPROVED | REJECTED — reason]\"\n    5l. the active swarm's test_engineer agent - Verification tests. FAIL → coder retry from 5g.\n    → REQUIRED: Print \"testengineer-verification: [PASS N\u002FN | FAIL — details]\"\n    5l-bis. REGRESSION SWEEP (automatic after test_engineer-verification PASS):\n    Run test_runner with { scope: \"graph\", files: [\u003Call source files changed by coder in this task>] }.\n    scope:\"graph\" traces imports to discover test files beyond the task's own tests that may be affected by this change.\n    \n    Outcomes (based on test_runner result.outcome field):\n    - outcome: \"pass\" → All tests passed. Print \"regression-sweep: PASS [N additional tests, M files]\"\n    - outcome: \"regression\" → Tests ran but some failed. Print \"regression-sweep: FAIL — REGRESSION DETECTED in [files]. The failing tests are CORRECT — fix the source code, not the tests.\" Return to coder with retry from 5g.\n    - outcome: \"skip\" → No test files resolved (nothing to run). Print \"regression-sweep: SKIPPED — no related tests beyond task scope\"\n    - outcome: \"scope_exceeded\" → Too many files for graph scope. Print \"regression-sweep: SKIPPED — broad scope, no related tests beyond task scope\"\n    - outcome: \"error\" → Tool error (timeout, no framework, etc.). Print \"regression-sweep: SKIPPED — test_runner error\" and continue pipeline.\n    \n    IMPORTANT: The regression sweep runs test_runner DIRECTLY (architect calls the tool). Do NOT delegate to test_engineer for this — the test_engineer's EXECUTION BOUNDARY restricts it to its own test files. The architect has unrestricted test_runner access.\n    → REQUIRED: Print \"regression-sweep: [PASS | FAIL — REGRESSION DETECTED | SKIPPED — no related tests | SKIPPED — broad scope | SKIPPED — test_runner error]\"\n\n    5l-ter. TEST DRIFT CHECK (conditional): Run this step if the change involves any drift-prone area:\n    - Command\u002FCLI behavior changed (shell command wrappers, CLI interfaces)\n    - Parsing or routing logic changed (argument parsing, route matching, file resolution)\n    - User-visible output changed (formatted output, error messages, JSON response structure)\n    - Public contracts or schemas changed (API types, tool argument schemas, return types)\n    - Assertion-heavy areas where output strings are tested (command\u002Fhelp output tests, error message tests)\n    - Helper behavior or lifecycle semantics changed (state machines, lifecycle hooks, initialization)\n    \n    If NOT triggered: Print \"test-drift: NOT TRIGGERED — no drift-prone change detected\"\n    If TRIGGERED:\n    - Use grep\u002Fsearch to find test files that cover the affected functionality\n    - Run those tests via test_runner with scope:\"convention\" on the related test files\n    - If any FAIL → print \"test-drift: DRIFT DETECTED in [N] tests\" and escalate to reviewer\u002Ftest_engineer\n    - If all PASS → print \"test-drift: [N] related tests verified\"\n    - If no related tests found → print \"test-drift: NO RELATED TESTS FOUND\" (not a failure)\n    → REQUIRED: Print \"test-drift: [TRIGGERED | NOT TRIGGERED — reason]\" and \"[DRIFT DETECTED in N tests | N related tests verified | NO RELATED TESTS FOUND | NOT TRIGGERED]\"\n\n    5n. TODO SCAN (advisory): Call todo_extract with paths=[list of files changed in this task]. If any results have priority HIGH → print \"todo-scan: WARN — N high-priority TODOs in changed files: [list of TODO texts]\". If no high-priority results → print \"todo-scan: CLEAN\". This is advisory only and does NOT block the pipeline.\n    → REQUIRED: Print \"todo-scan: [WARN — N high-priority TODOs | CLEAN]\"\n\n    5m. ADVERSARIAL TEST STEP (config-specific): Use the rendered adversarial-test instruction from the MODE: EXECUTE architect stub. If the stub omits step 5m, skip this step.\n    5n. COVERAGE CHECK: If the active swarm's test_engineer agent reports coverage \u003C 70% → delegate the active swarm's test_engineer agent for an additional test pass targeting uncovered paths. This is a soft guideline; use judgment for trivial tasks.\n\nPRE-COMMIT RULE — Before ANY commit or push:\n  You MUST answer YES to ALL of the following:\n  [ ] Did the active swarm's reviewer agent run and return APPROVED? (not \"I reviewed it\" — the agent must have run)\n  [ ] Did the active swarm's test_engineer agent run and return PASS? (not \"the code looks correct\" — the agent must have run)\n  [ ] Did pre_check_batch run with gates_passed true?\n  [ ] SAST baseline captured before first coder delegation (or explicit disabled\u002Ferror recorded)?\n  [ ] Did the diff step run?\n  [ ] Did regression-sweep run (or SKIP with no related tests or test_runner error)?\n  [ ] Did test-drift check run (or NOT TRIGGERED)?\n\n  If ANY box is unchecked: DO NOT COMMIT. Return to step 5b.\n  There is no override. A commit without a completed QA gate is a workflow violation.\n\n## ROLE-BOUNDARY CHANGE VALIDATION (mandatory for prompt changes)\nWhen a task modifies agent prompts (especially explorer, reviewer, critic, or any agent involved in the mapper\u002Fvalidator\u002Fchallenge hierarchy), add an explicit test validation step:\n- If new prompt contract tests exist (e.g., explorer-role-boundary.test.ts, explorer-consumer-contract.test.ts): Run them via test_runner\n- If no specific tests exist for the changed prompt: Run test_runner with scope \"convention\" on the changed file\n- Verify the new tests pass before completing the task\n\nThis step supplements (not replaces) the existing regression-sweep and test-drift checks. It exists to catch prompt contract regressions that automated gates might miss.\n\n5o. ⛔ TASK COMPLETION GATE — You MUST print this checklist with filled values before marking ✓ in .swarm\u002Fplan.md:\n  [TOOL] diff: PASS \u002F SKIP — value: ___\n  [TOOL] syntax_check: PASS — value: ___\n  [TOOL] placeholder_scan: PASS — value: ___\n  [TOOL] imports: PASS — value: ___\n  [TOOL] lint: PASS — value: ___\n  [TOOL] build_check: PASS \u002F SKIPPED — value: ___\n  [TOOL] pre_check_batch: PASS (lint:check ✓ secretscan ✓ sast_scan ✓ quality_budget ✓) — value: ___\n  [GATE] reviewer: APPROVED — value: ___\n  [GATE] reuse_re_verification: VERIFIED \u002F SKIPPED \u002F DUPLICATION_DETECTED — value: ___\n  [GATE] security-reviewer: APPROVED \u002F SKIPPED — value: ___\n  [GATE] test_engineer-verification: PASS — value: ___\n  [GATE] regression-sweep: PASS \u002F SKIPPED — value: ___\n  [GATE] test-drift: TRIGGERED \u002F NOT TRIGGERED — value: ___\n  [GATE] test_engineer-adversarial: use the rendered checklist entry from the MODE: EXECUTE architect stub\n  [GATE] coverage: ≥70% \u002F soft-skip — value: ___\n\n  You MUST NOT mark a task complete without printing this checklist with filled values.\n  You MUST NOT fill \"PASS\" or \"APPROVED\" for a gate you did not actually run — that is fabrication.\n  Any blank \"value: ___\" field = gate was not run = task is NOT complete.\n  Filling this checklist from memory (\"I think I ran it\") is INVALID. Each value must come from actual tool\u002Fagent output in this session.\n\n    5p. Call update_task_status with status \"completed\".\n    5q. OPTIONAL TASK-COMPLETION COMMIT POLICY: read `.swarm\u002Fcontext.md`.\n        - If `## Task Completion Commit Policy` contains `commit_after_each_completed_task: true`, immediately call:\n          `checkpoint save task-\u003Ctask-id>-complete`\n        - If the section is absent or false, skip this step.\n        - This optional commit policy NEVER bypasses PRE-COMMIT RULE checks above.\n        - If checkpoint save fails with \"duplicate label\", the task was already checkpointed from a prior completion or retry. Silently skip — the existing checkpoint is valid.\n    5r. Proceed to next task.\n\n## Dispatch-lanes empty-output fallback\n\nThis fallback applies only to a settled, blocking `dispatch_lanes` result with empty output (0 chars, `output_digest` matching SHA-256 of empty string `e3b0c442...b855`). It does **not** apply to `dispatch_lanes_async` rows that are still pending\u002Frunning, an early `collect_lane_results` poll, or an async result whose full text is available through `retrieve_lane_output`.\n\nFor read-only advisory lanes, do **not** jump straight to Task. First re-collect async lanes with `collect_lane_results` (`wait: true` when no independent work remains) and inspect any `output_ref` with `retrieve_lane_output`. If a settled blocking `dispatch_lanes` lane is genuinely empty, prefer retrying the same agent through `dispatch_lanes_async` when promptAsync is available. Use the **Task tool** (`Task(subagent_type=..., prompt=...)`) only as a last-resort equivalent dispatch mechanism after the lane tools are unavailable or have produced a confirmed empty settled result; record the same agent, same prompt, same scope, and which dispatch mechanism succeeded.\n\nIf the Task tool also returns empty, **then** escalate to substitute review (4-member council without the broken agent) or surface to the user. Never fabricate or substitute a verdict for the missing agent.\n\n## Post-coder write verification\n\nAfter **any** coder delegation, verify the change actually landed by reading back at least one changed file (grep for a key line that should be present). Coder large or full-file writes can **silently fail** — the tool call appears in the response text but the file remains unchanged, and the coder reports DONE without realizing the write didn't execute.\n\nFor large or full-file changes, instruct the coder to use **targeted EDIT operations**, not full-file WRITE — targeted edits are more reliable for substantial changes. If a file appears unchanged after the coder reports DONE, re-delegate with explicit \"use targeted EDIT operations, not a full-file WRITE\" and verify the readback.\n",{"name":5,"description":7},"main","1667541871a3a917f9e544e5584ef06a544a119d",".opencode\u002Fskills\u002Fexecute",0,"https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo","https:\u002F\u002Fgithub.com\u002Fdjimit","https:\u002F\u002Fdjimit.nl\u002F","About me\r\n\r\nI’m Dennis a strategic IT advisor specializing in cloud, cybersecurity, privacy, AI, and enterprise architecture. ","2026-11-15 04:42:36",{"source":8,"skillName":5,"commands":34,"prompt":44,"zipAvailable":45},[35,38,41],{"tool":36,"command":37},"npx","npx skills add djimit\u002Fdjimitflo --skill execute",{"tool":39,"command":40},"bunx","bunx skills add djimit\u002Fdjimitflo --skill execute",{"tool":42,"command":43},"pnpm","pnpm dlx skills add djimit\u002Fdjimitflo --skill execute","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fexecute\u002FSKILL.md",true,[],[48,55,62,69,76,83],{"skillNo":49,"name":50,"nameZh":6,"description":51,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":52,"categories":53,"keywords":54,"publishedAt":19},"01M732DRW7MHQP9VTJ5JSBMWC3","provider-step-usage-v1-0-0","Sum measured OpenCode step_finish token totals with replay deduplication and fail-closed validation.","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002Fskills\u002Fprovider-step-usage-v1-0-0\u002FSKILL.md",[],[],{"skillNo":56,"name":57,"nameZh":6,"description":58,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":59,"categories":60,"keywords":61,"publishedAt":19},"01M732DKXHWZ1P99ZDNA4PX7BV","writing-tests","Guidelines for writing, organizing, and maintaining tests in the opencode-swarm repository. Covers framework rules (bun:test), mock isolation, CI pipeline structure, file placement, and anti-patterns that break cross-platform CI. Load this skill before writing or modifying any test file.","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fwriting-tests\u002FSKILL.md",[],[],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":19},"01M732DCEG1R9S45A68T5WR2T7","worktree-retry-cleanup","Protocol for cleaning parallel-coder worktree lanes before retry. Triggered before re-dispatching any task that already has a lane (completed, denied, cancelled, or failed).","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fworktree-retry-cleanup\u002FSKILL.md",[],[],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M732D8KYWE5RHJ1AA76F70K7","swarm","Cross-agent swarm-mode behavior model — a higher-rigor workflow using parallel investigation, independent reviewer validation, and critic challenge, plus the mandatory implementation closeout gate. Runtime adapters (.claude, .agents) add execution-specific notes and command wiring.","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fswarm\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M732D232XCMYP3XYKEAQC3YT","swarm-pr-subscribe","Monitor a pull request after creation and act autonomously on pushed PR activity. Use when subscribing to a PR after opening it, when asked to watch, babysit, or autofix a PR until merge, or when a \u003Cpr-activity> wake message or [pr-monitor:...] advisory arrives for a subscribed PR. Owns event triage (fix \u002F ask \u002F skip), bounded-retry escalation, and terminal-state cleanup.","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fswarm-pr-subscribe\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":19},"01M732CVKJ4QEN83DQ30EYG75A","swarm-pr-review","Run a graph-guided, tool-augmented Swarm PR review using context packing, parallel exploration, triggered plugin micro-lanes, independent reviewer validation, critic challenge, and metrics writeback. Use for deep pull request review with low false-positive tolerance and high recall.","https:\u002F\u002Fgithub.com\u002Fdjimit\u002Fdjimitflo\u002Fblob\u002Fmain\u002F.opencode\u002Fskills\u002Fswarm-pr-review\u002FSKILL.md",[],[]]