Skip to main content

analyze-with-file

Interactive collaborative analysis with documented discussions, inline exploration, and evolving understanding.

来源信息

仓库
catlog22/Claude-Code-Workflow
最近来源活动
2026年4月29日 01:49
检测到的 SKILL.md 语言
英语
星标
2,131
分支
166

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
analyze-with-file
description
Interactive collaborative analysis with documented discussions, inline exploration, and evolving understanding.
argument-hint
TOPIC="<question or topic>" [--depth=quick|standard|deep] [--continue]
# Analyze-With-File Interactive collaborative analysis with documented discussion process. Records understanding evolution, facilitates multi-round Q&A, and uses inline search + external research for deep exploration. **Core flow**: Topic → Explore → Discuss → Refine → Conclude → Next Step **Auto mode** (`-y`): Auto-confirm exploration decisions, use recommended angles, skip interactive scoping. ## Configuration | Flag | Default | Description | |------|---------|-------------| | `-y, --yes` | false | Auto-confirm all decisions | | `--continue` | false | Continue existing session | | `--depth` | standard | quick / standard / deep | **Session ID**: `ANL-{YYYY-MM-DD}-{slug}` - slug: `topic.toLowerCase()` → keep `[a-z0-9\u4e00-\u9fa5]`, replace rest with `-`, max 40 chars - date: YYYY-MM-DD in UTC+8 - Auto-detect continue: session folder + discussion.md exists → continue mode ## Artifacts ``` {projectRoot}/.workflow/.analysis/ANL-{date}-{slug}/ ├── discussion.md # Single source of truth: rounds, decisions, conclusions, synthesis ├── state.json # Session state: config, confidence, quality tracking ├── exploration-codebase.json # Codebase exploration: files, patterns, constraints ├── research.json # External research: best practices, pitfalls, sources └── handoff.json # Structured handoff (only on "执行任务") ``` | File | When Created | Purpose | |------|-------------|---------| | `discussion.md` | Phase 1 | All analysis content: session metadata, round-by-round findings, multi-perspective synthesis, decisions, intent coverage, conclusions, recommendations. **Overwritten** sections: `## Current Understanding`. **Appended** sections: `## Discussion Timeline`. | | `state.json` | Phase 0 | Machine-readable: current round, dimension scores, confidence history, quality tracking (pressure pass, challenge modes, stall counter), exploration metadata. Updated every round. | | `exploration-codebase.json` | Phase 2 | Codebase context: `project_type`, `relevant_files[{path, relevance, summary, dimensions[]}]`, `patterns[{pattern, files, description}]`, `constraints[]`, `integration_points[{location, description}]`, `key_findings[]`, `_metadata{timestamp, exploration_scope}` | | `research.json` | Phase 2 | External research: `findings[{finding, detail, confidence, source_url}]`, `best_practices[{practice, rationale, source}]`, `alternatives[{option, pros, cons, verdict}]`, `pitfalls[{issue, mitigation, source}]`, `codebase_gaps[{gap, current_approach, recommended_approach}]`, `sources[{title, url, key_takeaway}]` | | `handoff.json` | Phase 4 | Only on "执行任务": `source`, `session_id`, `session_folder`, `summary`, `implementation_scope[{objective, rationale, priority, target_files[], acceptance_criteria[], change_summary}]`, `code_anchors[]`, `key_files[]`, `key_findings[]`, `decision_context[]`, `exploration_artifacts{exploration_codebase, research}` — keys align with workflow-lite-plan artifactMapping | --- ## Analysis Flow ``` Phase 0: Session Setup ├─ Parse topic, flags, generate session ID ├─ Detect project root (git rev-parse --show-toplevel || pwd) ├─ Create session folder (or detect existing → continue) ├─ Initialize state.json + discussion.md └─ functions.update_plan([phase-1..phase-4, next-step]) Phase 1: Topic Understanding ├─ Identify analysis dimensions from topic keywords ├─ Scope with user: focus, perspectives (1-4), depth ├─ Generate initial questions from dimensions └─ Write initial sections to discussion.md Phase 2: Exploration ├─ Load project specs (ccw spec load) ├─ Codebase search → exploration-codebase.json ├─ External research via web.run → research.json ├─ Multi-perspective analysis → write to discussion.md ├─ Context budget gate (>30 files → rank + trim) ├─ Initial intent coverage check └─ Baseline confidence scoring → state.json Phase 3: Interactive Discussion (max 5 rounds) ├─ Present findings + confidence + weakest dimension ├─ User direction: Deepen / Research / Adjust / Complete ├─ Cumulative context: always include prior findings ├─ Record-before-continue: write to discussion.md BEFORE state update ├─ Quality mechanisms: │ ├─ Pressure pass (mandatory ≥1 before Phase 4) │ ├─ Challenge injection (auto, round ≥2) │ ├─ Stall detection (2 consecutive no-progress rounds) │ └─ Re-score confidence → state.json ├─ Pre-synthesis readiness gate (on "Complete") ├─ Intent drift check (round ≥2) └─ Update discussion.md: append round + overwrite Current Understanding Phase 4: Synthesis & Terminal Gate ├─ Intent Coverage Verification (mandatory gate) ├─ Findings → Recommendations Traceability (mandatory gate) ├─ Write synthesis + conclusions to discussion.md ├─ Recommendation review with user └─ Terminal gate: 执行任务 → handoff.json | 产出Issue | 完成 ``` --- ## Phase 0: Session Setup 1. Parse `{{ARGUMENTS}}` for topic, flags (`--depth`, `--continue`, `-y`) 2. Detect project root: `git rev-parse --show-toplevel 2>/dev/null || pwd` 3. Generate session ID: `ANL-{date}-{slug}`, session folder: `{projectRoot}/.workflow/.analysis/{sessionId}` 4. If session folder + discussion.md exists → auto-enter continue mode (load state.json, resume from last round) 5. Create session folder: `mkdir -p {sessionFolder}` 6. Initialize `state.json`: ```json { "session_id": "ANL-{date}-{slug}", "topic": "...", "depth": "standard", "dimensions": [], "perspectives": [], "focus_areas": [], "current_round": 0, "current_phase": "setup", "confidence": { "dimensions": {}, "overall": 0, "weakest": null, "history": [] }, "quality": { "pressure_pass_done": false, "challenge_modes_used": [], "stall_counter": 0, "last_findings_count": 0, "readiness_gate_passed": false, "residual_risks": [] } } ``` 7. Initialize progress tracking: ``` functions.update_plan([ { id: "phase-1", title: "Phase 1: Topic Understanding", status: "in_progress" }, { id: "phase-2", title: "Phase 2: Exploration & Research", status: "pending" }, { id: "phase-3", title: "Phase 3: Interactive Discussion", status: "pending" }, { id: "phase-4", title: "Phase 4: Synthesis & Conclusion", status: "pending" }, { id: "next-step", title: "GATE: Post-Completion Next Step", status: "pending" } ]) ``` --- ## Phase 1: Topic Understanding ### 1.1 Identify Dimensions Match topic keywords against [Analysis Dimensions](#analysis-dimensions). If multiple match, include all. If none match, default to "architecture" + "implementation". ### 1.2 Initial Scoping (new session, not auto mode) Single `functions.request_user_input` call with up to 3 questions (constraint: 1-4 questions, 2-4 options each): **Question 1 — Focus areas** (multiSelect: true): - Generate options dynamically from matched dimensions using [Dimension-Direction Mapping](#dimension-direction-mapping), max 4 options **Question 2 — Perspectives** (multiSelect: true): - Technical: Implementation patterns, code structure, feasibility - Architectural: System design, scalability, interactions - Security: Security patterns, vulnerabilities, access control - Performance: Bottlenecks, optimization, resource utilization Max 4 perspectives. Single perspective is default. **Question 3 — Depth** (multiSelect: false): - Standard (Recommended): Balanced analysis with good coverage - Quick Overview: Fast surface-level understanding - Deep Dive: Comprehensive multi-round investigation ### 1.3 Initialize discussion.md Write the full initial template (see [discussion.md Structure](#discussionmd-structure)): - Header: session ID, topic, timestamp (UTC+8), dimensions, depth - Table of Contents (auto-updated each round) - Current Understanding: "To be populated after exploration" - Analysis Context: focus areas, perspectives, depth - Initial Questions: generated from topic + dimensions (key questions that the analysis should answer) - Initial Decisions: record WHY these dimensions/focus areas were selected, what was excluded and why - Discussion Timeline: empty, rounds appended later - Decision Trail: empty, populated in Phase 4 Update state.json with dimensions, perspectives, focus_areas, depth. Mark phase-1 completed, phase-2 in_progress. --- ## Phase 2: Exploration All exploration done inline — no agent delegation. ### 2.1 Codebase Detection & Spec Loading Detect project type: - `package.json` → nodejs | `go.mod` → golang | `Cargo.toml` → rust | `pyproject.toml` → python | `pom.xml` → java | `src/` exists → generic | else → none If codebase detected, load project metadata: - `functions.exec_command('ccw spec load --category exploration')` - `functions.exec_command('ccw spec load --category debug')` - Read `.workflow/specs/*.md` for project conventions ### 2.2 Codebase Search Search using: **Grep**, **Glob**, **Read**, **mcp__ace-tool__search_context** Focus on: modules/components relevant to topic, code patterns/structure, integration points, config/dependencies. Write findings to `exploration-codebase.json` with full schema: - `project_type`: detected type - `relevant_files[]`: `{path, relevance, summary, dimensions[]}` - `patterns[]`: `{pattern, files, description}` - `constraints[]`: architectural constraints found - `integration_points[]`: `{location, description}` - `key_findings[]`: main insights from code search - `_metadata`: `{timestamp, exploration_scope}` ### 2.3 External Research **Trigger condition**: dimensions include `architecture|comparison|decision|performance|security`, OR topic matches `best practice|pattern|vs|compare|approach|standard|library|framework`. Skip for purely internal codebase questions (e.g., "how does module X work"). Execute up to 3 `web.run` queries: - `{topic} best practices {year}` - `{topic} common pitfalls and known issues` - Per matching dimension: `{topic} {dimension} patterns and recommendations` Write findings to `research.json` with full schema: - `findings[]`: `{finding, detail, confidence, source_url}` - `best_practices[]`: `{practice, rationale, source}` - `alternatives[]`: `{option, pros, cons, verdict}` - `pitfalls[]`: `{issue, mitigation, source}` - `codebase_gaps[]`: `{gap, current_approach, recommended_approach}` - `sources[]`: `{title, url, key_takeaway}` - `_metadata`: `{queries_executed, timestamp}` Cross-reference: flag where codebase patterns diverge from research best practices as `codebase_gaps`. ### 2.4 Multi-Perspective Analysis **Single perspective** (default): Comprehensive analysis across all dimensions using exploration + research context. Write findings directly to discussion.md Round 1. **Multi-perspective** (2-4 perspectives, serial): Analyze each perspective sequentially. For each perspective, write a summary subsection in discussion.md Round 1. Then append a synthesis subsection: - **Convergent themes**: what all perspectives agree on - **Conflicting views**: where perspectives differ - **Unique contributions**: insights unique to specific perspectives ### 2.5 Context Budget Gate If exploration found > 30 relevant files in `exploration-codebase.json`: - Rank by relevance score, keep top 30 per dimension - Update `exploration-codebase.json` with trimmed list + `_budget{original_count, summarized_count}` - Note in discussion.md: "探索发现 N 个相关文件,已精简至 30 个高相关文件" ### 2.6 Write Round 1 to discussion.md Append to Discussion Timeline using [Round Template](#round-template): - Sources analyzed, key findings with evidence refs (file:line) - External research findings, best practices, codebase gaps - Multi-perspective synthesis (if applicable) - Discussion points and open questions - Decision Log: why certain search strategies/perspectives were chosen ### 2.7 Initial Intent Coverage Check Extract original user intents from discussion.md header. Check each against Round 1 findings: - ✅ covered - 🔄 in-progress - ❌ not yet discussed Append to discussion.md: "接下来的讨论将重点关注未覆盖 (❌) 和进行中 (🔄) 的意图。" ### 2.8 Baseline Confidence Scoring Score each dimension on 5 weighted factors (each [0.0, 1.0]): | Factor | Weight | Measures | |--------|--------|----------| | findings_depth | 0.30 | How deep the findings go | | evidence_strength | 0.25 | Hard evidence vs inference | | coverage_breadth | 0.20 | How much of the dimension is covered | | user_validation | 0.15 | User confirmed findings (starts at 0, increases in Phase 3) | | consistency | 0.10 | Findings don't contradict | Overall confidence = weighted average across dimensions. Identify weakest dimension. Update state.json `confidence` section. Append confidence table to discussion.md: ```markdown #### Confidence Score (Baseline) | Dimension | Depth | Evidence | Coverage | Validation | Consistency | **Score** |
在 GitHub 查看
这个 SKILL.md 很大,SkillsMP 这里只预览前一段内容。 在 GitHub 查看