write-skills 0.3.0 → 0.4.1

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.
Files changed (58) hide show
  1. package/README.md +122 -39
  2. package/THIRD_PARTY_NOTICES.md +8 -1
  3. package/docs/AUDIT.md +4 -4
  4. package/docs/BLOCKS.md +12 -3
  5. package/docs/EVALS.md +24 -1
  6. package/docs/EXPERIMENT.md +341 -0
  7. package/docs/ROUTING-TEST.md +59 -0
  8. package/docs/RULES.md +11 -0
  9. package/docs/STATE.md +88 -0
  10. package/docs/examples.md +133 -35
  11. package/package.json +15 -2
  12. package/skills/help-write/SKILL.md +71 -0
  13. package/skills/{write-core → help-write}/agents/openai.yaml +1 -1
  14. package/skills/help-write/evals/evals.json +26 -0
  15. package/skills/write-adr/SKILL.md +102 -0
  16. package/skills/write-adr/agents/openai.yaml +2 -0
  17. package/skills/write-adr/evals/evals.json +28 -0
  18. package/skills/write-adr/references/local-rules.md +33 -0
  19. package/skills/write-adr/references/ste.md +82 -0
  20. package/skills/write-again/SKILL.md +72 -0
  21. package/skills/write-again/agents/openai.yaml +2 -0
  22. package/skills/write-again/evals/evals.json +28 -0
  23. package/skills/write-again/references/local-rules.md +33 -0
  24. package/skills/write-again/references/ste.md +82 -0
  25. package/skills/{write-core → write-better}/SKILL.md +32 -3
  26. package/skills/write-better/agents/openai.yaml +2 -0
  27. package/skills/{write-core → write-better}/references/ai-patterns.md +12 -0
  28. package/skills/write-better/references/local-rules.md +33 -0
  29. package/skills/write-better/references/reader-load.md +87 -0
  30. package/skills/write-better/references/ste.md +82 -0
  31. package/skills/write-compact/SKILL.md +8 -18
  32. package/skills/write-docs/SKILL.md +16 -0
  33. package/skills/write-docs/references/docs-standard.md +15 -0
  34. package/skills/write-plan/SKILL.md +74 -0
  35. package/skills/write-plan/agents/openai.yaml +2 -0
  36. package/skills/write-plan/evals/evals.json +28 -0
  37. package/skills/write-plan/references/local-rules.md +33 -0
  38. package/skills/write-plan/references/ste.md +82 -0
  39. package/skills/write-pr/SKILL.md +24 -0
  40. package/skills/write-prd/SKILL.md +81 -0
  41. package/skills/write-prd/agents/openai.yaml +2 -0
  42. package/skills/write-prd/evals/evals.json +27 -0
  43. package/skills/write-prd/references/local-rules.md +33 -0
  44. package/skills/write-prd/references/ste.md +82 -0
  45. package/skills/write-ste/SKILL.md +61 -0
  46. package/skills/write-ste/agents/openai.yaml +2 -0
  47. package/skills/write-ste/evals/evals.json +27 -0
  48. package/skills/write-ste/references/local-rules.md +33 -0
  49. package/skills/write-ste/references/ste.md +82 -0
  50. package/skills/write-tldr/SKILL.md +59 -0
  51. package/skills/write-tldr/agents/openai.yaml +2 -0
  52. package/skills/write-tldr/evals/evals.json +27 -0
  53. package/skills/write-tldr/references/local-rules.md +33 -0
  54. package/skills/write-tldr/references/ste.md +82 -0
  55. /package/skills/{write-core → help-write}/references/local-rules.md +0 -0
  56. /package/skills/{write-core → help-write}/references/ste.md +0 -0
  57. /package/skills/{write-core → write-better}/evals/evals.json +0 -0
  58. /package/skills/{write-core → write-better}/references/profile.md +0 -0
package/README.md CHANGED
@@ -1,64 +1,134 @@
1
1
  # write-skills
2
2
 
3
- Fifteen agent skills for writing. Each skill works alone. Install one skill or all of them.
3
+ [![npm](https://img.shields.io/npm/v/write-skills.svg)](https://www.npmjs.com/package/write-skills)
4
+ [![downloads](https://img.shields.io/npm/dm/write-skills.svg)](https://www.npmjs.com/package/write-skills)
5
+ [![ci](https://github.com/adhamhaithameid/write-skills/actions/workflows/ci.yml/badge.svg)](https://github.com/adhamhaithameid/write-skills/actions/workflows/ci.yml)
4
6
 
5
- ## Skills
7
+ [![stars](https://img.shields.io/github/stars/adhamhaithameid/write-skills.svg)](https://github.com/adhamhaithameid/write-skills/stargazers)
8
+ [![license MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
9
+ [![install](https://img.shields.io/badge/install-npx%20skills%20add-blue.svg)](https://www.skills.sh/adhamhaithameid/write-skills)
10
+ [![PRs welcome](https://img.shields.io/badge/PRs-welcome-green.svg)](CONTRIBUTING.md)
11
+ [![experiment](https://img.shields.io/badge/experiment-13%20clear%20%C2%B7%209%20thin%20%C2%B7%200%20fail-brightgreen.svg)](docs/EXPERIMENT.md)
12
+
13
+ Twenty-two agent skills that fix how agents write. Each skill works alone. Install one skill or all of them.
14
+
15
+ > The mission: the reading experience must never feel like hell. Every skill serves that.
16
+
17
+ ## Before and after
18
+
19
+ Red is what the agent wrote before. Green is what the skill rules produced.
20
+
21
+ **write-better**, a chat answer:
22
+
23
+ ```diff
24
+ - Sure! I'd be happy to help. In order to boost your productivity, this
25
+ - robust tool leverages cutting-edge caching for a seamless experience.
26
+ + The tool caches your queries. A repeat query answers in 12 ms. A cold
27
+ + query answers in 340 ms.
28
+ ```
29
+
30
+ **write-compact**, the same answer in one line:
31
+
32
+ ```diff
33
+ - Certainly! Let me explain. The issue you're experiencing is likely
34
+ - caused by a misconfiguration of your authentication settings.
35
+ + Auth fails. The token check reads the wrong claim. Fix in auth.ts line 40:
36
+ ```
37
+
38
+ **write-pr**, a PR body:
39
+
40
+ ```diff
41
+ - This PR makes several improvements to the authentication system and
42
+ - cleans up a number of related issues that we noticed during testing.
43
+ + Reject expired session tokens at login. The reset test fails on main
44
+ + and passes here. Risk: two-way door, login only.
45
+ ```
46
+
47
+ **write-jira**, a story:
48
+
49
+ ```diff
50
+ - BE-1 Backend table (3) BE-2 Upload endpoint (5) WEB-1 Button (5)
51
+ + One vertical story: POST /tasks/{id}/attachments saves the file, the
52
+ + web view lists it. Points: 5. One table, one endpoint, one screen.
53
+ ```
54
+
55
+ The full gallery covers all twenty-two skills in [docs/examples.md](docs/examples.md).
56
+
57
+ ## Why
58
+
59
+ AI text is hard to read. Subjects sit far from their verbs. Nouns stack four deep. Databases want things and conversations eat their own tails. A 2026 study by NYU and UT Austin found these patterns across 14 models and tied them to how the models train. This set fixes the patterns at the source.
60
+
61
+ It also gives the agent a shape for every text a developer writes: chat replies, commit messages, PR bodies, docs, tickets, reports, plans.
62
+
63
+ ## Quick start
64
+
65
+ 1. Install the set: `npx skills add adhamhaithameid/write-skills`
66
+ 2. Start a session and ask your agent to write anything.
67
+ 3. Watch the reply land on the first read.
68
+
69
+ ## The skills
70
+
71
+ ### Chat and replies
72
+
73
+ | Skill | Use for |
74
+ |---|---|
75
+ | write-better | The general floor: reader levels, sentence rules, AI patterns, reader load. |
76
+ | write-compact | Brief replies on request. The whole reply stays short. |
77
+ | write-tldr | A short block at the end of a long answer: TLDR plus what was found. |
78
+ | write-again | Rewrite the last output, explain a failed answer again, or refresh a stale doc. |
79
+ | help-write | Ask in chat which skill fits the task; it routes and follows. |
80
+
81
+ ### Code
6
82
 
7
83
  | Skill | Use for |
8
84
  |---|---|
9
- | write-core | Chat answers, explanations, and notes. Reader levels, depth, sentence rules, AI patterns. |
10
- | write-compact | Brief replies on request, or explain a confusing reply again. |
11
- | write-docs | READMEs, tutorials, how-to guides, reference pages, explanations, RFCs, and documents an agent reads. |
12
- | write-pr | PR title and description from the change and the evidence. |
13
85
  | write-commit | Commit message from the staged diff and the repository history. |
86
+ | write-pr | PR title and description from the change and the evidence. |
14
87
  | write-comments | Code comments that state intent, constraints, and invariants. |
15
88
  | write-review | Review comments on a diff: location, problem, fix. |
89
+
90
+ ### Product and planning
91
+
92
+ | Skill | Use for |
93
+ |---|---|
94
+ | write-plan | A plan before work starts: goal, approaches, steps, risks. |
95
+ | write-adr | Architecture decision records: context, decision, consequences. |
96
+ | write-prd | Product requirements: problem, goals, testable requirements, metrics. |
16
97
  | write-jira | Jira epics, stories, and story points from a plan. |
17
98
  | write-issue | GitHub issues and bug reports with reproduction steps. |
18
99
  | write-release | Release notes from git history. |
19
- | write-report | Status updates, incident reports, and findings for a decision-maker. |
100
+
101
+ ### Knowledge
102
+
103
+ | Skill | Use for |
104
+ |---|---|
105
+ | write-docs | READMEs, tutorials, reference pages, RFCs, and documents an agent reads. |
20
106
  | write-summary | Summaries of threads, docs, logs, and meetings that keep the facts. |
107
+ | write-report | Status updates, incident reports, and findings for a decision-maker. |
21
108
  | write-handoff | Handoff notes so work continues in a fresh session. |
22
109
  | write-longform | A staged long-form mission: collect raw material, then build the article. |
23
110
  | write-glossary | Build or clean a glossary, one term per concept. |
111
+ | write-ste | Enforce Simplified Technical English on any text, violations named by rule. |
24
112
 
25
- ## See the difference
26
-
27
- Every skill states what it changes. Three samples here. The full gallery of all fifteen is in `docs/examples.md`. The pairs are hand-written examples of the rules, not recorded sessions.
28
-
29
- write-core, a chat answer:
30
-
31
- ```text
32
- Before: "Sure! I'd be happy to help. In order to boost your productivity,
33
- this robust tool leverages cutting-edge caching."
34
- After: "The tool caches your queries. A repeat query answers in 12 ms."
35
- ```
36
-
37
- write-pr, a PR body:
113
+ ## Proof
38
114
 
39
- ```text
40
- Before: "This PR makes several improvements to the authentication system
41
- and cleans up a number of related issues."
42
- After: "Summary: reject expired session tokens at login. Evidence: the
43
- reset test fails on main, passes here. Risk: two-way door, login only."
44
- ```
115
+ We ran all twenty-two skills in a controlled experiment. Each skill wrote one task with and without its own rules.
45
116
 
46
- write-jira, a story:
117
+ | Verdict | Count |
118
+ |---|---|
119
+ | Clear pass | 13 |
120
+ | Thin pass | 9 |
121
+ | Fail | 0 |
47
122
 
48
- ```text
49
- Before: "BE-1 Backend table (3) BE-2 Upload endpoint (5) WEB-1 Button (5)"
50
- After: "One vertical story: POST /tasks/{id}/attachments saves the file,
51
- the web view lists it. Points: 5. Reason: one table, one endpoint,
52
- one screen in a single slice."
53
- ```
123
+ Read the method, the raw pairs, and the verdicts in [docs/EXPERIMENT.md](docs/EXPERIMENT.md).
54
124
 
55
- ## Local rules
125
+ ## Your rules win
56
126
 
57
127
  Every skill reads your local rule files first: `AGENTS.md`, `CLAUDE.md`, `CONTRIBUTING.md`, and `GLOSSARY.md`. Your glossary terms and repo conventions beat the skill defaults. The skills never edit those files.
58
128
 
59
129
  ## Install
60
130
 
61
- Install every skill from this repository:
131
+ The skills CLI detects your agent and installs into the right folder:
62
132
 
63
133
  ```
64
134
  npx skills add adhamhaithameid/write-skills
@@ -67,23 +137,36 @@ npx skills add adhamhaithameid/write-skills
67
137
  Install one skill:
68
138
 
69
139
  ```
70
- npx skills add adhamhaithameid/write-skills --skill write-core
140
+ npx skills add adhamhaithameid/write-skills --skill write-better
71
141
  ```
72
142
 
73
- Install the npm package, then copy a skill folder into the skills folder of your agent, for example `~/.claude/skills/`:
143
+ Install the npm package and copy a skill folder into your agent's skills folder:
74
144
 
75
145
  ```
76
146
  npm install write-skills
77
147
  ```
78
148
 
79
- Or copy a folder from `skills/` by hand. Each skill folder holds everything the skill uses.
149
+ | Agent | Skills folder |
150
+ |---|---|
151
+ | Claude Code | `~/.claude/skills/` |
152
+ | Codex | `~/.agents/skills/` |
153
+ | Any other agent | your agent's skills folder |
80
154
 
81
- No skill needs another skill.
155
+ Or copy a folder from `skills/` by hand. Each skill folder holds everything the skill uses. No skill needs another skill.
82
156
 
83
157
  ## Output language
84
158
 
85
159
  Every skill writes its prose output in ASD-STE100 Simplified Technical English. Each skill carries its own copy of the rules in `references/ste.md`.
86
160
 
161
+ ## Docs
162
+
163
+ - [docs/BLOCKS.md](docs/BLOCKS.md): the manifest and the set cap.
164
+ - [docs/examples.md](docs/examples.md): the before-and-after gallery.
165
+ - [docs/EXPERIMENT.md](docs/EXPERIMENT.md): the controlled before-and-after experiment.
166
+ - [docs/STATE.md](docs/STATE.md): what the set is, skill by skill.
167
+ - [docs/AUDIT.md](docs/AUDIT.md): the 24-check rubric scores.
168
+ - [docs/EVALS.md](docs/EVALS.md): the behavior evidence.
169
+
87
170
  ## Check the repo
88
171
 
89
172
  Run these commands from the repo root:
@@ -6,7 +6,7 @@ This collection derives from the projects below. Each entry states the license a
6
6
 
7
7
  - mattpocock/skills (MIT). The agent-document reference and the three writing workflow stages (fragments, shape, beats) informed the agent mode of write-docs and the stages of write-longform. The vertical-slice ticket pattern informed write-jira. The text in this collection was rewritten and condensed. https://github.com/mattpocock/skills
8
8
  - humanlayer/skills, the show-me skill by Dex Horthy (credited in that skill). Its PR template idea, summary plus evidence plus merge danger, informed write-pr. The text in this collection was rewritten. https://github.com/humanlayer/skills
9
- - JuliusBrussee/caveman (MIT; the repository also ships an Apache-2.0 license file, and its plugin manifest declares MIT). The brief-voice rules in write-core and write-compact were written fresh for this collection. No text from that repository was copied. Named to credit the idea. https://github.com/JuliusBrussee/caveman
9
+ - JuliusBrussee/caveman (MIT; the repository also ships an Apache-2.0 license file, and its plugin manifest declares MIT). The brief-voice rules in write-better and write-compact were written fresh for this collection. No text from that repository was copied. Named to credit the idea. https://github.com/JuliusBrussee/caveman
10
10
  - Hakku/finnish-humanizer (MIT). Its pattern-catalog method was reviewed during design. No text from it appears here. https://github.com/Hakku/finnish-humanizer
11
11
 
12
12
  ## Origin unknown
@@ -19,6 +19,13 @@ This collection derives from the projects below. Each entry states the license a
19
19
  - Diataxis framework by Daniele Procida. https://diataxis.org/. The four mode names are used under the framework.
20
20
  - Google developer documentation style guide. https://developers.google.com/style. The sentence rules in this collection are our own summary.
21
21
 
22
+ ## Ideas credited
23
+
24
+ - Nate Berkopec, the TLDR-at-end-of-turn pattern from a public post of 26 October 2026. The rule text in write-tldr is our own. https://x.com/nateberkopec/status/2114819619513135180
25
+ - The NYU and UT Austin study of reader-slowing patterns in model text, reported by The Decoder in October 2026. The seven pattern names and examples in reader-load.md are our own wording. https://the-decoder.com/researchers-find-six-patterns-that-make-ai-text-so-exhausting-to-read
26
+ - Michael Nygard, the architecture decision record format used by write-adr. https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions
27
+ - superpowers:writing-plans, reviewed during the design of write-plan. No text copied. https://github.com/obra/superpowers
28
+
22
29
  ## Prior art
23
30
 
24
31
  - danyuchn/asd-ste100-skill. STE as an agent rule file. https://github.com/danyuchn/asd-ste100-skill
package/docs/AUDIT.md CHANGED
@@ -6,7 +6,7 @@ Rubric: the 24-check skill checklist. Each check scores 0, 1, or 2. Weighted tot
6
6
 
7
7
  | Skill | Score | Percent | Grade |
8
8
  |---|---|---|---|
9
- | write-core | 58 | 81 percent | B |
9
+ | write-better | 58 | 81 percent | B |
10
10
  | write-compact | 63 | 88 percent | B |
11
11
  | write-docs | 61 | 85 percent | B |
12
12
  | write-pr | 63 | 88 percent | B |
@@ -25,10 +25,10 @@ Rubric: the 24-check skill checklist. Each check scores 0, 1, or 2. Weighted tot
25
25
 
26
26
  ## Findings fixed in this audit
27
27
 
28
- 1. Four skills used terms that only write-core defines: "floor rules" in write-compact, "reader level" in write-longform, and "level 2" in write-pr. All reworded. No skill now depends on the vocabulary of another.
28
+ 1. Four skills used terms that only write-better defines: "floor rules" in write-compact, "reader level" in write-longform, and "level 2" in write-pr. All reworded. No skill now depends on the vocabulary of another.
29
29
  2. Jargon before definition: "one-way door" in write-pr and "pile file" in write-longform. Both defined at first use, or reworded.
30
30
  3. write-docs claimed release notes while the manifest held them back. write-release now owns them, and the write-docs description dropped the claim.
31
- 4. write-core claimed status updates and bug reports. write-report and write-issue own them now, so the three descriptions no longer collide.
31
+ 4. write-better claimed status updates and bug reports. write-report and write-issue own them now, so the three descriptions no longer collide.
32
32
  5. Four skills had no example. Every skill now carries one, and docs/examples.md holds the gallery.
33
33
 
34
34
  ## Weakest checks, set wide
@@ -42,7 +42,7 @@ Rubric: the 24-check skill checklist. Each check scores 0, 1, or 2. Weighted tot
42
42
 
43
43
  1. Run the eval cases for the seven new skills and the unrun core and longform cases.
44
44
  2. Add three should-not-fire prompts per skill to the routing test.
45
- 3. Sharpen step endings into checkable criteria, starting with write-core and write-docs.
45
+ 3. Sharpen step endings into checkable criteria, starting with write-better and write-docs.
46
46
  4. Cap the set at fifteen until the trigger test proves no collisions.
47
47
 
48
48
  ## Method note
package/docs/BLOCKS.md CHANGED
@@ -1,13 +1,18 @@
1
1
  # Block manifest
2
2
 
3
+ The mission of this set: the reading experience must never feel like hell.
4
+
3
5
  One row for each block in this set. Change this file first when the set changes. The rule register in `docs/RULES.md` stays the authoring source for every rule a block embeds.
4
6
 
5
7
  ## The set
6
8
 
7
9
  | Block | Role | Activation |
8
10
  |---|---|---|
9
- | write-core | General prose floor: reader levels, depth, sentence rules, AI patterns. | Auto, on any prose task. |
10
- | write-compact | Brief replies on request, or rebuild a reply that did not land. | Auto, or "brief mode". |
11
+ | write-better | General prose floor: reader levels, depth, sentence rules, AI patterns, reader load. | Auto, on any prose task. |
12
+ | write-compact | The whole reply stays short. | Auto, or "brief mode". |
13
+ | write-tldr | A short block at the end of a long answer: TLDR plus Found. | Auto, past 30 lines or on request. |
14
+ | write-again | Rewrite the last output, explain again, or refresh a stale doc. | Auto, on "again" or "wait what". |
15
+ | help-write | Read the conversation, name the skill that owns the deliverable. | On request, or when the type is unclear. |
11
16
  | write-docs | Documents for humans, and documents an agent reads. | Auto, on document tasks. |
12
17
  | write-pr | PR title and body from the change and the evidence. | Auto, on PR text. |
13
18
  | write-commit | Commit message from the staged diff and the history. | Auto, on commit text. |
@@ -21,6 +26,10 @@ One row for each block in this set. Change this file first when the set changes.
21
26
  | write-handoff | Handoff notes for a fresh session. | Auto, on handoff requests. |
22
27
  | write-longform | Staged long-form mission under one shared brief. | Explicit request only. |
23
28
  | write-glossary | Build or clean a glossary, one term per concept. | Auto, on glossary work. |
29
+ | write-plan | A plan before work starts: goal, approaches, steps, risks. | Auto, on plan requests. |
30
+ | write-adr | Architecture decision records in the Nygard shape. | Auto, on decision records. |
31
+ | write-prd | Product requirements: problem, goals, requirements, metrics. | Auto, on PRD requests. |
32
+ | write-ste | Enforce STE on any text, violations named by rule. | Auto, on "ste" requests. |
24
33
 
25
34
  ## Design rules
26
35
 
@@ -44,4 +53,4 @@ The upstream projects and their licenses are listed in `THIRD_PARTY_NOTICES.md`.
44
53
 
45
54
  ## Set size
46
55
 
47
- Fifteen descriptions load in every session. Watch trigger overlap before adding a sixteenth. The routing test in `docs/EVALS.md` is the regression net.
56
+ Twenty-two descriptions load in every session. The negative-trigger routing test in `docs/ROUTING-TEST.md` is the regression net. It is pending for the 22-skill set. Run it before adding a twenty-third.
package/docs/EVALS.md CHANGED
@@ -21,7 +21,7 @@ Date: 24 October 2026. Method: one eval case per skill, run twice in fresh agent
21
21
 
22
22
  ## Reading
23
23
 
24
- - Every block now carries eval cases in its `evals/` folder. Cases for write-core and write-longform are written but not run.
24
+ - Every block now carries eval cases in its `evals/` folder. Cases for write-better and write-longform are written but not run.
25
25
  - The PR, Jira, and commit blocks change behavior in the intended direction. The commit value sits in the process rules, proven by the live-repo test: read the history first, let the repo convention win.
26
26
  - The compact block earns a partial pass. The docs and comments blocks show thin separation on one case each. The base model is already close, and the skill adds placement and ordering discipline.
27
27
  - Trigger routing is clean: 16 of 16 in two samples. This test shows the descriptions as written to a host. A real host injects them differently, so in-host firing stays unverified.
@@ -30,3 +30,26 @@ Date: 24 October 2026. Method: one eval case per skill, run twice in fresh agent
30
30
  ## Run more
31
31
 
32
32
  The cases live in `skills/<name>/evals/evals.json`. Run a case with two fresh agents: one gets the bare prompt, one gets the prompt with the skill text. Grade both outputs against the assertions.
33
+
34
+ ## 29 October 2026, 0.4.0
35
+
36
+ - The negative-trigger routing test for the 22-skill set is pending. The provider refused the subagent dispatch three times. The fixture, with expected answers, is saved in docs/ROUTING-TEST.md. Run it before adding a twenty-third skill and after any description change.
37
+ - Eval cases are written for all seven new skills. None has run yet.
38
+ - Name check on skills.sh: write-tldr, write-again, help-write, write-adr, write-prd, write-ste, and write-better are free. write-plan exists under another owner and is kept under the owner-namespacing policy.
39
+
40
+ ## 30 to 31 October 2026, the full experiment
41
+
42
+ All 22 skills ran with and without their rules on the subagent channel, prompt only, no tools. 13 clear passes, 9 thin passes, 0 failures. OpenCode on beam-free confirmed in-host firing and the local-rules step, but its control arms auto-fired the skills, so that channel is qualitative only. Full pairs and verdicts: docs/EXPERIMENT.md. beam-free is unfit for graded runs; it duplicated answers across turns.
43
+
44
+ ## 7 November 2026, the 22-skill routing test
45
+
46
+ Method: the fixture in docs/ROUTING-TEST.md, two runs per part, four fresh subagents, prompt only. The prompts went verbatim.
47
+
48
+ | Part | Run | Verdicts | Result |
49
+ |---|---|---|---|
50
+ | A, should fire | 1 | 9 of 10 | One over-fire: task 10, "Which skill should I use to describe this endpoint to the team?" fired write-docs; expected help-write. |
51
+ | A, should fire | 2 | 9 of 10 | One over-fire: task 5, "Run the test suite and report failures", fired write-report; expected none. |
52
+ | B, should not fire | 1 | 10 of 10 | No misfires. |
53
+ | B, should not fire | 2 | 10 of 10 | No misfires. |
54
+
55
+ Total: 38 of 40 verdicts correct. The negative-trigger test is green in both runs, so the gate for a twenty-third skill is open. The two part-A misses are over-fires, not missed triggers: no skill failed to fire when it should. Both sit near a real boundary. Task 10 is a meta-question about skill choice; help-write owns it, and write-docs guessed. Task 5 asks for a report of failures; write-report read "report" in the prompt. No description change is planned, so no rerun is required.