claude-code-workflow 7.2.13 → 7.2.15
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/.claude/commands/workflow/analyze-with-file.md +61 -40
- package/.claude/skills/workflow-lite-plan/SKILL.md +3 -7
- package/.codex/skills/analyze-with-file/SKILL.md +1181 -1182
- package/.codex/skills/brainstorm/SKILL.md +723 -725
- package/.codex/skills/brainstorm-with-file/SKILL.md +10 -5
- package/.codex/skills/clean/SKILL.md +33 -26
- package/.codex/skills/collaborative-plan-with-file/SKILL.md +830 -831
- package/.codex/skills/csv-wave-pipeline/SKILL.md +906 -906
- package/.codex/skills/issue-discover/SKILL.md +57 -50
- package/.codex/skills/issue-discover/phases/01-issue-new.md +18 -11
- package/.codex/skills/issue-discover/phases/02-discover.md +31 -26
- package/.codex/skills/issue-discover/phases/03-discover-by-prompt.md +13 -11
- package/.codex/skills/issue-discover/phases/04-quick-execute.md +32 -27
- package/.codex/skills/parallel-dev-cycle/SKILL.md +402 -402
- package/.codex/skills/project-documentation-workflow/SKILL.md +13 -3
- package/.codex/skills/roadmap-with-file/SKILL.md +901 -897
- package/.codex/skills/session-sync/SKILL.md +222 -212
- package/.codex/skills/spec-add/SKILL.md +620 -613
- package/.codex/skills/spec-generator/SKILL.md +2 -2
- package/.codex/skills/spec-generator/phases/01-5-requirement-clarification.md +10 -10
- package/.codex/skills/spec-generator/phases/01-discovery.md +11 -18
- package/.codex/skills/spec-generator/phases/02-product-brief.md +5 -5
- package/.codex/skills/spec-generator/phases/03-requirements.md +7 -7
- package/.codex/skills/spec-generator/phases/04-architecture.md +4 -4
- package/.codex/skills/spec-generator/phases/05-epics-stories.md +5 -6
- package/.codex/skills/spec-generator/phases/06-readiness-check.md +10 -17
- package/.codex/skills/spec-generator/phases/07-issue-export.md +326 -329
- package/.codex/skills/spec-setup/SKILL.md +669 -657
- package/.codex/skills/team-arch-opt/SKILL.md +50 -50
- package/.codex/skills/team-arch-opt/agents/completion-handler.md +3 -3
- package/.codex/skills/team-brainstorm/SKILL.md +724 -725
- package/.codex/skills/team-coordinate/SKILL.md +51 -51
- package/.codex/skills/team-coordinate/agents/completion-handler.md +3 -3
- package/.codex/skills/team-coordinate/agents/plan-reviewer.md +4 -4
- package/.codex/skills/team-designer/SKILL.md +691 -691
- package/.codex/skills/team-designer/agents/requirement-clarifier.md +11 -12
- package/.codex/skills/team-executor/SKILL.md +45 -45
- package/.codex/skills/team-frontend/SKILL.md +45 -45
- package/.codex/skills/team-frontend/agents/completion-handler.md +3 -3
- package/.codex/skills/team-frontend/agents/qa-gate-reviewer.md +4 -4
- package/.codex/skills/team-frontend-debug/SKILL.md +50 -50
- package/.codex/skills/team-frontend-debug/agents/completion-handler.md +3 -3
- package/.codex/skills/team-frontend-debug/agents/conditional-skip-gate.md +4 -4
- package/.codex/skills/team-issue/SKILL.md +751 -740
- package/.codex/skills/team-iterdev/SKILL.md +825 -826
- package/.codex/skills/team-lifecycle-v4/SKILL.md +775 -775
- package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +165 -165
- package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +163 -163
- package/.codex/skills/team-perf-opt/SKILL.md +50 -50
- package/.codex/skills/team-perf-opt/agents/completion-handler.md +3 -3
- package/.codex/skills/team-planex-v2/SKILL.md +652 -637
- package/.codex/skills/team-quality-assurance/SKILL.md +51 -52
- package/.codex/skills/team-review/SKILL.md +40 -40
- package/.codex/skills/team-roadmap-dev/SKILL.md +51 -51
- package/.codex/skills/team-roadmap-dev/agents/roadmap-discusser.md +8 -8
- package/.codex/skills/team-tech-debt/SKILL.md +50 -50
- package/.codex/skills/team-tech-debt/agents/plan-approver.md +5 -5
- package/.codex/skills/team-testing/SKILL.md +51 -52
- package/.codex/skills/team-uidesign/SKILL.md +40 -40
- package/.codex/skills/team-uidesign/agents/completion-handler.md +177 -177
- package/.codex/skills/team-ultra-analyze/SKILL.md +786 -787
- package/.codex/skills/team-ultra-analyze/agents/discussion-feedback.md +8 -8
- package/.codex/skills/team-ux-improve/SKILL.md +51 -52
- package/.codex/skills/team-ux-improve/agents/ux-designer.md +2 -2
- package/.codex/skills/team-ux-improve/agents/ux-explorer.md +1 -1
- package/.codex/skills/unified-execute-with-file/SKILL.md +797 -796
- package/.codex/skills/workflow-execute/SKILL.md +1117 -1118
- package/.codex/skills/workflow-lite-planex/SKILL.md +1144 -1141
- package/.codex/skills/workflow-plan/SKILL.md +631 -636
- package/.codex/skills/workflow-tdd-plan/SKILL.md +753 -759
- package/.codex/skills/workflow-test-fix-cycle/SKILL.md +402 -392
- package/README.md +25 -0
- package/ccw/dist/commands/install.d.ts.map +1 -1
- package/ccw/dist/commands/install.js +12 -0
- package/ccw/dist/commands/install.js.map +1 -1
- package/package.json +1 -1
|
@@ -72,6 +72,12 @@ All `AskUserQuestion` calls MUST comply:
|
|
|
72
72
|
|
|
73
73
|
**Principles**: Immediacy (record as-it-happens), Completeness (context+options+chosen+reason+rejected), Traceability (later phases trace back), Depth (capture reasoning, not just outcomes)
|
|
74
74
|
|
|
75
|
+
**Technical Solution Triggers** — record using Technical Solution Record Format when ANY of:
|
|
76
|
+
- An implementation approach is described with specific files/patterns/code changes
|
|
77
|
+
- Two or more alternatives are compared with trade-offs
|
|
78
|
+
- User confirms, modifies, or rejects a proposed approach
|
|
79
|
+
- A concrete code change strategy emerges (what to modify, how, why)
|
|
80
|
+
|
|
75
81
|
### Output Artifacts
|
|
76
82
|
|
|
77
83
|
| Phase | Artifact | Description |
|
|
@@ -325,36 +331,7 @@ CONSTRAINTS: Focus on ${dimensions.join(', ')} | Do NOT re-discover files — us
|
|
|
325
331
|
- Present to user at beginning of Phase 3: "初始探索完成后,以下意图的覆盖情况:[list]。接下来的讨论将重点关注未覆盖的部分。"
|
|
326
332
|
- Purpose: Early course correction — catch drift before spending multiple interactive rounds
|
|
327
333
|
|
|
328
|
-
|
|
329
|
-
- `session_id`, `timestamp`, `topic`, `dimensions[]`
|
|
330
|
-
- `relevant_files[]`: {path, annotation, dimensions[]}
|
|
331
|
-
- `patterns[]`, `module_map`: {}
|
|
332
|
-
- `questions_for_user[]`, `_metadata`
|
|
333
|
-
|
|
334
|
-
**research.json Schema** (external research findings):
|
|
335
|
-
- `topic`, `mode` (detail-verification|api-research|design-research), `timestamp`
|
|
336
|
-
- `findings[]`: {finding, detail, confidence, source_url}
|
|
337
|
-
- `best_practices[]`: {practice, rationale, source}
|
|
338
|
-
- `alternatives[]`: {option, pros, cons, verdict}
|
|
339
|
-
- `pitfalls[]`: {issue, mitigation, source}
|
|
340
|
-
- `codebase_gaps[]`: {gap, current_approach, recommended_approach}
|
|
341
|
-
- `sources[]`: {title, url, key_takeaway}
|
|
342
|
-
- `_metadata`: {queries_executed, results_found}
|
|
343
|
-
|
|
344
|
-
**explorations.json Schema** (single — Layer 1 + CLI analysis + research merged):
|
|
345
|
-
- `session_id`, `timestamp`, `topic`, `dimensions[]`
|
|
346
|
-
- `sources[]`: {type, file/summary}
|
|
347
|
-
- `key_findings[]`, `code_anchors[]`: {file, lines, snippet, significance}
|
|
348
|
-
- `call_chains[]`: {entry, chain, files}
|
|
349
|
-
- `discussion_points[]`, `open_questions[]`
|
|
350
|
-
- `technical_solutions[]`: {round, solution, problem, rationale, alternatives, status: proposed|validated|rejected, evidence_refs[], next_action}
|
|
351
|
-
- `external_research`: {findings[], best_practices[], codebase_gaps[], sources[]} — merged from research.json if available
|
|
352
|
-
|
|
353
|
-
**perspectives.json Schema** (multi — Layer 1 shared + per-perspective Layer 2-3 + research):
|
|
354
|
-
- `shared_discovery`: {relevant_files[], patterns[], module_map}
|
|
355
|
-
- `perspectives[]`: [{name, tool, findings, insights, questions, code_anchors[], call_chains[]}]
|
|
356
|
-
- `external_research`: {findings[], best_practices[], codebase_gaps[], sources[]} — merged from research.json if available
|
|
357
|
-
- `synthesis`: {convergent_themes, conflicting_views, unique_contributions}
|
|
334
|
+
> All JSON schemas consolidated in `<schemas>` section below.
|
|
358
335
|
|
|
359
336
|
| Condition | Action |
|
|
360
337
|
|-----------|--------|
|
|
@@ -402,12 +379,23 @@ const priorContext = `
|
|
|
402
379
|
|
|
403
380
|
4. **Process Response** (always record user choice + impact to discussion.md):
|
|
404
381
|
|
|
382
|
+
**Record-Before-Continue Rule**: Each path below MUST write findings and discussion synthesis to `discussion.md` BEFORE proceeding to Step 5. Specifically, after agent/CLI returns results:
|
|
383
|
+
- Append the exploration results, reasoning, and any technical approaches discussed to the current round section
|
|
384
|
+
- Apply **Technical Solution Triggers** (see Decision Recording Protocol) — if triggered, record using Technical Solution Record Format
|
|
385
|
+
- **Ambiguity Check**: For each Technical Solution with Status `Proposed`, verify no unresolved alternatives remain. If a solution lists 2+ options without a chosen one (e.g., "A or B"), record as:
|
|
386
|
+
```markdown
|
|
387
|
+
> **⚠️ Ambiguity**: [Solution] has [N] unresolved alternatives: [list]
|
|
388
|
+
> - **Needs**: [Decision criteria or exploration to resolve]
|
|
389
|
+
```
|
|
390
|
+
Surface unresolved ambiguities to user in the next feedback round.
|
|
391
|
+
- Only THEN proceed to Step 5 for Current Understanding replacement and TOC update
|
|
392
|
+
|
|
405
393
|
**继续深入** -> Sub-question to choose direction (AskUserQuestion, single-select, header: "深入方向"):
|
|
406
394
|
- Dynamically generate **max 3** context-driven options from: unresolved questions, low-confidence findings, unexplored dimensions, user-highlighted areas
|
|
407
395
|
- Add **1** heuristic option that breaks current frame (e.g., "compare with best practices", "review from security perspective", "explore simpler alternatives")
|
|
408
396
|
- Total: **max 4 options**. Each specifies: label, description, tool (cli-explore-agent for code-level / Gemini CLI for pattern-level), scope
|
|
409
397
|
- **"Other" is auto-provided** by AskUserQuestion — covers user-specified custom direction (no need for separate "suggest next step" option)
|
|
410
|
-
- Execute selected direction -> merge new code_anchors/call_chains -> record confirmed assumptions + deepen angle
|
|
398
|
+
- Execute selected direction -> merge new code_anchors/call_chains into explorations.json -> **write exploration results, analysis reasoning, and any proposed approaches to discussion.md** -> record confirmed assumptions + deepen angle
|
|
411
399
|
|
|
412
400
|
**外部研究** -> Spawn workflow-research-agent for targeted research:
|
|
413
401
|
- AskUserQuestion (header: "研究主题", freetext via "Other"): What specific technology/pattern/approach needs external research?
|
|
@@ -420,9 +408,7 @@ const priorContext = `
|
|
|
420
408
|
|
|
421
409
|
**分析完成** -> Exit loop -> Record why concluding
|
|
422
410
|
|
|
423
|
-
5. **Update discussion.md
|
|
424
|
-
- **Append** Round N: user input, direction adjustment, Q&A, corrections, new insights
|
|
425
|
-
- **Append Technical Solutions** — for every solution proposed, validated, or rejected this round, record immediately using Technical Solution Record Format in `#### Technical Solutions`
|
|
411
|
+
5. **Update discussion.md** (after Record-Before-Continue writes are done):
|
|
426
412
|
- **Replace** `## Current Understanding` block with latest consolidated understanding (follow Consolidation Rules)
|
|
427
413
|
- **Update** `## Table of Contents` with links to new Round N sections
|
|
428
414
|
|
|
@@ -477,6 +463,7 @@ const priorContext = `
|
|
|
477
463
|
- Compile Decision Trail from all phases
|
|
478
464
|
- Key conclusions with evidence + confidence (high/medium/low)
|
|
479
465
|
- Recommendations with rationale + priority (high/medium/low) — **merge validated `technical_solutions[]` from explorations.json as high-priority recommendations**
|
|
466
|
+
- **Solution Readiness Gate**: For each recommendation, check if all key choices are resolved. Flag `ambiguity_resolved: false` on any recommendation that still contains unresolved alternatives. Present unresolved items to user before proceeding to Step 3.
|
|
480
467
|
- Open questions, follow-up suggestions
|
|
481
468
|
- Decision summary linking conclusions back to decisions
|
|
482
469
|
- Write to conclusions.json
|
|
@@ -621,7 +608,45 @@ ${implScope.map((item, i) => `${i+1}. **${item.objective}** [${item.priority}]
|
|
|
621
608
|
|
|
622
609
|
**TodoWrite**: Update `next-step` -> `"completed"` after user selection is handled
|
|
623
610
|
|
|
624
|
-
|
|
611
|
+
> conclusions.json schema: see `<schemas>` section below.
|
|
612
|
+
</step>
|
|
613
|
+
|
|
614
|
+
</process>
|
|
615
|
+
|
|
616
|
+
<schemas>
|
|
617
|
+
|
|
618
|
+
**exploration-codebase.json** (shared Layer 1):
|
|
619
|
+
- `session_id`, `timestamp`, `topic`, `dimensions[]`
|
|
620
|
+
- `relevant_files[]`: {path, annotation, dimensions[]}
|
|
621
|
+
- `patterns[]`, `module_map`: {}
|
|
622
|
+
- `questions_for_user[]`, `_metadata`
|
|
623
|
+
|
|
624
|
+
**research.json** (external research findings):
|
|
625
|
+
- `topic`, `mode` (detail-verification|api-research|design-research), `timestamp`
|
|
626
|
+
- `findings[]`: {finding, detail, confidence, source_url}
|
|
627
|
+
- `best_practices[]`: {practice, rationale, source}
|
|
628
|
+
- `alternatives[]`: {option, pros, cons, verdict}
|
|
629
|
+
- `pitfalls[]`: {issue, mitigation, source}
|
|
630
|
+
- `codebase_gaps[]`: {gap, current_approach, recommended_approach}
|
|
631
|
+
- `sources[]`: {title, url, key_takeaway}
|
|
632
|
+
- `_metadata`: {queries_executed, results_found}
|
|
633
|
+
|
|
634
|
+
**explorations.json** (single — Layer 1 + CLI analysis + research merged):
|
|
635
|
+
- `session_id`, `timestamp`, `topic`, `dimensions[]`
|
|
636
|
+
- `sources[]`: {type, file/summary}
|
|
637
|
+
- `key_findings[]`, `code_anchors[]`: {file, lines, snippet, significance}
|
|
638
|
+
- `call_chains[]`: {entry, chain, files}
|
|
639
|
+
- `discussion_points[]`, `open_questions[]`
|
|
640
|
+
- `technical_solutions[]`: {round, solution, problem, rationale, alternatives, status: proposed|validated|rejected, evidence_refs[], next_action}
|
|
641
|
+
- `external_research`: {findings[], best_practices[], codebase_gaps[], sources[]} — merged from research.json if available
|
|
642
|
+
|
|
643
|
+
**perspectives.json** (multi — Layer 1 shared + per-perspective Layer 2-3 + research):
|
|
644
|
+
- `shared_discovery`: {relevant_files[], patterns[], module_map}
|
|
645
|
+
- `perspectives[]`: [{name, tool, findings, insights, questions, code_anchors[], call_chains[]}]
|
|
646
|
+
- `external_research`: {findings[], best_practices[], codebase_gaps[], sources[]} — merged from research.json if available
|
|
647
|
+
- `synthesis`: {convergent_themes, conflicting_views, unique_contributions}
|
|
648
|
+
|
|
649
|
+
**conclusions.json**:
|
|
625
650
|
- `session_id`, `topic`, `completed`, `total_rounds`, `summary`
|
|
626
651
|
- `key_conclusions[]`: {point, evidence, confidence, code_anchor_refs[]}
|
|
627
652
|
- `code_anchors[]`: {file, lines, snippet, significance}
|
|
@@ -631,9 +656,8 @@ ${implScope.map((item, i) => `${i+1}. **${item.objective}** [${item.priority}]
|
|
|
631
656
|
- `decision_trail[]`: {round, decision, context, options_considered, chosen, rejected_reasons, reason, impact}
|
|
632
657
|
- `narrative_trail[]`: {round, starting_point, key_progress, hypothesis_impact, updated_understanding, remaining_questions}
|
|
633
658
|
- `intent_coverage[]`: {intent, status, where_addressed, notes}
|
|
634
|
-
</step>
|
|
635
659
|
|
|
636
|
-
</
|
|
660
|
+
</schemas>
|
|
637
661
|
|
|
638
662
|
<error_codes>
|
|
639
663
|
|
|
@@ -721,9 +745,6 @@ Present 2-3 top directions per dimension, allow multi-select + custom.
|
|
|
721
745
|
| Preserve key learnings | Keep insights valuable for future reference |
|
|
722
746
|
|
|
723
747
|
</configuration>
|
|
724
|
-
|
|
725
|
-
> **Lite-plan handoff**: Phase 4「执行任务」builds structured `handoff-spec` JSON (implementation_scope with acceptance_criteria, code_anchors, key_findings) embedded in `## Prior Analysis` block. lite-plan parses `json:handoff-spec` to directly map scope items → tasks, skipping exploration and using acceptance_criteria as convergence.criteria.
|
|
726
|
-
|
|
727
748
|
---
|
|
728
749
|
|
|
729
750
|
**Now execute analyze-with-file for**: $ARGUMENTS
|
|
@@ -340,9 +340,6 @@ Generate implementation plan and write plan.json.
|
|
|
340
340
|
- ${sessionFolder}/plan.json (plan overview — NO embedded tasks[])
|
|
341
341
|
- ${sessionFolder}/.task/TASK-*.json (independent task files, one per task)
|
|
342
342
|
|
|
343
|
-
## Schema Reference
|
|
344
|
-
Execute: cat ~/.ccw/workflows/cli-templates/schemas/plan-overview-base-schema.json
|
|
345
|
-
|
|
346
343
|
## Project Context (MANDATORY)
|
|
347
344
|
Execute: ccw spec load --category planning
|
|
348
345
|
**CRITICAL**: All generated tasks MUST comply with constraints in specs/*.md
|
|
@@ -392,7 +389,6 @@ ${complexity}
|
|
|
392
389
|
## Requirements
|
|
393
390
|
- _metadata.exploration_angles: ${JSON.stringify(manifest.explorations.map(e => e.angle))}
|
|
394
391
|
- Two-layer output: plan.json (task_ids[], NO tasks[]) + .task/TASK-*.json
|
|
395
|
-
- Follow plan-overview-base-schema.json for plan.json, task-schema.json for .task/*.json
|
|
396
392
|
- Field names: files[].change (not modification_points), convergence.criteria (not acceptance)
|
|
397
393
|
|
|
398
394
|
## Task Grouping Rules
|
|
@@ -405,9 +401,9 @@ ${complexity}
|
|
|
405
401
|
7. **Prefer parallel**: Most tasks should be independent
|
|
406
402
|
|
|
407
403
|
## Execution
|
|
408
|
-
1.
|
|
409
|
-
|
|
410
|
-
|
|
404
|
+
1. ccw spec load → 2. Read ALL exploration files → 3. Synthesize + generate
|
|
405
|
+
4. Write: planning-context.md, .task/TASK-*.json, plan.json (task_ids[], NO tasks[])
|
|
406
|
+
5. Return brief completion summary
|
|
411
407
|
`
|
|
412
408
|
)
|
|
413
409
|
```
|