plan-pact
Canonical cross-agent protocol for plan documents (storage, naming, YAML schema, dispute tracking, and archive-after-commit workflow).
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Canonical cross-agent protocol for plan documents (storage, naming, YAML schema, dispute tracking, and archive-after-commit workflow).
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Execute work tracked in beads_rust (`br`) issues — claim a ready issue, do the work, record progress, capture discovered work without derailing, close cleanly, and keep the JSONL/DB pair in sync. Solo-agent and cross-session-by-same-agent only. Use when issues already exist in `.beads/` and an agent needs to work them across one or many sessions. NOT for creating issues from a planning document (use `plan-to-beads` for that) and NOT for multi-agent coordination.
Translate a planning document (markdown spec, design doc, requirements list, brainstorm) into well-structured beads_rust (`br`) issues — epics, tasks, dependencies, and properly-separated fields. Use when an agent has a plan artifact in hand and needs to construct issues from it, when decomposing an epic into child tasks, when populating description/design/acceptance/notes correctly, or when bulk-importing many related issues at once. NOT for working an already-created issue (claim → implement → close); that is a separate concern.
Use when writing sensitive feedback, PRs, reviews, critiques, refusals, corrections, recommendations, or relationship-preserving messages where the response should be candid but collegial, avoid accusatory framing, and never reveal rhetorical stage directions such as saying the tone is being softened or made diplomatic.
SOC 職業分類に基づく
| name | plan-pact |
| description | Canonical cross-agent protocol for plan documents (storage, naming, YAML schema, dispute tracking, and archive-after-commit workflow). |
plan-pact is a negotiation harness for reasoning agents (human or software) to create, review, dispute, and close planning artifacts without filename drift, location drift, or process thrash.
Use the Decision Register as the current negotiated position and the Decision Log as negotiation history.
This skill is fully self-contained. Treat this file as the canonical protocol.
.plan.md, proceed without an extra invocation prompt.Read only what you need:
TL;DR, Storage + Naming, YAML Schema, Required Sections, Workflow.TL;DR, Workflow, Review Protocol, Dispute Tracking.Dispute Tracking.Archive-After-Commit.Do not degrade these cycle-1 strengths:
plans/; archived docs go in plans/archive/.plans/YYYY-MM-DD-<topic-slug>.<type>.md.plan, adr, critique.spec is an alias of plan (canonical type/filename remains .plan.md)..plan.md requires Inspiration, Decision Register, and append-only Decision Log.OPEN is default; if Flip Count >= 2, set DISPUTED; only human resolution can set LOCKED.Canonical storage:
plans/plans/archive/history/ is non-canonical session notes.Filename pattern:
plans/YYYY-MM-DD-<topic-slug>.<type>.mdExamples:
plans/2026-02-16-board-creation-ux.plan.mdplans/2026-02-16-header-ownership.adr.mdplans/2026-02-16-board-creation-ux.critique.mdNaming rules:
<topic-slug> is lowercase kebab-case.-v2/-v3; use supersession fields instead.Every plan artifact must begin with YAML frontmatter:
---
title: Board Creation UX
type: plan
date: 2026-02-16
topic: board-creation-ux
status: draft
authors:
- codex
project: agwakwagan
supersedes: null
superseded_by: null
reviewed_by: []
---
Required keys:
title (string)type (plan | adr | critique; incoming spec normalizes to plan)date (YYYY-MM-DD)topic (kebab-case string)status (draft | active | blocked | complete | superseded)authors (non-empty list of strings)project (string)Optional keys:
supersedes (string path or null)superseded_by (string path or null)reviewed_by (list of strings).plan.md must contain:
.adr.md must contain:
.critique.md must contain:
plan, adr, or critique.plans/.plan, initialize empty Decision Register + Decision Log..plan.md in place.status as appropriate (draft, active, blocked).Use only for materially different direction:
plans/.supersedes to old file path.status: supersededsuperseded_by: <new-file-path>.critique.md in plans/.reviewed_by.Reviewers should use this order:
Required review output format:
substantive, cosmetic, or question.Submission rule:
All .plan.md files must include:
Decision Register columns:
ID (stable identifier, e.g. SPEC-012)Current ChoiceFlip CountStatus (OPEN | DISPUTED | LOCKED)Last EditorLast UpdatedDecision status semantics:
OPEN: default working state; autonomous edits are allowed.DISPUTED: flip threshold reached; autonomous edits are frozen pending human decision.LOCKED: set only after human resolution of a disputed decision.Decision Log format (append-only):
changed|removed|superseded: YYYY-MM-DD <editor> <ID>: <change-kind> <old> -> <new> (reason: <reason>)confirmed: YYYY-MM-DD <editor> <ID>: confirmed <choice> (reason: <reason>)Allowed change-kind values:
changedconfirmedremovedsupersededRules:
A -> B -> A).Flip Count >= 2, set Status = DISPUTED and freeze autonomous edits for that decision.DISPUTED requires human resolution.Status = LOCKED.OPEN -> LOCKED transition is allowed.LOCKED decisions reopen only with new evidence or changed requirements.A -> A is not allowed).The actor/tool performing implementation commit is responsible for archive movement:
plans/ to plans/archive/.complete or superseded, supersedes, superseded_by).When handing off between agents, include:
Active Plan: <absolute-path>Status: <frontmatter-status>Next Decision Needed: <short text>templates/plan-template.plan.mdtemplates/adr-template.adr.mdtemplates/critique-template.critique.md