cc-dev-template 0.1.80 → 0.1.82

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 (94) hide show
  1. package/bin/install.js +10 -1
  2. package/package.json +1 -1
  3. package/src/agents/objective-researcher.md +52 -0
  4. package/src/agents/question-generator.md +70 -0
  5. package/src/scripts/restrict-to-spec-dir.sh +23 -0
  6. package/src/skills/agent-browser/SKILL.md +7 -133
  7. package/src/skills/agent-browser/references/common-patterns.md +64 -0
  8. package/src/skills/agent-browser/references/ios-simulator.md +25 -0
  9. package/src/skills/agent-browser/references/reflect.md +9 -0
  10. package/src/skills/agent-browser/references/semantic-locators.md +11 -0
  11. package/src/skills/claude-md/SKILL.md +1 -3
  12. package/src/skills/claude-md/references/audit-reflect.md +0 -4
  13. package/src/skills/claude-md/references/audit.md +1 -3
  14. package/src/skills/claude-md/references/create-reflect.md +0 -4
  15. package/src/skills/claude-md/references/create.md +1 -3
  16. package/src/skills/claude-md/references/modify-reflect.md +0 -4
  17. package/src/skills/claude-md/references/modify.md +1 -3
  18. package/src/skills/creating-agent-skills/SKILL.md +2 -2
  19. package/src/skills/creating-agent-skills/references/create-step-1-understand.md +1 -1
  20. package/src/skills/creating-agent-skills/references/create-step-2-design.md +3 -3
  21. package/src/skills/creating-agent-skills/references/create-step-3-write.md +42 -10
  22. package/src/skills/creating-agent-skills/references/create-step-4-review.md +2 -2
  23. package/src/skills/creating-agent-skills/references/create-step-5-install.md +1 -3
  24. package/src/skills/creating-agent-skills/references/create-step-6-reflect.md +1 -3
  25. package/src/skills/creating-agent-skills/references/fix-step-1-diagnose.md +5 -4
  26. package/src/skills/creating-agent-skills/references/fix-step-2-apply.md +2 -2
  27. package/src/skills/creating-agent-skills/references/fix-step-3-validate.md +1 -3
  28. package/src/skills/creating-agent-skills/references/fix-step-4-reflect.md +1 -3
  29. package/src/skills/creating-agent-skills/templates/router-skill.md +3 -3
  30. package/src/skills/creating-sub-agents/references/create-step-1-understand.md +1 -1
  31. package/src/skills/creating-sub-agents/references/create-step-2-design.md +1 -1
  32. package/src/skills/creating-sub-agents/references/create-step-3-write.md +1 -1
  33. package/src/skills/creating-sub-agents/references/create-step-4-review.md +1 -1
  34. package/src/skills/creating-sub-agents/references/create-step-5-install.md +1 -3
  35. package/src/skills/creating-sub-agents/references/create-step-6-reflect.md +0 -4
  36. package/src/skills/creating-sub-agents/references/fix-step-3-validate.md +1 -3
  37. package/src/skills/creating-sub-agents/references/fix-step-4-reflect.md +0 -4
  38. package/src/skills/initialize-project/SKILL.md +2 -4
  39. package/src/skills/initialize-project/references/reflect.md +0 -4
  40. package/src/skills/project-setup/references/step-5-verify.md +1 -3
  41. package/src/skills/project-setup/references/step-6-reflect.md +0 -4
  42. package/src/skills/prompting/SKILL.md +1 -1
  43. package/src/skills/prompting/references/create-reflect.md +0 -4
  44. package/src/skills/prompting/references/create.md +1 -3
  45. package/src/skills/prompting/references/review-reflect.md +0 -4
  46. package/src/skills/prompting/references/review.md +1 -3
  47. package/src/skills/setup-lsp/SKILL.md +1 -1
  48. package/src/skills/setup-lsp/references/step-1-scan.md +1 -1
  49. package/src/skills/setup-lsp/references/step-2-install-configure.md +1 -3
  50. package/src/skills/setup-lsp/references/step-3-verify.md +1 -3
  51. package/src/skills/setup-lsp/references/step-4-reflect.md +0 -2
  52. package/src/skills/ship/SKILL.md +46 -0
  53. package/src/skills/ship/references/step-1-intent.md +50 -0
  54. package/src/skills/ship/references/step-2-questions.md +42 -0
  55. package/src/skills/ship/references/step-3-research.md +44 -0
  56. package/src/skills/ship/references/step-4-design.md +70 -0
  57. package/src/skills/ship/references/step-5-spec.md +86 -0
  58. package/src/skills/ship/references/step-6-tasks.md +83 -0
  59. package/src/skills/ship/references/step-7-implement.md +61 -0
  60. package/src/skills/ship/references/step-8-reflect.md +21 -0
  61. package/src/skills/execute-spec/SKILL.md +0 -48
  62. package/src/skills/execute-spec/references/phase-1-hydrate.md +0 -71
  63. package/src/skills/execute-spec/references/phase-2-build.md +0 -63
  64. package/src/skills/execute-spec/references/phase-3-validate.md +0 -72
  65. package/src/skills/execute-spec/references/phase-4-triage.md +0 -75
  66. package/src/skills/execute-spec/references/phase-5-reflect.md +0 -34
  67. package/src/skills/execute-spec/references/workflow.md +0 -82
  68. package/src/skills/research/SKILL.md +0 -14
  69. package/src/skills/research/references/step-1-check-existing.md +0 -25
  70. package/src/skills/research/references/step-2-conduct-research.md +0 -67
  71. package/src/skills/research/references/step-3-reflect.md +0 -33
  72. package/src/skills/spec-interview/SKILL.md +0 -48
  73. package/src/skills/spec-interview/references/critic-prompt.md +0 -140
  74. package/src/skills/spec-interview/references/pragmatist-prompt.md +0 -76
  75. package/src/skills/spec-interview/references/researcher-prompt.md +0 -46
  76. package/src/skills/spec-interview/references/step-1-opening.md +0 -47
  77. package/src/skills/spec-interview/references/step-2-ideation.md +0 -73
  78. package/src/skills/spec-interview/references/step-3-ui-ux.md +0 -83
  79. package/src/skills/spec-interview/references/step-4-deep-dive.md +0 -119
  80. package/src/skills/spec-interview/references/step-5-research-needs.md +0 -53
  81. package/src/skills/spec-interview/references/step-6-verification.md +0 -89
  82. package/src/skills/spec-interview/references/step-7-finalize.md +0 -62
  83. package/src/skills/spec-interview/references/step-8-reflect.md +0 -34
  84. package/src/skills/spec-review/SKILL.md +0 -92
  85. package/src/skills/spec-sanity-check/SKILL.md +0 -82
  86. package/src/skills/spec-to-tasks/SKILL.md +0 -24
  87. package/src/skills/spec-to-tasks/references/step-1-identify-spec.md +0 -39
  88. package/src/skills/spec-to-tasks/references/step-2-explore.md +0 -43
  89. package/src/skills/spec-to-tasks/references/step-3-generate.md +0 -69
  90. package/src/skills/spec-to-tasks/references/step-4-review.md +0 -95
  91. package/src/skills/spec-to-tasks/references/step-5-reflect.md +0 -22
  92. package/src/skills/spec-to-tasks/templates/task.md +0 -30
  93. package/src/skills/task-review/SKILL.md +0 -18
  94. package/src/skills/task-review/references/checklist.md +0 -155
package/bin/install.js CHANGED
@@ -280,7 +280,16 @@ console.log('\nCleanup:');
280
280
  let cleanupPerformed = false;
281
281
 
282
282
  // Remove deprecated skills
283
- const deprecatedSkills = ['youtube-to-notes'];
283
+ const deprecatedSkills = [
284
+ 'youtube-to-notes',
285
+ 'spec-interview',
286
+ 'spec-to-tasks',
287
+ 'execute-spec',
288
+ 'research',
289
+ 'spec-review',
290
+ 'spec-sanity-check',
291
+ 'task-review',
292
+ ];
284
293
  deprecatedSkills.forEach(skill => {
285
294
  const skillPath = path.join(CLAUDE_DIR, 'skills', skill);
286
295
  if (fs.existsSync(skillPath)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cc-dev-template",
3
- "version": "0.1.80",
3
+ "version": "0.1.82",
4
4
  "description": "Structured AI-assisted development framework for Claude Code",
5
5
  "bin": {
6
6
  "cc-dev-template": "./bin/install.js"
@@ -0,0 +1,52 @@
1
+ ---
2
+ name: objective-researcher
3
+ description: Answers codebase questions objectively without knowing the feature being built. Produces factual research documentation.
4
+ tools: Read, Grep, Glob, Bash, Write
5
+ permissionMode: bypassPermissions
6
+ maxTurns: 30
7
+ model: sonnet
8
+ ---
9
+
10
+ You are an objective codebase researcher. You receive questions about a codebase and answer them by exploring the code.
11
+
12
+ ## Critical Rule
13
+
14
+ You do NOT know what feature is being built. You only have questions. Answer them factually.
15
+
16
+ - Report what EXISTS, not what SHOULD exist
17
+ - Do not suggest implementations or improvements
18
+ - Do not speculate about what someone might want to build
19
+ - If you find multiple patterns for the same thing, report ALL of them with locations
20
+ - If a question cannot be answered from the codebase, say so explicitly
21
+
22
+ ## Process
23
+
24
+ 1. Read the questions file at the path provided in your prompt
25
+ 2. For each question, explore the codebase using Grep, Glob, and Read
26
+ 3. Write findings to the output path provided
27
+
28
+ ## Output Format
29
+
30
+ For each question in the questions file:
31
+
32
+ ```markdown
33
+ ## Q: {Original question}
34
+
35
+ **Finding**: {Your answer with specific details}
36
+
37
+ **Evidence**:
38
+ - `path/to/file.ts:42` — {what this file shows}
39
+ - `path/to/other.ts:108` — {what this code does}
40
+
41
+ **Confidence**: high | medium | low
42
+
43
+ **Notes**: {Any ambiguities, multiple patterns found, or related observations}
44
+ ```
45
+
46
+ After answering all questions, add a final section:
47
+
48
+ ```markdown
49
+ ## Additional Observations
50
+
51
+ {Anything noteworthy you discovered while researching that wasn't directly asked about but seems relevant to understanding this area of the codebase}
52
+ ```
@@ -0,0 +1,70 @@
1
+ ---
2
+ name: question-generator
3
+ description: Generates research questions from a feature intent document. Cannot explore the codebase — produces questions only.
4
+ tools: Read, Write
5
+ permissionMode: bypassPermissions
6
+ maxTurns: 5
7
+ model: sonnet
8
+ hooks:
9
+ PreToolUse:
10
+ - matcher: "Read"
11
+ hooks:
12
+ - type: command
13
+ command: "$HOME/.claude/scripts/restrict-to-spec-dir.sh"
14
+ - matcher: "Write"
15
+ hooks:
16
+ - type: command
17
+ command: "$HOME/.claude/scripts/restrict-to-spec-dir.sh"
18
+ ---
19
+
20
+ You are a question generator. You read a feature intent document and produce research questions that a senior engineer would need answered about the codebase before implementing this feature.
21
+
22
+ ## Your Role
23
+
24
+ You generate questions. You do NOT:
25
+
26
+ - Research or explore the codebase (you have no search tools)
27
+ - Suggest implementations or architectural decisions
28
+ - Write code or pseudocode
29
+ - Speculate about how the codebase might work
30
+
31
+ ## Process
32
+
33
+ 1. Read the intent document at the path provided in your prompt
34
+ 2. Think about what a senior engineer would need to know about the codebase before they could implement this
35
+ 3. Write organized, specific questions to the output path provided
36
+
37
+ ## Output Format
38
+
39
+ Write a markdown file with questions organized by category:
40
+
41
+ ```markdown
42
+ # Research Questions
43
+
44
+ ## Existing Patterns
45
+ - How does the codebase currently handle {relevant functionality}?
46
+ - What patterns are used for {similar features}?
47
+ - Are there existing utilities or helpers for {relevant operations}?
48
+
49
+ ## Data Model
50
+ - What data structures exist for {relevant entities}?
51
+ - How is {relevant data} currently stored and accessed?
52
+
53
+ ## Integration Points
54
+ - What services or modules would this feature interact with?
55
+ - Are there existing APIs or interfaces it should conform to?
56
+
57
+ ## Testing Infrastructure
58
+ - What testing patterns does the project use for {relevant scenarios}?
59
+ - What test runners and frameworks are configured?
60
+
61
+ ## Dependencies
62
+ - Are there existing libraries in the project for {relevant functionality}?
63
+ - What versions of key frameworks are in use?
64
+ ```
65
+
66
+ Each question must be:
67
+
68
+ - **Specific**: "How does the auth module handle session tokens?" not "How does auth work?"
69
+ - **Codebase-answerable**: Answerable by reading project files, not by asking the user
70
+ - **Relevant**: Directly related to implementing the feature described in the intent
@@ -0,0 +1,23 @@
1
+ #!/bin/bash
2
+ # Restricts Read/Write operations to the docs/specs/ directory.
3
+ # Used by question-generator sub-agent to prevent codebase exploration.
4
+ # Receives JSON on stdin with tool_name and tool_input.
5
+
6
+ input=$(cat)
7
+ file_path=$(echo "$input" | jq -r '.tool_input.file_path // empty')
8
+
9
+ # If no file_path in the tool input, allow the operation
10
+ if [ -z "$file_path" ]; then
11
+ exit 0
12
+ fi
13
+
14
+ # Allow access to docs/specs/ directory
15
+ if [[ "$file_path" == *"/docs/specs/"* ]]; then
16
+ exit 0
17
+ fi
18
+
19
+ # Deny everything else
20
+ cat << 'EOF'
21
+ {"permissionDecision":"deny","message":"Access restricted to docs/specs/ directory only."}
22
+ EOF
23
+ exit 0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: agent-browser
3
- description: Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
3
+ description: Browser automation CLI for AI agents. Use when interacting with websites navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, or testing web apps.
4
4
  ---
5
5
 
6
6
  # Browser Automation with agent-browser
@@ -63,97 +63,6 @@ agent-browser screenshot --full # Full page screenshot
63
63
  agent-browser pdf output.pdf # Save as PDF
64
64
  ```
65
65
 
66
- ## Common Patterns
67
-
68
- ### Form Submission
69
-
70
- ```bash
71
- agent-browser open https://example.com/signup
72
- agent-browser snapshot -i
73
- agent-browser fill @e1 "Jane Doe"
74
- agent-browser fill @e2 "jane@example.com"
75
- agent-browser select @e3 "California"
76
- agent-browser check @e4
77
- agent-browser click @e5
78
- agent-browser wait --load networkidle
79
- ```
80
-
81
- ### Authentication with State Persistence
82
-
83
- ```bash
84
- # Login once and save state
85
- agent-browser open https://app.example.com/login
86
- agent-browser snapshot -i
87
- agent-browser fill @e1 "$USERNAME"
88
- agent-browser fill @e2 "$PASSWORD"
89
- agent-browser click @e3
90
- agent-browser wait --url "**/dashboard"
91
- agent-browser state save auth.json
92
-
93
- # Reuse in future sessions
94
- agent-browser state load auth.json
95
- agent-browser open https://app.example.com/dashboard
96
- ```
97
-
98
- ### Data Extraction
99
-
100
- ```bash
101
- agent-browser open https://example.com/products
102
- agent-browser snapshot -i
103
- agent-browser get text @e5 # Get specific element text
104
- agent-browser get text body > page.txt # Get all page text
105
-
106
- # JSON output for parsing
107
- agent-browser snapshot -i --json
108
- agent-browser get text @e1 --json
109
- ```
110
-
111
- ### Parallel Sessions
112
-
113
- ```bash
114
- agent-browser --session site1 open https://site-a.com
115
- agent-browser --session site2 open https://site-b.com
116
-
117
- agent-browser --session site1 snapshot -i
118
- agent-browser --session site2 snapshot -i
119
-
120
- agent-browser session list
121
- ```
122
-
123
- ### Visual Browser (Debugging)
124
-
125
- ```bash
126
- agent-browser --headed open https://example.com
127
- agent-browser highlight @e1 # Highlight element
128
- agent-browser record start demo.webm # Record session
129
- ```
130
-
131
- ### iOS Simulator (Mobile Safari)
132
-
133
- ```bash
134
- # List available iOS simulators
135
- agent-browser device list
136
-
137
- # Launch Safari on a specific device
138
- agent-browser -p ios --device "iPhone 16 Pro" open https://example.com
139
-
140
- # Same workflow as desktop - snapshot, interact, re-snapshot
141
- agent-browser -p ios snapshot -i
142
- agent-browser -p ios tap @e1 # Tap (alias for click)
143
- agent-browser -p ios fill @e2 "text"
144
- agent-browser -p ios swipe up # Mobile-specific gesture
145
-
146
- # Take screenshot
147
- agent-browser -p ios screenshot mobile.png
148
-
149
- # Close session (shuts down simulator)
150
- agent-browser -p ios close
151
- ```
152
-
153
- **Requirements:** macOS with Xcode, Appium (`npm install -g appium && appium driver install xcuitest`)
154
-
155
- **Real devices:** Works with physical iOS devices if pre-configured. Use `--device "<UDID>"` where UDID is from `xcrun xctrace list devices`.
156
-
157
66
  ## Ref Lifecycle (Important)
158
67
 
159
68
  Refs (`@e1`, `@e2`, etc.) are invalidated when the page changes. Always re-snapshot after:
@@ -168,49 +77,14 @@ agent-browser snapshot -i # MUST re-snapshot
168
77
  agent-browser click @e1 # Use new refs
169
78
  ```
170
79
 
171
- ## Semantic Locators (Alternative to Refs)
172
-
173
- When refs are unavailable or unreliable, use semantic locators:
174
-
175
- ```bash
176
- agent-browser find text "Sign In" click
177
- agent-browser find label "Email" fill "user@test.com"
178
- agent-browser find role button click --name "Submit"
179
- agent-browser find placeholder "Search" type "query"
180
- agent-browser find testid "submit-btn" click
181
- ```
182
-
183
- ## Deep-Dive Documentation
184
-
185
- | Reference | When to Use |
186
- |-----------|-------------|
187
- | [references/commands.md](references/commands.md) | Full command reference with all options |
188
- | [references/snapshot-refs.md](references/snapshot-refs.md) | Ref lifecycle, invalidation rules, troubleshooting |
189
- | [references/session-management.md](references/session-management.md) | Parallel sessions, state persistence, concurrent scraping |
190
- | [references/authentication.md](references/authentication.md) | Login flows, OAuth, 2FA handling, state reuse |
191
- | [references/video-recording.md](references/video-recording.md) | Recording workflows for debugging and documentation |
192
- | [references/proxy-support.md](references/proxy-support.md) | Proxy configuration, geo-testing, rotating proxies |
193
-
194
- ## Ready-to-Use Templates
195
-
196
- | Template | Description |
197
- |----------|-------------|
198
- | [templates/form-automation.sh](templates/form-automation.sh) | Form filling with validation |
199
- | [templates/authenticated-session.sh](templates/authenticated-session.sh) | Login once, reuse state |
200
- | [templates/capture-workflow.sh](templates/capture-workflow.sh) | Content extraction with screenshots |
201
-
202
- ```bash
203
- ./templates/form-automation.sh https://example.com/form
204
- ./templates/authenticated-session.sh https://app.example.com/login
205
- ./templates/capture-workflow.sh https://example.com ./output
206
- ```
80
+ ## Reference Files
207
81
 
208
- ## Reflect After Use
82
+ For common patterns (forms, auth, data extraction, parallel sessions, debugging), read `references/common-patterns.md`.
209
83
 
210
- After completing the browser automation task, reflect on your experience.
84
+ For semantic locators as an alternative to refs, read `references/semantic-locators.md`.
211
85
 
212
- Were any commands, flags, patterns, or workarounds in this reference incorrect or missing? Did you discover a command syntax, a workaround for a specific site, or a pattern that should be documented here?
86
+ For iOS Simulator and mobile Safari automation, read `references/ios-simulator.md`.
213
87
 
214
- If yes, update the relevant section of this skill file. Only add tribal knowledge — commands and patterns a fresh Claude instance would not know about agent-browser specifically. Keep within size targets.
88
+ ## Reflect
215
89
 
216
- Tell the user what you updated, or confirm no updates were needed.
90
+ Use the Read tool on `references/reflect.md` to reflect on the browser automation and note any skill issues.
@@ -0,0 +1,64 @@
1
+ # Common Patterns
2
+
3
+ ## Form Submission
4
+
5
+ ```bash
6
+ agent-browser open https://example.com/signup
7
+ agent-browser snapshot -i
8
+ agent-browser fill @e1 "Jane Doe"
9
+ agent-browser fill @e2 "jane@example.com"
10
+ agent-browser select @e3 "California"
11
+ agent-browser check @e4
12
+ agent-browser click @e5
13
+ agent-browser wait --load networkidle
14
+ ```
15
+
16
+ ## Authentication with State Persistence
17
+
18
+ ```bash
19
+ # Login once and save state
20
+ agent-browser open https://app.example.com/login
21
+ agent-browser snapshot -i
22
+ agent-browser fill @e1 "$USERNAME"
23
+ agent-browser fill @e2 "$PASSWORD"
24
+ agent-browser click @e3
25
+ agent-browser wait --url "**/dashboard"
26
+ agent-browser state save auth.json
27
+
28
+ # Reuse in future sessions
29
+ agent-browser state load auth.json
30
+ agent-browser open https://app.example.com/dashboard
31
+ ```
32
+
33
+ ## Data Extraction
34
+
35
+ ```bash
36
+ agent-browser open https://example.com/products
37
+ agent-browser snapshot -i
38
+ agent-browser get text @e5 # Get specific element text
39
+ agent-browser get text body > page.txt # Get all page text
40
+
41
+ # JSON output for parsing
42
+ agent-browser snapshot -i --json
43
+ agent-browser get text @e1 --json
44
+ ```
45
+
46
+ ## Parallel Sessions
47
+
48
+ ```bash
49
+ agent-browser --session site1 open https://site-a.com
50
+ agent-browser --session site2 open https://site-b.com
51
+
52
+ agent-browser --session site1 snapshot -i
53
+ agent-browser --session site2 snapshot -i
54
+
55
+ agent-browser session list
56
+ ```
57
+
58
+ ## Visual Browser (Debugging)
59
+
60
+ ```bash
61
+ agent-browser --headed open https://example.com
62
+ agent-browser highlight @e1 # Highlight element
63
+ agent-browser record start demo.webm # Record session
64
+ ```
@@ -0,0 +1,25 @@
1
+ # iOS Simulator (Mobile Safari)
2
+
3
+ ```bash
4
+ # List available iOS simulators
5
+ agent-browser device list
6
+
7
+ # Launch Safari on a specific device
8
+ agent-browser -p ios --device "iPhone 16 Pro" open https://example.com
9
+
10
+ # Same workflow as desktop - snapshot, interact, re-snapshot
11
+ agent-browser -p ios snapshot -i
12
+ agent-browser -p ios tap @e1 # Tap (alias for click)
13
+ agent-browser -p ios fill @e2 "text"
14
+ agent-browser -p ios swipe up # Mobile-specific gesture
15
+
16
+ # Take screenshot
17
+ agent-browser -p ios screenshot mobile.png
18
+
19
+ # Close session (shuts down simulator)
20
+ agent-browser -p ios close
21
+ ```
22
+
23
+ **Requirements:** macOS with Xcode, Appium (`npm install -g appium && appium driver install xcuitest`)
24
+
25
+ **Real devices:** Works with physical iOS devices if pre-configured. Use `--device "<UDID>"` where UDID is from `xcrun xctrace list devices`.
@@ -0,0 +1,9 @@
1
+ # Reflect After Use
2
+
3
+ After completing the browser automation task, reflect on your experience.
4
+
5
+ Were any commands, flags, patterns, or workarounds in this reference incorrect or missing? Did you discover a command syntax, a workaround for a specific site, or a pattern that should be documented here?
6
+
7
+ If yes, update the relevant section of this skill file. Only add tribal knowledge -- commands and patterns a fresh Claude instance would not know about agent-browser specifically. Keep within size targets.
8
+
9
+ Tell the user what you updated, or confirm no updates were needed.
@@ -0,0 +1,11 @@
1
+ # Semantic Locators (Alternative to Refs)
2
+
3
+ When refs are unavailable or unreliable, use semantic locators:
4
+
5
+ ```bash
6
+ agent-browser find text "Sign In" click
7
+ agent-browser find label "Email" fill "user@test.com"
8
+ agent-browser find role button click --name "Submit"
9
+ agent-browser find placeholder "Search" type "query"
10
+ agent-browser find testid "submit-btn" click
11
+ ```
@@ -1,12 +1,10 @@
1
1
  ---
2
2
  name: claude-md
3
- description: Manages CLAUDE.md files in a project. Activates when the user says "audit CLAUDE.md files", "update CLAUDE.md", "add to CLAUDE.md", or invokes /claude-md. With no arguments, audits all CLAUDE.md files. With arguments, intelligently updates the appropriate file.
3
+ description: Manage CLAUDE.md files in a project. With no arguments, audits all CLAUDE.md files for accuracy and completeness. With arguments, intelligently updates the appropriate file.
4
4
  ---
5
5
 
6
6
  # CLAUDE.md Management
7
7
 
8
- Base directory for this skill: ~/.claude/skills/claude-md
9
-
10
8
  ## What To Do
11
9
 
12
10
  Check if arguments were provided:
@@ -1,9 +1,5 @@
1
1
  # Audit Reflection
2
2
 
3
- **IMPORTANT: This step is mandatory. The audit workflow is not complete until this step is finished. Do not skip this.**
4
-
5
- Reflect on your experience auditing the project's CLAUDE.md files. The purpose is to improve the claude-md skill itself based on what you just learned.
6
-
7
3
  ## Assess
8
4
 
9
5
  Answer these questions honestly:
@@ -62,6 +62,4 @@ Remaining concerns:
62
62
  - [any issues needing human decision]
63
63
  ```
64
64
 
65
- **IMPORTANT: You are not done. You MUST read and complete the next step. The workflow is incomplete without it.**
66
-
67
- Read references/audit-reflect.md now.
65
+ Use the Read tool on `references/audit-reflect.md` to reflect on the audit and note any skill issues.
@@ -1,9 +1,5 @@
1
1
  # Create Reflection
2
2
 
3
- **IMPORTANT: This step is mandatory. The create workflow is not complete until this step is finished. Do not skip this.**
4
-
5
- Reflect on your experience creating a new CLAUDE.md file. The purpose is to improve the claude-md skill itself based on what you just learned.
6
-
7
3
  ## Assess
8
4
 
9
5
  Answer these questions honestly:
@@ -71,6 +71,4 @@ Verify:
71
71
 
72
72
  If all yes, proceed to the reflection step.
73
73
 
74
- **IMPORTANT: You are not done. You MUST read and complete the next step. The workflow is incomplete without it.**
75
-
76
- Read references/create-reflect.md now.
74
+ Use the Read tool on `references/create-reflect.md` to reflect on the creation process and note any skill issues.
@@ -1,9 +1,5 @@
1
1
  # Modify Reflection
2
2
 
3
- **IMPORTANT: This step is mandatory. The modify workflow is not complete until this step is finished. Do not skip this.**
4
-
5
- Reflect on your experience modifying the project's CLAUDE.md files. The purpose is to improve the claude-md skill itself based on what you just learned.
6
-
7
3
  ## Assess
8
4
 
9
5
  Answer these questions honestly:
@@ -51,6 +51,4 @@ If the content would make the file exceed ~100 lines, consider:
51
51
 
52
52
  Tell the user what was added and where. If creating a new CLAUDE.md file, explain why that location was chosen.
53
53
 
54
- **IMPORTANT: You are not done. You MUST read and complete the next step. The workflow is incomplete without it.**
55
-
56
- Read references/modify-reflect.md now.
54
+ Use the Read tool on `references/modify-reflect.md` to reflect on the modification and note any skill issues.
@@ -11,8 +11,8 @@ Ask the user what they need.
11
11
 
12
12
  | Intent | Action |
13
13
  |--------|--------|
14
- | Create a new skill | Read `references/create-step-1-understand.md` |
15
- | Fix, improve, audit, or modify an existing skill | Read `references/fix-step-1-diagnose.md` |
14
+ | Create a new skill | Use the Read tool on `references/create-step-1-understand.md` to start the creation workflow |
15
+ | Fix, improve, audit, or modify an existing skill | Use the Read tool on `references/fix-step-1-diagnose.md` to diagnose the issue |
16
16
 
17
17
  If the user says "audit my skills", that is the fix path.
18
18
  If they mention a specific skill that needs changes, that is also the fix path.
@@ -48,4 +48,4 @@ Move on when all of these are true:
48
48
  - You understand WHY the approaches work, not just WHAT they are
49
49
  - The user confirms you understand their needs
50
50
 
51
- Read `references/create-step-2-design.md`.
51
+ Use the Read tool on `references/create-step-2-design.md` to design the skill's structure.
@@ -164,7 +164,7 @@ Every procedural skill must end with a dedicated reflection step file. This is a
164
164
 
165
165
  The reflection step is where the agent looks back on its experience using the skill and, if the instructions were wrong, incomplete, or suboptimal, updates the skill files. This creates a self-learning loop — skills improve through use.
166
166
 
167
- The chain link to the reflection step must use mandatory language. The agent must understand that the workflow is incomplete without it. Example: "**IMPORTANT: You are not done. You MUST read and complete the next step. The workflow is incomplete without it.**"
167
+ The chain link to the reflection step must use the redirect pattern frame reading the reflection step as how the agent presents results to the user. Example: "Use the Read tool on `references/step-N-reflect.md` to review your work and report results to the user."
168
168
 
169
169
  For informational skills, append a reflection section to the end of SKILL.md (since there is no step chain).
170
170
 
@@ -201,5 +201,5 @@ Ask: "Does this design look right?"
201
201
 
202
202
  | Context | Action |
203
203
  |---------|--------|
204
- | Creating a new skill | Read `references/create-step-3-write.md` |
205
- | Fixing an existing skill (came from fix-step-1-diagnose) | Read `references/fix-step-2-apply.md` to apply the structural changes |
204
+ | Creating a new skill | Use the Read tool on `references/create-step-3-write.md` to write the skill files |
205
+ | Fixing an existing skill (came from fix-step-1-diagnose) | Use the Read tool on `references/fix-step-2-apply.md` to apply the structural changes |
@@ -113,7 +113,7 @@ Each step file covers ONE phase of the workflow. Structure each file:
113
113
 
114
114
  1. A clear header naming the step
115
115
  2. Immediate actionable instructions — what to do NOW
116
- 3. A chain link at the bottom: "Read `references/[next-step].md`" with an optional condition
116
+ 3. A chain link: "Use the Read tool on `references/[next-step].md` to [what the next step accomplishes]"
117
117
 
118
118
  **Critical rules:**
119
119
  - No table of contents across steps
@@ -144,8 +144,8 @@ description: [third person, trigger phrases, WHEN not HOW]
144
144
 
145
145
  | Choice | Action |
146
146
  |--------|--------|
147
- | Option A | Read `references/step-1-a.md` |
148
- | Option B | Read `references/step-1-b.md` |
147
+ | Option A | Use the Read tool on `references/step-1-a.md` to [what it accomplishes] |
148
+ | Option B | Use the Read tool on `references/step-1-b.md` to [what it accomplishes] |
149
149
  ```
150
150
 
151
151
  Keep it minimal. Only include context that is needed at EVERY activation.
@@ -165,19 +165,51 @@ Every procedural skill must have a dedicated reflection step as the final file i
165
165
 
166
166
  **The reflection step file** should contain:
167
167
 
168
- 1. **Mandatory language at the top**: Start with "**IMPORTANT: This step is mandatory. The [workflow name] workflow is not complete until this step is finished. Do not skip this.**"
169
- 2. **Assessment**: Domain-specific questions "Were any instructions wrong, incomplete, or misleading? Did you have to figure something out that the skill should have told you? Did any commands, paths, or patterns fail and require correction?"
170
- 3. **Action**: "If yes, identify the specific file where the issue lives, read it, and apply the fix. Apply the tribal knowledge test: only add what a fresh Claude instance would not already know."
171
- 4. **Report**: "Tell the user what you changed and why, or confirm that no updates were needed."
168
+ 1. **Assessment**: Domain-specific questions "Were any instructions wrong, incomplete, or misleading? Did you have to figure something out that the skill should have told you? Did any commands, paths, or patterns fail and require correction?"
169
+ 2. **Action**: "If yes, identify the specific file where the issue lives, read it, and apply the fix. Apply the tribal knowledge test: only add what a fresh Claude instance would not already know."
170
+ 3. **Report**: "Tell the user what you changed and why, or confirm that no updates were needed."
172
171
 
173
172
  Tailor the assessment questions to the skill's domain — what "went wrong" means for a prompting skill is different from what it means for a browser automation skill.
174
173
 
175
- **The chain link to the reflection step** (in the previous step file) must use mandatory language. Do not use a soft chain link. Example:
174
+ ### Chain Links Between Steps
176
175
 
176
+ Chain links connect one step to the next. The key challenge: after a heavy generation step, the model's completion impulse is strong — it wants to present results and stop. Chain links must redirect that impulse rather than fight it.
177
+
178
+ **The redirect pattern:**
179
+
180
+ ```
181
+ Use the Read tool on `references/step-N-[name].md` to [what the next step accomplishes for the user].
182
+ ```
183
+
184
+ This works because it frames reading the next step as HOW the model accomplishes what it already wants to do (present results, finish the task).
185
+
186
+ **Why the old "IMPORTANT: You are not done" pattern fails:** Negative framing ("you are NOT done") fights the completion impulse head-on. After heavy generation, the model has strong momentum toward completion and ignores imperative warnings. The redirect pattern harnesses that momentum instead.
187
+
188
+ **Pre-work priming:** At the TOP of generation-heavy steps (before the work begins), add a framing line:
189
+
190
+ ```
191
+ These are drafts — review and present final results in the next step.
192
+ ```
193
+
194
+ This primes the model to expect a follow-up step, reducing the completion impulse before it builds.
195
+
196
+ **Integration rules:**
197
+ - Place chain links INSIDE the action section, not as a separate afterthought section
198
+ - For the final work step before reflection/presentation: frame the next step as where results get presented to the user
199
+ - Keep chain links to one line — no multi-line bold warnings
200
+
201
+ **Before/after example:**
202
+
203
+ Before (old pattern — fails after heavy generation):
177
204
  ```
178
205
  **IMPORTANT: You are not done. You MUST read and complete the next step. The workflow is incomplete without it.**
179
206
 
180
- Read `references/step-N-reflect.md` now.
207
+ Read `references/step-4-reflect.md` now.
208
+ ```
209
+
210
+ After (redirect pattern — works with the completion impulse):
211
+ ```
212
+ Use the Read tool on `references/step-4-reflect.md` to review your work and report results to the user.
181
213
  ```
182
214
 
183
215
  For informational skills (no step chain), append a reflection section to the end of SKILL.md instead.
@@ -208,4 +240,4 @@ With these principles applied, write all the skill files now:
208
240
  2. For procedural: each step file in `references/`
209
241
  3. Any `scripts/` or `templates/` files if the design calls for them
210
242
 
211
- Read `references/create-step-4-review.md` when all files are written.
243
+ Use the Read tool on `references/create-step-4-review.md` to review all files before proceeding.