cc-dev-template 0.1.8 → 0.1.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cc-dev-template",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "Structured AI-assisted development framework for Claude Code",
5
5
  "bin": {
6
6
  "cc-dev-template": "./bin/install.js"
@@ -28,7 +28,7 @@ When given insights to document:
28
28
 
29
29
  ## ADR vs CLAUDE.md
30
30
 
31
- Reject content that should be an ADR instead.
31
+ Route ADR-worthy content to adr-agent instead.
32
32
 
33
33
  | CLAUDE.md (Operational How-To) | ADR (Architectural Decision) |
34
34
  |-------------------------------|------------------------------|
@@ -130,7 +130,7 @@ The prompting skill ensures your prompts follow established patterns: explaining
130
130
  - **Missing Dependency** - Need something from an upstream task that wasn't done
131
131
  - **Blocked** - External factor prevents completion (missing API key, service down, etc.)
132
132
 
133
- **Do not try to work around issues.** The plan should have removed all ambiguity. If something is unexpected, escalate.
133
+ **Stop and escalate when unexpected issues arise.** The plan should have removed all ambiguity. If something is unexpected, escalate.
134
134
 
135
135
  When escalating, report:
136
136
  - What you encountered
@@ -145,4 +145,4 @@ When escalating, report:
145
145
 
146
146
  **Outcome is context** - Write outcomes for the next person (or agent). What did you do? Where are things? What decisions did you make?
147
147
 
148
- **No improvisation** - If the task or plan is unclear, escalate. Don't guess.
148
+ **Escalate when unclear** - If the task or plan is unclear, escalate rather than guessing.
@@ -156,7 +156,7 @@ Report:
156
156
 
157
157
  **Tests are specifications.** In fix mode, the test defines correct behavior. Don't question it—make the code conform.
158
158
 
159
- **Fix mode: code only.** Never touch test files in fix mode. If the test is wrong, escalate.
159
+ **Fix mode: code only.** Modify only non-test files in fix mode. If the test is wrong, escalate.
160
160
 
161
161
  **Test mode: fail is success.** A test that fails (because the bug exists) is exactly what we want. A passing test means the hypothesis is wrong.
162
162
 
@@ -81,6 +81,27 @@ After writing SKILL.md, ask: **"If Claude reads this right now, does it know wha
81
81
 
82
82
  If the answer is "it would understand what the skill is about" but not "it would know what to do," rewrite it.
83
83
 
84
+ ### Agent Prompts Are Different
85
+
86
+ The red flags above apply to SKILL.md files, not agent prompts. Agent prompts and skills have different characteristics:
87
+
88
+ | Aspect | Agent Prompt | SKILL.md |
89
+ |--------|--------------|----------|
90
+ | When read | Once per spawn | Repeatedly during session |
91
+ | Purpose | Provide context for focused task | Route to workflows |
92
+ | WHY/WHO/SUCCESS | Appropriate—crucial context | Red flag—wastes tokens |
93
+ | Lifespan | Single invocation | Entire user session |
94
+
95
+ Agent prompts benefit from a Purpose section with WHY/WHO/SUCCESS because:
96
+ - Agents spawn for a single focused task and need full context upfront
97
+ - The context is read once, not repeatedly
98
+ - Understanding purpose helps agents make better decisions
99
+
100
+ Skills should route to actions immediately because:
101
+ - Users interact with skills throughout a session
102
+ - Meta-descriptions consume tokens on every activation
103
+ - Instructions are more valuable than context in repeated interactions
104
+
84
105
  ## Progressive Disclosure
85
106
 
86
107
  ### The Problem Without It
@@ -129,6 +129,11 @@ function getPlanInfo(planDir, slug) {
129
129
  const taskCounts = countTasks(manifest);
130
130
  if (taskCounts) {
131
131
  planInfo.tasks = taskCounts;
132
+
133
+ // Derive completion status: if all tasks are completed, the plan is completed
134
+ if (taskCounts.total > 0 && taskCounts.completed === taskCounts.total) {
135
+ planInfo.status = 'completed';
136
+ }
132
137
  }
133
138
  }
134
139