@anionzo/skill 1.4.0 → 1.7.0
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/CONTRIBUTING.md +2 -1
- package/README.md +82 -24
- package/docs/design-brief.md +17 -13
- package/docs/knowledge-spec.md +1 -0
- package/i18n/CONTRIBUTING.vi.md +2 -1
- package/i18n/README.vi.md +82 -24
- package/i18n/design-brief.vi.md +17 -13
- package/i18n/knowledge-spec.vi.md +1 -0
- package/knowledge/global/skill-triggering-rules.md +3 -2
- package/package.json +1 -1
- package/scripts/install-opencode-skills +197 -35
- package/skills/brainstorming/SKILL.md +176 -13
- package/skills/brainstorming/meta.yaml +18 -10
- package/skills/code-review/SKILL.md +214 -19
- package/skills/code-review/meta.yaml +21 -9
- package/skills/commit/SKILL.md +187 -0
- package/skills/commit/examples.md +62 -0
- package/skills/commit/meta.yaml +29 -0
- package/skills/commit/references/output-template.md +14 -0
- package/skills/debug/SKILL.md +252 -0
- package/skills/debug/examples.md +83 -0
- package/skills/debug/meta.yaml +39 -0
- package/skills/debug/references/output-template.md +16 -0
- package/skills/docs-writer/SKILL.md +85 -10
- package/skills/docs-writer/meta.yaml +18 -13
- package/skills/extract/SKILL.md +201 -0
- package/skills/extract/examples.md +47 -0
- package/skills/extract/meta.yaml +33 -0
- package/skills/extract/references/output-template.md +24 -0
- package/skills/feature-delivery/SKILL.md +12 -5
- package/skills/feature-delivery/meta.yaml +6 -1
- package/skills/planning/SKILL.md +146 -17
- package/skills/planning/meta.yaml +19 -7
- package/skills/refactor-safe/SKILL.md +10 -7
- package/skills/research/SKILL.md +130 -0
- package/skills/research/examples.md +79 -0
- package/skills/research/meta.yaml +31 -0
- package/skills/research/references/output-template.md +23 -0
- package/skills/test-driven-development/SKILL.md +194 -0
- package/skills/test-driven-development/examples.md +77 -0
- package/skills/test-driven-development/meta.yaml +31 -0
- package/skills/test-driven-development/references/.gitkeep +0 -0
- package/skills/test-driven-development/references/output-template.md +31 -0
- package/skills/using-skills/SKILL.md +33 -17
- package/skills/using-skills/examples.md +20 -5
- package/skills/using-skills/meta.yaml +7 -4
- package/skills/verification-before-completion/SKILL.md +127 -13
- package/skills/verification-before-completion/meta.yaml +23 -14
- package/templates/SKILL.md +8 -1
- package/skills/bug-triage/SKILL.md +0 -47
- package/skills/bug-triage/examples.md +0 -68
- package/skills/bug-triage/meta.yaml +0 -25
- package/skills/bug-triage/references/output-template.md +0 -26
- package/skills/repo-onboarding/SKILL.md +0 -52
- package/skills/repo-onboarding/examples.md +0 -115
- package/skills/repo-onboarding/meta.yaml +0 -23
- package/skills/repo-onboarding/references/output-template.md +0 -24
|
@@ -22,7 +22,7 @@ Load this skill when:
|
|
|
22
22
|
|
|
23
23
|
> `an:` stands for "activate now" — a shorthand to immediately load a specific skill.
|
|
24
24
|
|
|
25
|
-
If the user types `an:<skill-name>` (for example `an:planning` or `an:
|
|
25
|
+
If the user types `an:<skill-name>` (for example `an:planning` or `an:debug`), skip classification and load that skill immediately.
|
|
26
26
|
|
|
27
27
|
**Rules:**
|
|
28
28
|
|
|
@@ -33,25 +33,29 @@ If the user types `an:<skill-name>` (for example `an:planning` or `an:bug-triage
|
|
|
33
33
|
|
|
34
34
|
**Available skills:**
|
|
35
35
|
|
|
36
|
-
- `an:brainstorming` —
|
|
37
|
-
- `an:
|
|
38
|
-
- `an:planning` — create an execution-ready plan
|
|
36
|
+
- `an:brainstorming` — explore ideas, lock decisions, optionally write a spec
|
|
37
|
+
- `an:research` — explore existing code and patterns before implementing
|
|
38
|
+
- `an:planning` — create an execution-ready plan with bite-sized steps
|
|
39
39
|
- `an:feature-delivery` — implement a feature
|
|
40
|
-
- `an:
|
|
40
|
+
- `an:test-driven-development` — implement with TDD (red-green-refactor)
|
|
41
|
+
- `an:debug` — systematic 4-phase debugging: investigate, analyze, fix, learn
|
|
41
42
|
- `an:refactor-safe` — restructure code without behavior change
|
|
42
43
|
- `an:verification-before-completion` — verify before claiming done
|
|
43
|
-
- `an:code-review` — review a diff or
|
|
44
|
+
- `an:code-review` — review a diff/PR, or evaluate received feedback
|
|
45
|
+
- `an:commit` — create a conventional commit with verification
|
|
44
46
|
- `an:docs-writer` — update documentation
|
|
47
|
+
- `an:extract` — extract patterns, decisions, and learnings from completed work
|
|
45
48
|
|
|
46
49
|
## Workflow
|
|
47
50
|
|
|
48
51
|
1. Check for direct trigger: if the user typed `an:<skill-name>`, load that skill and skip to step 5.
|
|
49
52
|
2. Classify the request into one of these modes:
|
|
50
|
-
- idea refinement or
|
|
53
|
+
- idea refinement, specification, or requirements definition
|
|
51
54
|
- repo understanding
|
|
52
55
|
- bug or regression investigation
|
|
53
56
|
- planning and implementation
|
|
54
|
-
-
|
|
57
|
+
- test-driven implementation
|
|
58
|
+
- code review (giving or receiving)
|
|
55
59
|
- documentation work
|
|
56
60
|
- answer-only guidance
|
|
57
61
|
3. Decide whether the task first needs brainstorming or can go straight to planning.
|
|
@@ -63,13 +67,20 @@ If the user types `an:<skill-name>` (for example `an:planning` or `an:bug-triage
|
|
|
63
67
|
|
|
64
68
|
- `an:<skill-name>` (direct trigger) -> load the named skill immediately
|
|
65
69
|
- vague feature idea, unclear goal, tradeoff exploration -> `brainstorming`, then `planning`
|
|
66
|
-
- unfamiliar repo or missing context -> `
|
|
67
|
-
-
|
|
68
|
-
-
|
|
70
|
+
- unfamiliar repo or missing context -> `research`
|
|
71
|
+
- need to understand existing code before implementing -> `research`
|
|
72
|
+
- complex feature needing requirements definition -> `brainstorming` (includes spec writing)
|
|
73
|
+
- docs work in an unfamiliar repo -> `research` first, then `docs-writer`
|
|
74
|
+
- bug report, error trace, failing test, regression -> `debug`
|
|
69
75
|
- implement or change behavior -> `planning`, then `feature-delivery`
|
|
76
|
+
- implement with TDD approach -> `planning`, then `test-driven-development`
|
|
77
|
+
- execute an approved spec or clear task end-to-end with minimal gates -> `planning` in go mode
|
|
70
78
|
- refactor, restructure, extract, or migrate without behavior change -> `planning`, then `refactor-safe`
|
|
71
79
|
- review diff, PR, or changed files -> `code-review`
|
|
80
|
+
- respond to review feedback -> `code-review` (receiving mode)
|
|
81
|
+
- ready to commit -> `commit`
|
|
72
82
|
- update README, runbook, onboarding docs, API notes in a known repo -> `docs-writer`
|
|
83
|
+
- extract learnings from completed work, or summarize active work for the next session -> `extract`
|
|
73
84
|
|
|
74
85
|
## Planning Rule
|
|
75
86
|
|
|
@@ -84,15 +95,19 @@ You may skip a separate planning step only when the change is clearly local, low
|
|
|
84
95
|
|
|
85
96
|
## Verification Rule
|
|
86
97
|
|
|
87
|
-
Use `verification-before-completion` before any strong claim that work is done, fixed, passing, or ready.
|
|
98
|
+
Use `verification-before-completion` before any strong claim that work is done, fixed, passing, or ready. No completion claims without fresh evidence.
|
|
88
99
|
|
|
89
100
|
## Output Format
|
|
90
101
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
-
|
|
102
|
+
Present results using the Shared Output Contract:
|
|
103
|
+
|
|
104
|
+
1. **Goal/Result** — the task classified and primary skill chosen
|
|
105
|
+
2. **Key Details:**
|
|
106
|
+
- task type
|
|
107
|
+
- chosen primary skill
|
|
108
|
+
- whether planning is required
|
|
109
|
+
- key assumption or missing decision, if any
|
|
110
|
+
3. **Next Action** — the immediate first step with the chosen skill
|
|
96
111
|
|
|
97
112
|
## Red Flags
|
|
98
113
|
|
|
@@ -102,6 +117,7 @@ Use `verification-before-completion` before any strong claim that work is done,
|
|
|
102
117
|
- loading many skills at once without a clear reason
|
|
103
118
|
- asking broad planning questions before checking if the task is already clear
|
|
104
119
|
- forcing a feature workflow onto a review or docs task
|
|
120
|
+
- skipping TDD when the user requested it
|
|
105
121
|
|
|
106
122
|
## Done Criteria
|
|
107
123
|
|
|
@@ -26,9 +26,9 @@ This login flow started failing after yesterday's deploy.
|
|
|
26
26
|
Expected routing:
|
|
27
27
|
|
|
28
28
|
- task type: bug investigation
|
|
29
|
-
- chosen skill: `
|
|
30
|
-
- planning required: maybe, after
|
|
31
|
-
- next step:
|
|
29
|
+
- chosen skill: `debug`
|
|
30
|
+
- planning required: maybe, after diagnosis if the fix is not obviously local
|
|
31
|
+
- next step: classify the issue and try to reproduce it
|
|
32
32
|
|
|
33
33
|
## Example 3
|
|
34
34
|
|
|
@@ -41,7 +41,7 @@ Help me understand this repo before we add a new API endpoint.
|
|
|
41
41
|
Expected routing:
|
|
42
42
|
|
|
43
43
|
- task type: repo understanding
|
|
44
|
-
- chosen skill: `
|
|
44
|
+
- chosen skill: `research`
|
|
45
45
|
- planning required: not yet
|
|
46
46
|
- next step: read repo docs and inspect core entrypoints
|
|
47
47
|
|
|
@@ -60,7 +60,22 @@ Expected routing:
|
|
|
60
60
|
- planning required: yes
|
|
61
61
|
- next step: refine the exact SSO scope and constraints before writing the implementation plan
|
|
62
62
|
|
|
63
|
-
## Example 5
|
|
63
|
+
## Example 5
|
|
64
|
+
|
|
65
|
+
User request:
|
|
66
|
+
|
|
67
|
+
```text
|
|
68
|
+
What did we do so far? Prepare the next session to continue this task.
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Expected routing:
|
|
72
|
+
|
|
73
|
+
- task type: extraction / handoff
|
|
74
|
+
- chosen skill: `extract`
|
|
75
|
+
- planning required: no
|
|
76
|
+
- next step: summarize the active task, completed work, locked decisions, risks, and next action
|
|
77
|
+
|
|
78
|
+
## Example 6 — Sample completed output
|
|
64
79
|
|
|
65
80
|
User request:
|
|
66
81
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
name: using-skills
|
|
2
|
-
version: 0.
|
|
2
|
+
version: 0.4.0
|
|
3
3
|
category: routing
|
|
4
4
|
summary: Route a user request to the right primary skill and working mode before deeper work begins.
|
|
5
|
-
summary_vi: Phân loại request và chọn đúng skill chính trước khi bắt đầu công việc sâu hơn.
|
|
5
|
+
summary_vi: "Phân loại request và chọn đúng skill chính trước khi bắt đầu công việc sâu hơn."
|
|
6
6
|
triggers:
|
|
7
7
|
- start a new session
|
|
8
8
|
- decide which skill to load
|
|
@@ -19,11 +19,14 @@ constraints:
|
|
|
19
19
|
- prefer one primary skill at a time
|
|
20
20
|
related_skills:
|
|
21
21
|
- brainstorming
|
|
22
|
-
-
|
|
22
|
+
- research
|
|
23
23
|
- planning
|
|
24
|
-
-
|
|
24
|
+
- test-driven-development
|
|
25
|
+
- debug
|
|
25
26
|
- feature-delivery
|
|
26
27
|
- refactor-safe
|
|
27
28
|
- code-review
|
|
29
|
+
- commit
|
|
28
30
|
- verification-before-completion
|
|
29
31
|
- docs-writer
|
|
32
|
+
- extract
|
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
Stop false completion claims by requiring fresh evidence before saying work is done, fixed, or passing.
|
|
5
|
+
Stop false completion claims by requiring fresh evidence before saying work is done, fixed, or passing. Evidence before claims, always.
|
|
6
|
+
|
|
7
|
+
## The Iron Law
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
If you have not run the verification command in this response, you cannot claim it passes. No exceptions.
|
|
6
14
|
|
|
7
15
|
## When To Use
|
|
8
16
|
|
|
@@ -12,6 +20,37 @@ Load this skill when:
|
|
|
12
20
|
- about to say tests or builds pass
|
|
13
21
|
- about to mark work complete
|
|
14
22
|
- about to commit, open a PR, or hand off finished work
|
|
23
|
+
- verifying implementation against a spec's acceptance criteria
|
|
24
|
+
- expressing satisfaction about work state ("done", "ready", "all good")
|
|
25
|
+
|
|
26
|
+
## The Gate Function
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
BEFORE claiming any status or expressing satisfaction:
|
|
30
|
+
|
|
31
|
+
1. IDENTIFY: What command proves this claim?
|
|
32
|
+
2. RUN: Execute the FULL command (fresh, complete)
|
|
33
|
+
3. READ: Full output, check exit code, count failures
|
|
34
|
+
4. VERIFY: Does output confirm the claim?
|
|
35
|
+
- If NO: State actual status with evidence
|
|
36
|
+
- If YES: State claim WITH evidence
|
|
37
|
+
5. ONLY THEN: Make the claim
|
|
38
|
+
|
|
39
|
+
Skip any step = lying, not verifying
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Forbidden Words
|
|
43
|
+
|
|
44
|
+
Do not use these words in completion claims unless backed by fresh evidence run in the same response:
|
|
45
|
+
|
|
46
|
+
- "should work now"
|
|
47
|
+
- "probably fixed"
|
|
48
|
+
- "seems to pass"
|
|
49
|
+
- "looks correct"
|
|
50
|
+
- "I'm confident"
|
|
51
|
+
- "Great!", "Perfect!", "Done!" (before verification)
|
|
52
|
+
|
|
53
|
+
Replace with evidence: "Tests pass (42/42, 0 failures)" or "Build exits 0."
|
|
15
54
|
|
|
16
55
|
## Workflow
|
|
17
56
|
|
|
@@ -19,28 +58,103 @@ Load this skill when:
|
|
|
19
58
|
2. Identify the command, test, or check that proves that claim.
|
|
20
59
|
3. Run the most relevant verification available.
|
|
21
60
|
4. Read the actual result, not just the expectation.
|
|
22
|
-
5.
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
|
|
61
|
+
5. If spec-linked, verify acceptance criteria coverage.
|
|
62
|
+
6. Check verification levels per deliverable.
|
|
63
|
+
7. Report one of three states:
|
|
64
|
+
- **verified** — evidence confirms the claim
|
|
65
|
+
- **failed verification** — evidence contradicts the claim
|
|
66
|
+
- **verification blocked** — cannot verify, state what remains unproven
|
|
67
|
+
|
|
68
|
+
## Verification Levels
|
|
69
|
+
|
|
70
|
+
For each deliverable, verify at three levels:
|
|
71
|
+
|
|
72
|
+
| Level | Check | Meaning |
|
|
73
|
+
|-------|-------|---------|
|
|
74
|
+
| **L1: EXISTS** | File/component/route exists | Created but unknown quality |
|
|
75
|
+
| **L2: SUBSTANTIVE** | Not a stub (no `return null`, empty handlers, TODO-only) | Has real implementation |
|
|
76
|
+
| **L3: WIRED** | Imported and used in the integration layer | Actually connected |
|
|
77
|
+
|
|
78
|
+
Report status per deliverable:
|
|
79
|
+
|
|
80
|
+
- L1+L2+L3: fully wired
|
|
81
|
+
- L1+L2 only: created but not integrated (flag it)
|
|
82
|
+
- L1 only (stub): exists but empty (blocks completion)
|
|
83
|
+
- Missing: not found (blocks completion)
|
|
84
|
+
|
|
85
|
+
## Spec Acceptance Criteria Coverage
|
|
86
|
+
|
|
87
|
+
When work is linked to a spec, also verify:
|
|
88
|
+
|
|
89
|
+
1. Map each acceptance criterion to its verification evidence.
|
|
90
|
+
2. Report coverage:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
AC Coverage
|
|
94
|
+
===========
|
|
95
|
+
- [x] AC-1: [description] — VERIFIED (test passes)
|
|
96
|
+
- [x] AC-2: [description] — VERIFIED (manual check)
|
|
97
|
+
- [ ] AC-3: [description] — NOT VERIFIED (no test exists)
|
|
98
|
+
|
|
99
|
+
Coverage: 2/3 (67%)
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
3. Flag any AC that has no verification evidence.
|
|
103
|
+
|
|
104
|
+
## Common Rationalizations
|
|
105
|
+
|
|
106
|
+
| Excuse | Reality |
|
|
107
|
+
|--------|---------|
|
|
108
|
+
| "Should work now" | RUN the verification. |
|
|
109
|
+
| "I'm confident" | Confidence is not evidence. |
|
|
110
|
+
| "Just this once" | No exceptions. |
|
|
111
|
+
| "Linter passed" | Linter is not compiler is not test suite. |
|
|
112
|
+
| "Agent said success" | Verify independently. |
|
|
113
|
+
| "Partial check is enough" | Partial proves nothing about the unchecked parts. |
|
|
114
|
+
| "Different words so rule doesn't apply" | Spirit over letter. Any claim of success requires evidence. |
|
|
115
|
+
| "I'm tired" | Exhaustion is not an excuse to ship broken code. |
|
|
27
116
|
|
|
28
117
|
## Output Format
|
|
29
118
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
-
|
|
119
|
+
Present results using the Shared Output Contract:
|
|
120
|
+
|
|
121
|
+
1. **Goal/Result** — what claim was checked and the verification status
|
|
122
|
+
2. **Key Details:**
|
|
123
|
+
- claim being checked
|
|
124
|
+
- evidence run (exact command or check)
|
|
125
|
+
- result (pass/fail/blocked)
|
|
126
|
+
- verification level per deliverable (L1/L2/L3)
|
|
127
|
+
- AC coverage (if spec-linked)
|
|
128
|
+
- remaining uncertainty, if any
|
|
129
|
+
3. **Next Action:**
|
|
130
|
+
- if verified → `code-review` or `commit`
|
|
131
|
+
- if failed → back to `feature-delivery` or `debug`
|
|
132
|
+
- if blocked → state what is needed
|
|
35
133
|
|
|
36
134
|
## Red Flags
|
|
37
135
|
|
|
38
|
-
-
|
|
136
|
+
- using any forbidden word without fresh evidence
|
|
137
|
+
- saying "should work now"
|
|
39
138
|
- treating code edits as proof
|
|
40
139
|
- using stale test output as fresh evidence
|
|
41
140
|
- extrapolating from a partial check to a broader claim
|
|
42
141
|
- declaring success while verification is still blocked
|
|
142
|
+
- marking stubs (L1 only) as complete
|
|
143
|
+
- skipping AC coverage check for spec-linked work
|
|
144
|
+
- expressing satisfaction before running verification
|
|
145
|
+
|
|
146
|
+
## Checklist
|
|
147
|
+
|
|
148
|
+
- [ ] Claim identified
|
|
149
|
+
- [ ] Verification command/check identified
|
|
150
|
+
- [ ] Verification run (fresh, not stale)
|
|
151
|
+
- [ ] Actual result read (not assumed)
|
|
152
|
+
- [ ] No forbidden words used without evidence
|
|
153
|
+
- [ ] Verification levels checked per deliverable (L1/L2/L3)
|
|
154
|
+
- [ ] AC coverage verified (if spec-linked)
|
|
155
|
+
- [ ] Status reported (verified / failed / blocked)
|
|
156
|
+
- [ ] Remaining uncertainty stated
|
|
43
157
|
|
|
44
158
|
## Done Criteria
|
|
45
159
|
|
|
46
|
-
This skill is complete when the claim is either backed by fresh evidence or explicitly marked as unverified with the blocker stated. If verification passes and a review is warranted, hand off to `code-review`.
|
|
160
|
+
This skill is complete when the claim is either backed by fresh evidence or explicitly marked as unverified with the blocker stated. If verification passes and a review is warranted, hand off to `code-review`. If spec-linked, AC coverage must be reported.
|
|
@@ -1,26 +1,35 @@
|
|
|
1
1
|
name: verification-before-completion
|
|
2
|
-
version: 0.
|
|
3
|
-
category:
|
|
4
|
-
summary:
|
|
5
|
-
summary_vi:
|
|
2
|
+
version: 0.3.0
|
|
3
|
+
category: quality
|
|
4
|
+
summary: Iron law enforcement of fresh evidence before completion claims, with forbidden words, anti-rationalization, and AC coverage.
|
|
5
|
+
summary_vi: "Thực thi nghiêm ngặt bằng chứng mới trước khi tuyên bố hoàn thành, với từ cấm, chống rationalization, và AC coverage."
|
|
6
6
|
triggers:
|
|
7
|
+
- verify this works
|
|
8
|
+
- check before marking done
|
|
9
|
+
- confirm the fix
|
|
7
10
|
- before saying a fix works
|
|
8
|
-
- before marking work complete
|
|
9
11
|
- before commit, PR, or handoff
|
|
10
12
|
inputs:
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
+
- claim being made
|
|
14
|
+
- verification command or check
|
|
15
|
+
- optional spec reference for AC coverage
|
|
13
16
|
outputs:
|
|
14
|
-
- verified
|
|
15
|
-
-
|
|
17
|
+
- verification status (verified/failed/blocked)
|
|
18
|
+
- verification levels per deliverable (L1/L2/L3)
|
|
19
|
+
- AC coverage report (if spec-linked)
|
|
16
20
|
- remaining uncertainty
|
|
17
21
|
constraints:
|
|
18
|
-
- no
|
|
19
|
-
-
|
|
22
|
+
- no completion claims without fresh verification evidence
|
|
23
|
+
- forbidden words without evidence block completion
|
|
24
|
+
- must run fresh verification, not use stale output
|
|
25
|
+
- stubs (L1 only) block completion
|
|
20
26
|
related_skills:
|
|
21
27
|
- using-skills
|
|
28
|
+
- code-review
|
|
29
|
+
- commit
|
|
30
|
+
- docs-writer
|
|
22
31
|
- feature-delivery
|
|
23
|
-
-
|
|
24
|
-
- refactor-safe
|
|
32
|
+
- debug
|
|
25
33
|
- planning
|
|
26
|
-
-
|
|
34
|
+
- refactor-safe
|
|
35
|
+
- test-driven-development
|
package/templates/SKILL.md
CHANGED
|
@@ -17,7 +17,14 @@ State the job this skill performs.
|
|
|
17
17
|
|
|
18
18
|
## Output Format
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
Present results using the Shared Output Contract:
|
|
21
|
+
|
|
22
|
+
1. **Goal/Result** — what was accomplished or blocked
|
|
23
|
+
2. **Key Details:**
|
|
24
|
+
- the most important supporting context
|
|
25
|
+
- concrete references (files, commands, evidence)
|
|
26
|
+
- assumptions or gaps
|
|
27
|
+
3. **Next Action** — recommend a follow-up only when a natural handoff exists
|
|
21
28
|
|
|
22
29
|
## Red Flags
|
|
23
30
|
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
# Bug Triage
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
Investigate failures methodically so the next fix is based on evidence instead of guesswork.
|
|
6
|
-
|
|
7
|
-
## When To Use
|
|
8
|
-
|
|
9
|
-
Load this skill when:
|
|
10
|
-
|
|
11
|
-
- a user reports a bug or regression
|
|
12
|
-
- a test starts failing without obvious cause
|
|
13
|
-
- production behavior no longer matches the intended behavior
|
|
14
|
-
|
|
15
|
-
## Workflow
|
|
16
|
-
|
|
17
|
-
1. Restate the symptom in plain language.
|
|
18
|
-
2. Attempt to reproduce the issue or explain why reproduction is blocked.
|
|
19
|
-
3. Narrow the problem:
|
|
20
|
-
- identify the code path involved
|
|
21
|
-
- inspect recent behavior changes or assumptions
|
|
22
|
-
- check inputs, state, timing, or environment differences
|
|
23
|
-
4. Form the smallest credible root-cause hypothesis.
|
|
24
|
-
5. Define the minimal next change or experiment that would confirm the cause.
|
|
25
|
-
6. Add or recommend regression coverage when the cause is clear.
|
|
26
|
-
|
|
27
|
-
## Output Format
|
|
28
|
-
|
|
29
|
-
- symptom summary
|
|
30
|
-
- reproduction status
|
|
31
|
-
- suspected root cause
|
|
32
|
-
- impacted area
|
|
33
|
-
- proposed next change
|
|
34
|
-
- confidence level
|
|
35
|
-
|
|
36
|
-
## Red Flags
|
|
37
|
-
|
|
38
|
-
- proposing a rewrite before understanding the current failure
|
|
39
|
-
- changing many files before narrowing the cause
|
|
40
|
-
- ignoring whether the behavior is reproducible
|
|
41
|
-
- treating logs or stack traces as proof without checking the code path
|
|
42
|
-
|
|
43
|
-
## Done Criteria
|
|
44
|
-
|
|
45
|
-
This skill is complete when the next fix or experiment is specific, minimal, and tied to a clearly stated hypothesis.
|
|
46
|
-
|
|
47
|
-
If the fix is non-trivial or touches more than one area, hand off to `planning` before moving to `feature-delivery`.
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# Examples
|
|
2
|
-
|
|
3
|
-
## Example 1
|
|
4
|
-
|
|
5
|
-
User request:
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
Users get logged out randomly after the deploy.
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
Expected result:
|
|
12
|
-
|
|
13
|
-
- restate the symptom and affected surface area
|
|
14
|
-
- inspect auth session code path and recent deploy changes
|
|
15
|
-
- identify one or two likely causes before editing unrelated modules
|
|
16
|
-
|
|
17
|
-
Sample completed output:
|
|
18
|
-
|
|
19
|
-
```
|
|
20
|
-
Symptom: Users with active sessions are being logged out unexpectedly after the v2.4.1 deploy.
|
|
21
|
-
|
|
22
|
-
Reproduction: Confirmed on staging — session is invalidated ~10 minutes after login even without user action.
|
|
23
|
-
|
|
24
|
-
Root-Cause Hypothesis:
|
|
25
|
-
- Most likely: SESSION_TTL env var was changed from 3600 to 600 in the deploy config
|
|
26
|
-
- Evidence: session.ts reads process.env.SESSION_TTL; config diff shows the change
|
|
27
|
-
- Uncertainty: not yet confirmed whether all env changes were intentional
|
|
28
|
-
|
|
29
|
-
Next Change: Restore SESSION_TTL to 3600 in production config and redeploy
|
|
30
|
-
|
|
31
|
-
Confidence: high
|
|
32
|
-
|
|
33
|
-
Handoff: feature-delivery (fix is already clear and local)
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
## Example 2
|
|
37
|
-
|
|
38
|
-
User request:
|
|
39
|
-
|
|
40
|
-
```text
|
|
41
|
-
This integration test started failing with a timeout.
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
Expected result:
|
|
45
|
-
|
|
46
|
-
- determine where the timeout occurs
|
|
47
|
-
- distinguish between slow setup, deadlock, or missing response
|
|
48
|
-
- propose the smallest confirming step
|
|
49
|
-
|
|
50
|
-
### Completed output
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
Symptom: Integration test `test/integration/payment.test.ts` times out after 30s on the "processes valid refund" case.
|
|
54
|
-
|
|
55
|
-
Reproduction: Confirmed locally — `npm test -- payment` hangs at step 3/5 of the refund flow test.
|
|
56
|
-
|
|
57
|
-
Root-Cause Hypothesis:
|
|
58
|
-
- Most likely: The mock payment gateway is not responding to the refund callback, causing the test to wait indefinitely
|
|
59
|
-
- Evidence: The test uses a mock server on port 9999; logs show the request is sent but no response is received
|
|
60
|
-
- Alternative: A database connection pool exhaustion from a previous test not cleaning up properly
|
|
61
|
-
- Uncertainty: need to check if the mock server is started before the refund call
|
|
62
|
-
|
|
63
|
-
Confirming Step: Add a 5s timeout to the mock refund endpoint and log whether it receives the request. If the mock receives it but doesn't respond, the mock handler is missing the refund route.
|
|
64
|
-
|
|
65
|
-
Confidence: medium
|
|
66
|
-
|
|
67
|
-
Handoff: planning (once root cause is confirmed, the fix is likely a one-line mock handler addition)
|
|
68
|
-
```
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
name: bug-triage
|
|
2
|
-
version: 0.1.0
|
|
3
|
-
category: debugging
|
|
4
|
-
summary: Turn a bug report or failure symptom into a grounded root-cause hypothesis and a minimal next fix.
|
|
5
|
-
summary_vi: Biến bug report hoặc triệu chứng lỗi thành giả thuyết nguyên nhân gốc có căn cứ và bước sửa tối thiểu tiếp theo.
|
|
6
|
-
triggers:
|
|
7
|
-
- investigate this error
|
|
8
|
-
- debug this regression
|
|
9
|
-
- failing test or production issue
|
|
10
|
-
inputs:
|
|
11
|
-
- bug report
|
|
12
|
-
- logs or stack traces when available
|
|
13
|
-
- code paths involved in the failure
|
|
14
|
-
outputs:
|
|
15
|
-
- reproduction status
|
|
16
|
-
- root-cause hypothesis
|
|
17
|
-
- minimal next change
|
|
18
|
-
constraints:
|
|
19
|
-
- prove or narrow the cause before broad refactors
|
|
20
|
-
- call out confidence and uncertainty explicitly
|
|
21
|
-
related_skills:
|
|
22
|
-
- using-skills
|
|
23
|
-
- planning
|
|
24
|
-
- feature-delivery
|
|
25
|
-
- verification-before-completion
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
## Symptom
|
|
2
|
-
|
|
3
|
-
- What is failing and how it shows up
|
|
4
|
-
|
|
5
|
-
## Reproduction
|
|
6
|
-
|
|
7
|
-
- reproduced: yes or no
|
|
8
|
-
- notes:
|
|
9
|
-
|
|
10
|
-
## Root-Cause Hypothesis
|
|
11
|
-
|
|
12
|
-
- most likely cause:
|
|
13
|
-
- evidence:
|
|
14
|
-
- uncertainty:
|
|
15
|
-
|
|
16
|
-
## Next Change
|
|
17
|
-
|
|
18
|
-
- smallest fix or confirming experiment
|
|
19
|
-
|
|
20
|
-
## Confidence
|
|
21
|
-
|
|
22
|
-
- low, medium, or high
|
|
23
|
-
|
|
24
|
-
## Handoff
|
|
25
|
-
|
|
26
|
-
- Next skill: planning (if fix is non-trivial) or feature-delivery (if fix is already clear)
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
# Repo Onboarding
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
Understand a repository quickly enough to act safely and explain what matters.
|
|
6
|
-
|
|
7
|
-
## When To Use
|
|
8
|
-
|
|
9
|
-
Load this skill when:
|
|
10
|
-
|
|
11
|
-
- entering a repo for the first time
|
|
12
|
-
- a task depends on understanding architecture or conventions
|
|
13
|
-
- the user asks what the project does or how it is organized
|
|
14
|
-
|
|
15
|
-
## Workflow
|
|
16
|
-
|
|
17
|
-
1. Read the top-level operating docs first, especially `AGENTS.md` and `README.md` when present.
|
|
18
|
-
2. Inspect the most informative source files next:
|
|
19
|
-
- package manifests or build files
|
|
20
|
-
- app entrypoints and framework bootstraps
|
|
21
|
-
- core config files
|
|
22
|
-
- representative tests
|
|
23
|
-
3. Identify:
|
|
24
|
-
- project purpose
|
|
25
|
-
- major components
|
|
26
|
-
- runtime model and key integrations
|
|
27
|
-
- important development or verification commands
|
|
28
|
-
4. Call out what is verified from source versus what is still uncertain.
|
|
29
|
-
5. Recommend the next files or directories to inspect for the user's likely goal.
|
|
30
|
-
|
|
31
|
-
## Output Format
|
|
32
|
-
|
|
33
|
-
- project purpose
|
|
34
|
-
- architecture summary
|
|
35
|
-
- major components and responsibilities
|
|
36
|
-
- important commands or workflows
|
|
37
|
-
- notable conventions or constraints
|
|
38
|
-
- open questions
|
|
39
|
-
- recommended next reads
|
|
40
|
-
|
|
41
|
-
## Red Flags
|
|
42
|
-
|
|
43
|
-
- skipping repo docs and jumping straight into random source files
|
|
44
|
-
- summarizing architecture from folder names alone
|
|
45
|
-
- claiming a behavior without checking source or config
|
|
46
|
-
- reading many low-value files while missing the actual entrypoints
|
|
47
|
-
|
|
48
|
-
## Done Criteria
|
|
49
|
-
|
|
50
|
-
This skill is complete when another engineer could start productive work from the summary without redoing the same orientation pass. Both the "Important Commands" and "Open Questions" fields must be populated.
|
|
51
|
-
|
|
52
|
-
After this skill, the natural next step is `planning` (to plan a change) or `docs-writer` (if the goal is to update documentation).
|