Gestion de la Mémoire Unifiée

Point d'entrée unique pour mettre à jour CLAUDE.md et générer de la documentation (API.md/README.md) avec routage interactif. Déclenché par des commandes de mise à jour de mémoire et génération de docs.

Spar Skills Guide Bot
DocumentationAvancé
17010/03/2026
Claude Code
#memory-management#documentation-generation#project-structure#interactive-routing#multilingual

name: memory-manage description: Unified memory management - CLAUDE.md updates and documentation generation with interactive routing. Triggers on "memory manage", "update claude", "update memory", "generate docs", "更新记忆", "生成文档". allowed-tools: Agent(), Bash(), AskUserQuestion(), Read()

Memory Management Skill

Unified entry point for project memory (CLAUDE.md) updates and documentation (API.md/README.md) generation. Routes to specialized sub-commands via arguments or interactive needs assessment.

Architecture Overview

┌──────────────────────────────────────────────────────┐
│  Memory Manage (Router)                               │
│  → Parse input → Detect mode → Route to phase         │
└───────────────┬──────────────────────────────────────┘
                │
        ┌───────┴───────┐
        ↓               ↓
  ┌───────────┐   ┌───────────┐
  │ CLAUDE.md │   │  Docs     │
  │  管理     │   │  生成     │
  └─────┬─────┘   └─────┬─────┘
        │               │
   ┌────┼────┐     ┌────┴────┐
   ↓    ↓    ↓     ↓         ↓
 Full Related Single Full  Related
 全量  增量   单模块  全量    增量

Execution Flow

Step 1: Parse Input & Route

Detect execution mode from user input:

Auto-Route Rules (priority order):

| Signal | Route | Examples | |--------|-------|---------| | Explicit sub-command token | → Direct dispatch | update-full --tool qwen | | Keyword: full, 全量, all, entire + update/claude | → update-full | "全量更新claude" | | Keyword: related, changed, 增量, diff + update/claude | → update-related | "更新变更模块" | | Keyword: single, module, 单模块 + path-like token | → update-single | "更新 src/auth 模块" | | Keyword: docs, documentation, 文档 + full/all/全量 | → docs-full | "全量生成文档" | | Keyword: docs, documentation, 文档 + related/changed/增量 | → docs-related | "增量生成文档" | | Ambiguous or no arguments | → AskUserQuestion | /memory-manage |

Valid sub-command tokens: update-full, update-related, update-single, docs-full, docs-related

Direct dispatch examples:

input = "update-full --tool qwen"
  → subcommand = "update-full", remainingArgs = "--tool qwen"
  → Read phases/01-update-full.md, execute

input = "update-single src/auth --tool gemini"
  → subcommand = "update-single", remainingArgs = "src/auth --tool gemini"
  → Read phases/03-update-single.md, execute

When ambiguous or no arguments, proceed to Step 2.

Step 2: Interactive Needs Assessment

Q1 — 确定内容类别:

AskUserQuestion({
  questions: [{
    question: "你要管理哪类内容?",
    header: "类别",
    multiSelect: false,
    options: [
      {
        label: "CLAUDE.md (项目记忆)",
        description: "更新模块指令文件,帮助Claude理解代码库结构和约定"
      },
      {
        label: "项目文档 (API+README)",
        description: "生成API.md和README.md到.workflow/docs/目录"
      }
    ]
  }]
})

Q2a — CLAUDE.md 管理范围 (用户选了 CLAUDE.md):

AskUserQuestion({
  questions: [{
    question: "CLAUDE.md 更新范围?",
    header: "范围",
    multiSelect: false,
    options: [
      {
        label: "增量更新 (Recommended)",
        description: "仅更新git变更模块及其父级,日常开发首选"
      },
      {
        label: "全量更新",
        description: "更新所有模块,3层架构bottom-up,适合重大重构后"
      },
      {
        label: "单模块更新",
        description: "指定一个模块,Explore深度分析后生成说明书式文档"
      }
    ]
  }]
})

Route mapping:

  • "增量更新" → update-related → Ref: phases/02-update-related.md
  • "全量更新" → update-full → Ref: phases/01-update-full.md
  • "单模块更新" → update-single → continue to Q3

Q2b — 文档生成范围 (用户选了项目文档):

AskUserQuestion({
  questions: [{
    question: "文档生成范围?",
    header: "范围",
    multiSelect: false,
    options: [
      {
        label: "增量生成 (Recommended)",
        description: "仅为git变更模块生成/更新文档,日常开发首选"
      },
      {
        label: "全量生成",
        description: "所有模块+项目级文档(ARCHITECTURE.md等),适合初始化"
      }
    ]
  }]
})

Route mapping:

  • "增量生成" → docs-related → Ref: phases/05-docs-related.md
  • "全量生成" → docs-full → Ref: phases/04-docs-full.md

Q3 — 补充路径 (仅 update-single 需要,且无路径参数时):

AskUserQuestion({
  questions: [{
    question: "请指定要更新的模块路径:",
    header: "路径",
    multiSelect: false,
    options: [
      {
        label: "src",
        description: "src 目录"
      },
      {
        label: ".",
        description: "项目根目录"
      }
    ]
  }]
})

用户可选 "Other" 输入自定义路径。

Step 3: Execute Selected Phase

Based on routing result, read and execute the corresponding phase:

Phase Reference Documents (read on-demand when phase executes):

| Mode | Document | Purpose | |------|----------|---------| | update-full | phases/01-update-full.md | Full CLAUDE.md update, 3-layer architecture, batched agents | | update-related | phases/02-update-related.md | Git-changed CLAUDE.md update, depth-first | | update-single | phases/03-update-single.md | Single module CLAUDE.md, Explore + handbook style | | docs-full | phases/04-docs-full.md | Full API.md + README.md generation | | docs-related | phases/05-docs-related.md | Git-changed docs generation, incremental |

Shared Configuration

Tool Fallback Hierarchy

All sub-commands share the same fallback:

--tool gemini  →  [gemini, qwen, codex]  // default
--tool qwen    →  [qwen, gemini, codex]
--tool codex   →  [codex, gemini, qwen]

Common Parameters

| Parameter | Description | Default | Used By | |-----------|-------------|---------|---------| | --tool <gemini\|qwen\|codex> | Primary CLI tool | gemini | All | | --path <dir> | Target directory | . | update-full, docs-full | | <path> (positional) | Module path | (required) | update-single |

Batching Thresholds

| Sub-Command | Direct Execution | Agent Batch | Batch Size | |-------------|-----------------|-------------|------------| | update-full | <20 modules | ≥20 modules | 4/agent | | update-related | <15 modules | ≥15 modules | 4/agent | | update-single | always single | N/A | 1 | | docs-full | <20 modules | ≥20 modules | 4/agent | | docs-related | <15 modules | ≥15 modules | 4/agent |

Core Rules

  1. Route before execute: Determine sub-command before any execution
  2. Phase doc is truth: All execution logic lives in phase docs, router only dispatches
  3. Read on-demand: Only read the selected phase doc, never load all
  4. Pass arguments through: Forward remaining args unchanged to sub-command
  5. User confirmation: Each sub-command handles its own plan presentation and y/n confirmation

Error Handling

| Error | Resolution | |-------|------------| | Unknown sub-command | Fall through to interactive flow | | Phase doc not found | Abort with file path error | | Missing path for update-single | Prompt via Q3 | | Sub-command execution fails | Follow phase doc's own error handling |

Skills similaires