@webpresso/plugin-codex 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codex-plugin/plugin.json +23 -0
- package/.mcp.json +9 -0
- package/LICENSE +104 -0
- package/bin/wp +60 -0
- package/hooks/hooks.json +3 -0
- package/package.json +40 -0
- package/plugin-skill-ownership.json +99 -0
- package/skills/ai-deslop/SKILL.md +91 -0
- package/skills/autopilot/SKILL.md +77 -0
- package/skills/autoresearch/SKILL.md +49 -0
- package/skills/best-practice-research/SKILL.md +89 -0
- package/skills/browse/SKILL.md +25 -0
- package/skills/claude/SKILL.md +186 -0
- package/skills/codex/SKILL.md +142 -0
- package/skills/deep-interview/LICENSE.txt +28 -0
- package/skills/deep-interview/SKILL.md +269 -0
- package/skills/deep-research/SKILL.md +258 -0
- package/skills/delivery-program/SKILL.md +57 -0
- package/skills/design-review/SKILL.md +26 -0
- package/skills/devex-review/SKILL.md +28 -0
- package/skills/fix/SKILL.md +174 -0
- package/skills/grok/SKILL.md +32 -0
- package/skills/hooks-doctor/SKILL.md +78 -0
- package/skills/investigate/SKILL.md +72 -0
- package/skills/lore-protocol/SKILL.md +84 -0
- package/skills/opencode-go/SKILL.md +97 -0
- package/skills/plan-ceo-review/SKILL.md +27 -0
- package/skills/plan-design-review/SKILL.md +27 -0
- package/skills/plan-devex-review/SKILL.md +19 -0
- package/skills/plan-eng-review/SKILL.md +24 -0
- package/skills/plan-refine/SKILL.md +50 -0
- package/skills/plan-refine/references/full-methodology.md +645 -0
- package/skills/ralplan/SKILL.md +50 -0
- package/skills/team/SKILL.md +77 -0
- package/skills/tech-debt/SKILL.md +79 -0
- package/skills/testing-philosophy/SKILL.md +53 -0
- package/skills/testing-philosophy/references/full-testing-philosophy.md +523 -0
- package/skills/tph/SKILL.md +35 -0
- package/skills/ultragoal/SKILL.md +179 -0
- package/skills/verify/SKILL.md +283 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: investigate
|
|
3
|
+
description: "Root-cause investigation workflow: reproduce, isolate, prove, and hand off the minimal repair scope."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Investigate
|
|
8
|
+
|
|
9
|
+
Use this skill when the task is to understand a bug, failure, regression,
|
|
10
|
+
flaky behavior, or confusing symptom before editing code.
|
|
11
|
+
|
|
12
|
+
## Boundary
|
|
13
|
+
|
|
14
|
+
- `investigate` owns diagnosis, reproduction, hypothesis testing, and proof.
|
|
15
|
+
- `fix` owns repair. If the user asked to fix the problem and root-cause
|
|
16
|
+
evidence is still missing, `fix` should run this phase inline first.
|
|
17
|
+
- Stop once you can name the broken invariant, show the failing proof, and
|
|
18
|
+
point at the owner that should be repaired.
|
|
19
|
+
|
|
20
|
+
## Tooling map
|
|
21
|
+
|
|
22
|
+
| Need | Prefer |
|
|
23
|
+
| ---------------------- | ---------------------------------------------------------------- |
|
|
24
|
+
| Reproduce / large logs | `wp_session_execute`, `wp_session_batch_execute` |
|
|
25
|
+
| Large files | `wp_session_execute_file` |
|
|
26
|
+
| Prior continuity | `wp_session_search`, `wp_session_restore`, `wp_session_retrieve` |
|
|
27
|
+
| Capture findings | `wp_session_capture` (short pointer, not full paste-back) |
|
|
28
|
+
| Proof runs | `wp_test`, `wp_qa`, `wp_lint`, `wp_typecheck` |
|
|
29
|
+
| Code search/read | host Grep/Read first; avoid shell-as-IDE |
|
|
30
|
+
|
|
31
|
+
## Workflow
|
|
32
|
+
|
|
33
|
+
1. Reproduce or capture the failure.
|
|
34
|
+
- Run the exact failing command or trace the exact user path (prefer `wp_session_execute`).
|
|
35
|
+
- Keep the evidence that matters: error text, failing assertion, exit code,
|
|
36
|
+
log path, or boundary mismatch.
|
|
37
|
+
2. Read the whole boundary.
|
|
38
|
+
- Inspect the full error site, the owning module, and one nearby working
|
|
39
|
+
pattern.
|
|
40
|
+
- Do not edit code yet.
|
|
41
|
+
3. State the root-cause hypothesis.
|
|
42
|
+
- Name the broken invariant in one sentence.
|
|
43
|
+
- Name the owner that should enforce it.
|
|
44
|
+
- Separate facts from guesses.
|
|
45
|
+
4. Disconfirm cheap alternatives.
|
|
46
|
+
- Test the obvious competing explanations before settling on one cause.
|
|
47
|
+
- Add temporary diagnostics only when needed, and remove them after one pass.
|
|
48
|
+
5. Produce failing proof.
|
|
49
|
+
- Prefer a targeted failing test.
|
|
50
|
+
- If test-first is impossible at this boundary, use the nearest deterministic
|
|
51
|
+
reproduction instead.
|
|
52
|
+
6. Hand off the minimal repair scope.
|
|
53
|
+
- List the owner, direct consumers, and the smallest safe verification set.
|
|
54
|
+
- If the issue is broader than one coherent repair, say so before any edit.
|
|
55
|
+
|
|
56
|
+
## Output
|
|
57
|
+
|
|
58
|
+
Return:
|
|
59
|
+
|
|
60
|
+
- reproduced symptom
|
|
61
|
+
- broken invariant
|
|
62
|
+
- root-cause hypothesis status: confirmed / likely / blocked
|
|
63
|
+
- failing proof
|
|
64
|
+
- owning file or boundary
|
|
65
|
+
- recommended next step: `fix`, `verify`, or a scoped blocker
|
|
66
|
+
|
|
67
|
+
## Anti-patterns
|
|
68
|
+
|
|
69
|
+
- Editing before you can name the invariant
|
|
70
|
+
- Treating a stack trace as proof of root cause
|
|
71
|
+
- Hiding uncertainty behind broad "probably X" explanations
|
|
72
|
+
- Expanding a debugging pass into cleanup or refactor work
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: skill
|
|
3
|
+
slug: lore-protocol
|
|
4
|
+
title: lore-protocol
|
|
5
|
+
status: active
|
|
6
|
+
scope: repo
|
|
7
|
+
applies_to: [agents]
|
|
8
|
+
related: []
|
|
9
|
+
created: "2026-05-07"
|
|
10
|
+
last_reviewed: "2026-05-07"
|
|
11
|
+
name: lore-protocol
|
|
12
|
+
description: "Manual Lore commit-message trailers with wp audit commit-message; no hook enforcement because PRs squash."
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# lore-protocol
|
|
16
|
+
|
|
17
|
+
Use Lore commit-message trailers manually with `wp audit commit-message`. Hook enforcement is intentionally not installed because this repo uses squash commits.
|
|
18
|
+
|
|
19
|
+
Lore is a lightweight protocol for embedding decision context directly into
|
|
20
|
+
commit messages — constraints, rejected alternatives, confidence, and
|
|
21
|
+
forward-looking directives — so future engineers understand _why_ a change
|
|
22
|
+
was made, not just _what_ changed.
|
|
23
|
+
|
|
24
|
+
## Quick start
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# Validate a commit message file (hard-fail mode — exits non-zero on violations)
|
|
28
|
+
wp audit commit-message --message-file .git/COMMIT_EDITMSG --require-lore
|
|
29
|
+
|
|
30
|
+
# Soft-warn mode — emits warnings but always exits 0 (adoption ramp)
|
|
31
|
+
wp audit commit-message --message-file .git/COMMIT_EDITMSG --lore-warn
|
|
32
|
+
|
|
33
|
+
# Opt in per-commit by adding [lore] to the subject line:
|
|
34
|
+
# feat(auth): prevent silent session drops [lore]
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Hook policy
|
|
38
|
+
|
|
39
|
+
Lore trailers are advisory/manual. Do not install commit-msg or pre-push hooks for Lore enforcement; squash commits are the durable review boundary.
|
|
40
|
+
|
|
41
|
+
## Trailer format
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
<intent line: why the change was made, not what changed>
|
|
45
|
+
|
|
46
|
+
<body: narrative context — constraints, approach rationale>
|
|
47
|
+
|
|
48
|
+
Constraint: <external constraint that shaped the decision>
|
|
49
|
+
Rejected: <alternative considered> | <reason for rejection>
|
|
50
|
+
Confidence: <low|medium|high>
|
|
51
|
+
Scope-risk: <narrow|moderate|broad>
|
|
52
|
+
Directive: <forward-looking warning for future modifiers>
|
|
53
|
+
Tested: <what was verified>
|
|
54
|
+
Not-tested: <known gaps in verification>
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Required trailers (for `--require-lore` or `[lore]` subject tag)
|
|
58
|
+
|
|
59
|
+
| Trailer | Required | Allowed values |
|
|
60
|
+
| -------------------------------------------- | ------------ | -------------------------------- |
|
|
61
|
+
| `Confidence:` | yes | `low`, `medium`, `high` |
|
|
62
|
+
| `Constraint:` or `Rejected:` or `Directive:` | at least one | free text |
|
|
63
|
+
| `Scope-risk:` | optional | `narrow`, `moderate`, `broad` |
|
|
64
|
+
| `Reversibility:` | optional | `clean`, `messy`, `irreversible` |
|
|
65
|
+
| `Tested:` | optional | free text |
|
|
66
|
+
| `Not-tested:` | optional | free text |
|
|
67
|
+
| `Related:` | optional | free text |
|
|
68
|
+
|
|
69
|
+
## Example commit
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
Prevent silent session drops during long-running operations
|
|
73
|
+
|
|
74
|
+
The auth service returns inconsistent status codes on token
|
|
75
|
+
expiry, so the interceptor catches all 4xx responses.
|
|
76
|
+
|
|
77
|
+
Constraint: Auth service does not support token introspection
|
|
78
|
+
Rejected: Extend token TTL to 24h | security policy violation
|
|
79
|
+
Confidence: high
|
|
80
|
+
Scope-risk: narrow
|
|
81
|
+
Directive: Error handling is broad — do not narrow without verifying upstream behavior
|
|
82
|
+
Tested: Single expired token refresh (unit)
|
|
83
|
+
Not-tested: Auth service cold-start > 500ms behavior
|
|
84
|
+
```
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: opencode-go
|
|
3
|
+
description: "OpenCode Go aggregate outside-voice reviewer for read-only plan, code, or implementation critique."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# OpenCode Go aggregate reviewer via OpenCode Go
|
|
8
|
+
|
|
9
|
+
Use when the user asks for an OpenCode Go aggregate reviewer / OpenCode Go review. Treat output as external advice until independently verified.
|
|
10
|
+
|
|
11
|
+
## Model routing
|
|
12
|
+
|
|
13
|
+
Rendered from the committed OpenCode reviewer policy. It does not hardcode model IDs; it resolves the live `opencode models opencode-go` catalog.
|
|
14
|
+
Use the aggregate reviewer when the user wants an OpenCode Go review but did not specify a family. Select one available model in this order: Kimi K2.7 Code for coding quality, DeepSeek V4 Pro for deeper review depth, DeepSeek V4 Flash for cheap/high-availability coverage, then the remaining families.
|
|
15
|
+
Use the aggregate reviewer for general outside-voice plan critique, implementation review, or when the user wants the current best OpenCode Go lane without naming a family.
|
|
16
|
+
|
|
17
|
+
## Primary path: MCP
|
|
18
|
+
|
|
19
|
+
When MCP is available, call `wp_review_run` exactly once with provider `opencode`, one selected live model, stage `review`, and a bounded prompt/marker. If no eligible model is known, call `wp_session_execute` at most once for a bounded catalog read before that single review call.
|
|
20
|
+
|
|
21
|
+
Do not retry or probe, rotate accounts, or change provider within the invocation. The shell blocks below are the MCP-unavailable fallback only.
|
|
22
|
+
|
|
23
|
+
## MCP-unavailable fallback: auth check
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
opencode providers list >/dev/null
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## MCP-unavailable fallback: portable prompt file
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
PROMPT_FILE=$(mktemp -t wp-opencode-go-review.XXXXXX)
|
|
33
|
+
trap 'rm -f "$PROMPT_FILE"' EXIT
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Dashboard helper relation
|
|
37
|
+
|
|
38
|
+
When `wp dash` provides dashboard context, use the shared helper emitter around this outside-voice review. The commands leave standalone OpenCode Go reviews unchanged.
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
DASH_HELPER_RUN_ID=""
|
|
42
|
+
if [ "${WP_DASH:-}" = "1" ] && [ -n "${WP_DASH_RUN_ID:-}" ]; then
|
|
43
|
+
DASH_HELPER_RUN_ID=$(wp dash-helper-start --provider opencode-go --role reviewer --artifact "${OPENCODE_GO_REVIEW_ARTIFACT:-}")
|
|
44
|
+
fi
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
After the review runtime exits, record its actual result and optional artifact:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
OPENCODE_GO_REVIEW_CODE=$?
|
|
51
|
+
if [ -n "$DASH_HELPER_RUN_ID" ]; then
|
|
52
|
+
if [ "$OPENCODE_GO_REVIEW_CODE" -eq 0 ]; then
|
|
53
|
+
wp dash-helper-complete --provider opencode-go --run-id "$DASH_HELPER_RUN_ID" --role reviewer --outcome completed --artifact "${OPENCODE_GO_REVIEW_ARTIFACT:-}"
|
|
54
|
+
else
|
|
55
|
+
wp dash-helper-complete --provider opencode-go --run-id "$DASH_HELPER_RUN_ID" --role reviewer --outcome failed --artifact "${OPENCODE_GO_REVIEW_ARTIFACT:-}"
|
|
56
|
+
fi
|
|
57
|
+
fi
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
The managed OpenCode plugin currently has no parent-linked native subagent completion lifecycle. This capability is explicit unsupported coverage, not an inferred dashboard relation.
|
|
61
|
+
|
|
62
|
+
## MCP-unavailable fallback: review command
|
|
63
|
+
|
|
64
|
+
Use read-only prompts. Run from the repo directory; do NOT pass `--dir "$PWD"` because opencode already uses the current directory and the extra index can stall reviews.
|
|
65
|
+
Review is advisory. `wp_review_gate` is plan-only exact-version draft approval/auto-promotion; `wp_review_run` never mutates approval state.
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
# Aggregate reviewer: honor the canonical model-selection policy (Kimi K2.7 Code → DeepSeek V4 Pro → DeepSeek V4 Flash first, then cross-family selection fallbacks).
|
|
69
|
+
CATALOG=$(opencode models opencode-go)
|
|
70
|
+
MODEL=$(echo "$CATALOG" | grep '^opencode-go/kimi' | grep -- '-code$' | sort -V | tail -1)
|
|
71
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/deepseek' | grep -- '-pro$' | sort -V | tail -1)
|
|
72
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/deepseek' | grep -- '-flash$' | sort -V | tail -1)
|
|
73
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/qwen' | grep -- '-max$' | sort -V | tail -1)
|
|
74
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/glm' | sort -V | tail -1)
|
|
75
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/minimax' | sort -V | tail -1)
|
|
76
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | grep '^opencode-go/mimo' | grep -- '-pro$' | sort -V | tail -1)
|
|
77
|
+
[ -z "$MODEL" ] && MODEL=$(echo "$CATALOG" | sort -V | tail -1)
|
|
78
|
+
|
|
79
|
+
# Resolve one model from one bounded catalog read, then launch one review.
|
|
80
|
+
[ -n "$MODEL" ] || { echo "No OpenCode Go model resolved for this reviewer." >&2; exit 2; }
|
|
81
|
+
OPENCODE_GO_REVIEW_EFFORT=${OPENCODE_GO_REVIEW_EFFORT:-medium}
|
|
82
|
+
[ "$OPENCODE_GO_REVIEW_EFFORT" = medium ] || [ "$OPENCODE_GO_REVIEW_EFFORT" = high ] || { echo "OPENCODE_GO_REVIEW_EFFORT must be one of: medium, high" >&2; exit 2; }
|
|
83
|
+
OPENCODE_GO_REVIEW_IDLE_SECONDS=${OPENCODE_GO_REVIEW_IDLE_SECONDS:-180}
|
|
84
|
+
OPENCODE_GO_REVIEW_ARTIFACT_ROOT=${OPENCODE_GO_REVIEW_ARTIFACT_ROOT:-"$(pwd)/.webpresso/reviews"}
|
|
85
|
+
wp review run \
|
|
86
|
+
--provider opencode \
|
|
87
|
+
--prompt-file "$PROMPT_FILE" \
|
|
88
|
+
--model "$MODEL" \
|
|
89
|
+
--effort "$OPENCODE_GO_REVIEW_EFFORT" \
|
|
90
|
+
--stage review \
|
|
91
|
+
--artifact-root "$OPENCODE_GO_REVIEW_ARTIFACT_ROOT" \
|
|
92
|
+
--idle-seconds "$OPENCODE_GO_REVIEW_IDLE_SECONDS"
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The single catalog read above resolves `$MODEL`; do not perform another model-catalog command.
|
|
96
|
+
The typed runtime advances its idle clock only on monotonic semantic progress and has no total wall-clock cutoff.
|
|
97
|
+
OpenCode Go usage limit ends all OpenCode models this review (no family hop). Next: Grok (`--provider grok`). Gate fails over to Grok when accounts cool. Treat `true-idle`, `protocol-unsupported`, provider/abort/spawn/artifact failure as unavailable. Never replace with static timeout, byte-growth heartbeat, or buffered-output fallback.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-ceo-review
|
|
3
|
+
description: "CEO/founder plan review for scope, ambition, customer value, sequencing, and whether the plan is the right bet."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# CEO plan review
|
|
8
|
+
|
|
9
|
+
Review the plan as a founder accountable for product leverage and customer value.
|
|
10
|
+
|
|
11
|
+
## Modes
|
|
12
|
+
|
|
13
|
+
Choose one mode explicitly:
|
|
14
|
+
|
|
15
|
+
- **Scope expansion:** the plan is too timid; propose a bigger wedge.
|
|
16
|
+
- **Selective expansion:** keep the core but add one or two high-leverage improvements.
|
|
17
|
+
- **Hold scope:** ambition is right; demand sharper execution and proof.
|
|
18
|
+
- **Scope reduction:** remove distracting work and ship the smallest valuable slice.
|
|
19
|
+
|
|
20
|
+
## Review checklist
|
|
21
|
+
|
|
22
|
+
1. Who urgently wants this outcome and why now?
|
|
23
|
+
2. What is the 10-star version, and what is the smallest credible slice of it?
|
|
24
|
+
3. What should be deleted because it does not advance the wedge?
|
|
25
|
+
4. What proof will convince us the work mattered?
|
|
26
|
+
|
|
27
|
+
Return a verdict, the recommended mode, and specific plan edits.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-design-review
|
|
3
|
+
description: "Designer plan review for UI/UX clarity, hierarchy, interaction quality, accessibility, and visual coherence."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Design plan review
|
|
8
|
+
|
|
9
|
+
Review the plan as a product designer before code is written.
|
|
10
|
+
|
|
11
|
+
## Scorecard
|
|
12
|
+
|
|
13
|
+
Rate each dimension from 0-10 and explain what would make it a 10:
|
|
14
|
+
|
|
15
|
+
- User intent and primary task clarity
|
|
16
|
+
- Information hierarchy and content structure
|
|
17
|
+
- Interaction states and error recovery
|
|
18
|
+
- Accessibility and keyboard/screen-reader paths
|
|
19
|
+
- Visual coherence, spacing, and affordances
|
|
20
|
+
- Responsiveness and empty/loading states
|
|
21
|
+
|
|
22
|
+
## Output
|
|
23
|
+
|
|
24
|
+
- Overall score and verdict
|
|
25
|
+
- Top three design risks
|
|
26
|
+
- Minimal plan edits that improve the score
|
|
27
|
+
- Acceptance criteria for visual and accessibility verification
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-devex-review
|
|
3
|
+
description: "Developer-experience plan review for onboarding, docs, CLI/API ergonomics, migration risk, and time-to-hello-world."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Developer-experience plan review
|
|
8
|
+
|
|
9
|
+
Use before implementing developer-facing features, setup flows, CLIs, docs, SDKs, or migrations.
|
|
10
|
+
|
|
11
|
+
## Review checklist
|
|
12
|
+
|
|
13
|
+
- Who is the developer and what are they trying to do?
|
|
14
|
+
- Is the first successful path obvious and short?
|
|
15
|
+
- Are errors actionable and copy-pastable?
|
|
16
|
+
- Does the plan preserve existing workflows and migration safety?
|
|
17
|
+
- What docs, examples, and smoke tests prove the experience?
|
|
18
|
+
|
|
19
|
+
Return DX score, blockers, simplifications, and acceptance tests.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-eng-review
|
|
3
|
+
description: "Engineering-manager plan review for architecture, data flow, sequencing, edge cases, tests, and rollout risk."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Engineering plan review
|
|
8
|
+
|
|
9
|
+
Review the plan as an engineering manager who must make it safe to execute.
|
|
10
|
+
|
|
11
|
+
## Process
|
|
12
|
+
|
|
13
|
+
1. Identify the target outcome, non-goals, constraints, owners, and stop condition.
|
|
14
|
+
2. Map the implementation path: changed files, data flow, public interfaces, migrations, and backward-compatibility concerns.
|
|
15
|
+
3. List edge cases and failure modes by severity.
|
|
16
|
+
4. Check test shape: unit, integration, e2e, fixtures, regression coverage, and verification commands.
|
|
17
|
+
5. Recommend the smallest plan repair that materially reduces risk.
|
|
18
|
+
|
|
19
|
+
## Output
|
|
20
|
+
|
|
21
|
+
- **Verdict:** ready / ready with edits / not ready
|
|
22
|
+
- **Blocking issues:** concrete fixes required before coding
|
|
23
|
+
- **Recommended edits:** concise patch-level plan changes
|
|
24
|
+
- **Verification contract:** commands and evidence required before completion
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: skill
|
|
3
|
+
slug: plan-refine
|
|
4
|
+
title: Plan Refinement Methodology
|
|
5
|
+
status: active
|
|
6
|
+
scope: repo
|
|
7
|
+
applies_to: [agents]
|
|
8
|
+
related: []
|
|
9
|
+
created: "2026-05-07"
|
|
10
|
+
last_reviewed: "2026-07-03"
|
|
11
|
+
name: plan-refine
|
|
12
|
+
description: "Blueprint hardening: fact-check assumptions, run plan reviews, split parallel tasks, and lock verification."
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Plan Refinement Methodology
|
|
16
|
+
|
|
17
|
+
Use when a blueprint or implementation plan needs fact-checking, architecture hardening, parallel task shaping, or review consolidation before execution.
|
|
18
|
+
|
|
19
|
+
## Core principle
|
|
20
|
+
|
|
21
|
+
A plan is only as strong as its weakest unchecked assumption and only as fast as its coarsest task granularity.
|
|
22
|
+
|
|
23
|
+
## Required workflow
|
|
24
|
+
|
|
25
|
+
1. **Technology fact-check.** Verify API, version, runtime, platform, and package claims against official/upstream sources when external behavior matters.
|
|
26
|
+
2. **Codebase verification.** Confirm file paths, exports, existing patterns, dependency availability, and local command surfaces in the repo.
|
|
27
|
+
3. **Architecture review.** Challenge race conditions, error cascades, ownership boundaries, concurrency, auth/session edges, public-package leakage, and unnecessary abstractions.
|
|
28
|
+
4. **Plan-review lenses.** Folded `/autoplan`: run the relevant CEO/founder, design, engineering, and DevEx review lenses; consolidate keep/change/drop decisions, unresolved taste calls, tests, and go/no-go.
|
|
29
|
+
5. **Blueprint enforcement.** Split tasks for independent execution, declare dependencies, identify file conflicts, require TDD/proof steps, and preserve acceptance criteria.
|
|
30
|
+
6. **Apply and record.** Update edge cases, risks, technology choices, cross-plan references, and verification gates. Do not edit implementation code during plan refinement.
|
|
31
|
+
|
|
32
|
+
## Mandatory gates
|
|
33
|
+
|
|
34
|
+
- Apply DRY, SOLID, YAGNI, and KISS; reject speculative abstractions.
|
|
35
|
+
- Choose the most elegant and durable solution the constraints allow, not merely a correct one: prefer deleting/reusing over adding, shrink public/export surface to the minimum real consumers require, keep the change scoped to one coherent idea, and reject the heavier option even when it works — record in the plan why the chosen shape is the durable one.
|
|
36
|
+
- For package, catalog, generated-surface, or release changes, require package-surface and public-content checks.
|
|
37
|
+
- Prefer deletion/reuse over new layers or dependencies.
|
|
38
|
+
- Stop on unverified external claims, unresolved shared-file conflicts, or missing authority for destructive work.
|
|
39
|
+
|
|
40
|
+
## Output
|
|
41
|
+
|
|
42
|
+
Return a concise plan review with:
|
|
43
|
+
|
|
44
|
+
- verdict: ready / ready with edits / blocked
|
|
45
|
+
- material corrections with evidence
|
|
46
|
+
- task/dependency changes needed for parallel execution
|
|
47
|
+
- required tests and audits
|
|
48
|
+
- residual risks or explicit blockers
|
|
49
|
+
|
|
50
|
+
For the full historical checklist and examples, read `references/full-methodology.md` only when deeper plan surgery is needed.
|