Skip to content

Commit 4403088

Browse files
author
catlog22
committed
feat(memory-capture): add unified memory capture skill with compact and tips phases
- Implemented memory capture orchestrator to handle compact session memory compression and quick note-taking. - Added Phase 1: Compact for structured session memory export, capturing critical information for recovery. - Added Phase 2: Tips for quick note-taking with optional tagging and context linking. - Enhanced input processing and error handling for both phases. - Established clear output formats and quality checklists for generated content.
1 parent fd3a005 commit 4403088

11 files changed

Lines changed: 1122 additions & 1692 deletions

File tree

.claude/commands/workflow-skill.md

Lines changed: 0 additions & 130 deletions
This file was deleted.

.claude/commands/workflow/brainstorm-with-file.md

Lines changed: 123 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ When `--yes` or `-y`: Auto-confirm decisions, use recommended roles, balanced ex
2323
/workflow:brainstorm-with-file -m structured "优化缓存策略" # Goal-oriented mode
2424
```
2525

26-
**Context Source**: cli-explore-agent + Multi-CLI perspectives (Gemini/Codex/Claude or Professional Roles)
26+
**Context Source**: cli-explore-agent + Multi-CLI perspectives (Gemini/Claude or Professional Roles)
2727
**Output Directory**: `.workflow/.brainstorm/{session-id}/`
2828
**Core Innovation**: Diverge-Converge cycles with documented thought evolution
2929

@@ -72,8 +72,8 @@ When `--yes` or `-y`: Auto-confirm decisions, use recommended roles, balanced ex
7272
│ ├─ cli-explore-agent: Codebase context (FIRST) │
7373
│ ├─ Multi-CLI Perspectives (AFTER exploration) │
7474
│ │ ├─ Creative (Gemini): Innovation, cross-domain │
75-
│ │ ├─ Pragmatic (Codex): Implementation, feasibility
76-
│ │ └─ Systematic (Claude): Architecture, structure │
75+
│ │ ├─ Pragmatic (Claude): Implementation, feasibility │
76+
│ │ └─ Systematic (Agent): Architecture, structure
7777
│ └─ Aggregate diverse viewpoints │
7878
│ │
7979
│ Phase 3: Interactive Refinement (Multi-Round) │
@@ -228,31 +228,81 @@ Launch 3 parallel CLI calls (`run_in_background: true` each), one per perspectiv
228228

229229
| Perspective | Tool | PURPOSE | Key TASK bullets | EXPECTED | CONSTRAINTS |
230230
|-------------|------|---------|-----------------|----------|-------------|
231-
| Creative | gemini | Generate innovative ideas | Challenge assumptions, cross-domain inspiration, moonshot + practical ideas | 5+ creative ideas with novelty/impact ratings | structured mode: keep feasible |
232-
| Pragmatic | codex | Implementation reality | Evaluate feasibility, estimate complexity, identify blockers, incremental approach | 3-5 practical approaches with effort/risk ratings | Current tech stack |
233-
| Systematic | claude | Architectural thinking | Decompose problems, identify patterns, map dependencies, scalability | Problem decomposition, 2-3 approaches with tradeoffs | Existing architecture |
231+
| Creative | Gemini CLI | Generate innovative ideas | Challenge assumptions, cross-domain inspiration, moonshot + practical ideas | 5+ creative ideas with novelty/impact ratings | structured mode: keep feasible |
232+
| Pragmatic | Claude CLI | Implementation reality | Evaluate feasibility, estimate complexity, identify blockers, incremental approach | 3-5 practical approaches with effort/risk ratings | Current tech stack |
233+
| Systematic | cli-explore-agent | Architectural thinking | Decompose problems, identify patterns, map dependencies, scalability | Problem decomposition, 2-3 approaches with tradeoffs | Existing architecture |
234+
235+
Launch Creative + Pragmatic as parallel CLI calls, Systematic as Agent:
234236

235237
```javascript
236-
// Each perspective uses this prompt structure (launch all 3 in parallel):
238+
// Creative perspective (Gemini CLI, run_in_background: true)
239+
Bash({
240+
command: `ccw cli -p "
241+
PURPOSE: Creative brainstorming for '${idea_or_topic}' - Generate innovative ideas
242+
Success: 5+ creative ideas with novelty/impact ratings
243+
244+
${explorationContext}
245+
246+
TASK:
247+
• Challenge assumptions and find cross-domain inspiration
248+
• Generate moonshot + practical ideas
249+
• Rate each idea on novelty and impact
250+
251+
MODE: analysis
252+
CONTEXT: @**/* | Topic: ${idea_or_topic}
253+
EXPECTED: 5+ creative ideas with novelty/impact ratings
254+
CONSTRAINTS: ${brainstormMode === 'structured' ? 'Keep feasible' : 'Think big'}
255+
" --tool gemini --mode analysis`,
256+
run_in_background: true
257+
})
258+
259+
// Pragmatic perspective (Claude CLI, run_in_background: true)
237260
Bash({
238261
command: `ccw cli -p "
239-
PURPOSE: ${perspective} brainstorming for '${idea_or_topic}' - ${purposeFocus}
240-
Success: ${expected}
262+
PURPOSE: Pragmatic brainstorming for '${idea_or_topic}' - Implementation reality check
263+
Success: 3-5 practical approaches with effort/risk ratings
241264
242265
${explorationContext}
243266
244267
TASK:
245-
• Build on explored ${contextType} - how to ${actionVerb}?
246-
${perspectiveSpecificBullets}
268+
• Evaluate feasibility of explored concepts
269+
• Estimate complexity and identify blockers
270+
• Suggest incremental approach
247271
248272
MODE: analysis
249273
CONTEXT: @**/* | Topic: ${idea_or_topic}
250-
EXPECTED: ${expected}
251-
CONSTRAINTS: ${constraints}
252-
" --tool ${tool} --mode analysis`,
274+
EXPECTED: 3-5 practical approaches with effort/risk ratings
275+
CONSTRAINTS: Current tech stack
276+
" --tool claude --mode analysis`,
253277
run_in_background: true
254278
})
255-
// ⚠️ STOP POINT: Wait for hook callback to receive all results before continuing
279+
280+
// Systematic perspective (cli-explore-agent, run_in_background: false)
281+
Agent({
282+
subagent_type: "cli-explore-agent",
283+
run_in_background: false,
284+
description: `Systematic brainstorm: ${topicSlug}`,
285+
prompt: `
286+
## Brainstorm Context
287+
Topic: ${idea_or_topic}
288+
Dimensions: ${dimensions.join(', ')}
289+
Session: ${sessionFolder}
290+
291+
## Prior Exploration Context
292+
${explorationContext}
293+
294+
## Systematic Analysis Focus
295+
- Decompose the problem into architectural components
296+
- Identify patterns and anti-patterns in existing code
297+
- Map dependencies and integration points
298+
- Evaluate scalability of proposed approaches
299+
- Generate 2-3 architectural approaches with tradeoffs
300+
301+
## Output
302+
Return structured analysis with: problem_decomposition, approaches[] (each with description, pros, cons, complexity), dependency_map, scalability_assessment
303+
`
304+
})
305+
// ⚠️ STOP POINT: Wait for all CLI hook callbacks + agent result before continuing
256306
```
257307

258308
3. **Aggregate Multi-Perspective Findings**
@@ -282,7 +332,7 @@ CONSTRAINTS: ${constraints}
282332
|--------|------|--------|-----------|
283333
| Deep Dive | Gemini CLI | ideas/{slug}.md | Elaborate concept, requirements, challenges, POC approach, metrics, dependencies |
284334
| Generate More | Selected CLI | Updated perspectives.json | New angles from unexplored vectors |
285-
| Challenge | Codex CLI | Challenge results | 3 objections per idea, challenge assumptions, failure scenarios, survivability (1-5) |
335+
| Challenge | Claude CLI | Challenge results | 3 objections per idea, challenge assumptions, failure scenarios, survivability (1-5) |
286336
| Merge | Gemini CLI | ideas/merged-{slug}.md | Complementary elements, resolve contradictions, unified concept |
287337

288338
**Deep Dive CLI Call**:
@@ -332,7 +382,7 @@ TASK:
332382
MODE: analysis
333383
EXPECTED: Per-idea challenge report, critical weaknesses, survivability ratings, modified/strengthened versions
334384
CONSTRAINTS: Be genuinely critical, not just contrarian
335-
" --tool codex --mode analysis`,
385+
" --tool claude --mode analysis`,
336386
run_in_background: false
337387
})
338388
```
@@ -391,24 +441,64 @@ CONSTRAINTS: Don't force incompatible ideas together
391441
> **CRITICAL**: This AskUserQuestion is a **terminal gate**. The workflow is INCOMPLETE if this question is not asked. After displaying synthesis (step 2), you MUST immediately proceed here.
392442
393443
Call AskUserQuestion (single-select, header: "Next Step"):
394-
- **创建实施计划** (Recommended if top idea has high feasibility): "基于最佳创意启动 workflow-plan 制定实施计划"
395-
- **创建Issue**: "将 Top 3 创意转化为 issue 进行跟踪管理"
444+
- **创建实施计划** (Recommended if top idea has high feasibility): "基于最佳创意启动 workflow-lite-plan 制定实施计划"
445+
- **产出Issue**: "将 Top 3 创意转化为 issue 进行跟踪管理"
396446
- **深入分析**: "对最佳创意启动 analyze-with-file 深入技术分析"
397447
- **完成**: "头脑风暴已足够,无需进一步操作"
398448

399449
**Handle user selection**:
400450

401-
**"创建实施计划"** → MUST invoke Skill tool:
402-
1. Build `taskDescription` from top idea in synthesis.json (title + description + next_steps)
403-
2. Assemble context: `## Prior Brainstorm ({sessionId})` + summary + top idea details + key insights (up to 5)
404-
3. **Invoke Skill tool immediately**:
405-
```javascript
406-
Skill({ skill: "workflow-plan", args: `${taskDescription}\n\n${contextLines}` })
407-
```
408-
If Skill invocation is omitted, the workflow is BROKEN.
451+
**"创建实施计划"** → Build structured handoff & invoke lite-plan:
452+
453+
**Step A: Build Implementation Scope** from synthesis.json top ideas:
454+
```javascript
455+
const synthesis = JSON.parse(Read(`${sessionFolder}/synthesis.json`))
456+
const topIdeas = synthesis.top_ideas.filter(i => i.score >= 6).slice(0, 5)
457+
458+
const implScope = topIdeas.map(idea => ({
459+
objective: idea.title,
460+
rationale: idea.description,
461+
priority: idea.score >= 8 ? 'high' : 'medium',
462+
target_files: [], // brainstorm has no specific file targets — lite-plan will explore
463+
acceptance_criteria: idea.next_steps || [],
464+
change_summary: idea.strengths?.join('; ') || idea.description
465+
}))
466+
```
467+
468+
**Step B: Build Structured Handoff & Invoke Skill**:
469+
```javascript
470+
const handoff = {
471+
source: 'brainstorm-with-file',
472+
session_id: sessionId,
473+
session_folder: sessionFolder,
474+
summary: synthesis.recommendations?.primary || synthesis.topic,
475+
implementation_scope: implScope,
476+
code_anchors: [], // brainstorm has no code anchors — lite-plan will explore
477+
key_files: [],
478+
key_findings: synthesis.key_insights?.slice(0, 5) || [],
479+
decision_context: []
480+
}
481+
482+
const handoffBlock = `## Prior Brainstorm (${sessionId})
483+
484+
\`\`\`json:handoff-spec
485+
${JSON.stringify(handoff, null, 2)}
486+
\`\`\`
487+
488+
### Summary
489+
${synthesis.recommendations?.primary || synthesis.topic}
490+
491+
### Implementation Scope
492+
${implScope.map((item, i) => `${i+1}. **${item.objective}** [${item.priority}]
493+
- Done when: ${item.acceptance_criteria.join('; ')}
494+
- Context: ${item.change_summary}`).join('\n')}`
495+
496+
Skill({ skill: "workflow-lite-plan", args: handoffBlock })
497+
```
498+
If Skill invocation is omitted, the workflow is BROKEN.
409499
4. After Skill invocation, brainstorm-with-file is complete
410500
411-
**"创建Issue"** → Convert top ideas to issues:
501+
**"产出Issue"** → Convert top ideas to issues:
412502
1. For each idea in synthesis.top_ideas (top 3):
413503
- Build issue JSON: `{title: idea.title, context: idea.description + '\n' + idea.next_steps.join('\n'), priority: idea.score >= 8 ? 2 : 3, source: 'brainstorm', labels: dimensions}`
414504
- Create via: `Skill({ skill: "issue:from-brainstorm", args: "${sessionFolder}/synthesis.json" })`
@@ -448,20 +538,20 @@ CONSTRAINTS: Don't force incompatible ideas together
448538
| system-architect | Claude | Architecture, patterns | 架构, architecture, system, 系统, design pattern |
449539
| product-manager | Gemini | Business value, roadmap | 产品, product, feature, 功能, roadmap |
450540
| ui-designer | Gemini | Visual design, interaction | UI, 界面, interface, visual, 视觉 |
451-
| ux-expert | Codex | User research, usability | UX, 体验, experience, user, 用户 |
541+
| ux-expert | Claude | User research, usability | UX, 体验, experience, user, 用户 |
452542
| data-architect | Claude | Data modeling, storage | 数据, data, database, 存储, storage |
453-
| test-strategist | Codex | Quality, testing | 测试, test, quality, 质量, QA |
543+
| test-strategist | Gemini | Quality, testing | 测试, test, quality, 质量, QA |
454544
| subject-matter-expert | Gemini | Domain knowledge | 领域, domain, industry, 行业, expert |
455-
| product-owner | Codex | Priority, scope | 优先, priority, scope, 范围, backlog |
545+
| product-owner | Claude | Priority, scope | 优先, priority, scope, 范围, backlog |
456546
| scrum-master | Gemini | Process, collaboration | 敏捷, agile, scrum, sprint, 迭代 |
457547
458548
**Simple Perspectives** (fallback):
459549
460550
| Perspective | CLI Tool | Focus |
461551
|-------------|----------|-------|
462552
| creative | Gemini | Innovation, cross-domain |
463-
| pragmatic | Codex | Implementation, feasibility |
464-
| systematic | Claude | Architecture, structure |
553+
| pragmatic | Claude | Implementation, feasibility |
554+
| systematic | cli-explore-agent | Architecture, structure |
465555
466556
**Selection Strategy**: Auto mode → top 3 professional roles | Manual mode → recommended roles + "Use simple perspectives" option | Continue mode → roles from previous session
467557

0 commit comments

Comments
 (0)