# Assemble：Claude Code的智能工具编排助手

> 介绍Assemble如何通过扫描已安装技能、推荐分阶段工作流、交互式工具选择，帮助Claude Code用户高效完成复杂任务。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-28T11:45:32.000Z
- 最近活动: 2026-04-28T11:54:13.818Z
- 热度: 157.9
- 关键词: Claude Code, Skill, Workflow, Tool Orchestration, AI Assistant, Productivity, Developer Tools
- 页面链接: https://www.zingnex.cn/forum/thread/assemble-claude-code
- Canonical: https://www.zingnex.cn/forum/thread/assemble-claude-code
- Markdown 来源: ingested_event

---

# Assemble：Claude Code的智能工具编排助手

## 背景：技能爆炸时代的工具选择困境

Claude Code作为AI辅助编程的先进工具，其生态系统正在快速扩张。用户可以在`~/.claude/skills/`目录安装各种技能，从Vercel部署到数据库管理，从代码审查到文档生成。然而，这种丰富性带来了一个新问题：当面对复杂任务时，用户往往不清楚应该使用哪些技能，以及按什么顺序使用。

Assemble项目正是为解决这一痛点而诞生的。它是一个"工具管家"技能（Tool Concierge Skill），能够自动扫描用户已安装的所有技能、插件和智能体，理解它们的能力范围，然后为特定任务推荐分阶段的工作流程，并以交互式菜单让用户在每个阶段选择合适的工具。

## 核心功能：从任务到工作流的自动映射

Assemble的工作流程可以概括为"扫描-分类-推荐-执行"四个阶段：

### 1. 技能扫描（Scan）

Assemble会全面扫描用户环境中可用的工具：

- **用户技能**：读取`~/.claude/skills/`目录下每个技能的`SKILL.md`文件
- **插件技能**：扫描已安装插件（如Vercel、gstack等）提供的技能
- **智能体定义**：发现环境中的智能体配置文件

扫描过程会提取每个工具的元数据，包括名称、描述、能力范围、适用场景等。

### 2. 阶段分类（Classify）

这是Assemble的核心智能所在。它采用启发式分类器将每个工具映射到软件工程生命周期的特定阶段：

**预定义阶段**：

- **discover（发现）**：需求分析、问题定义、可行性研究
- **plan（规划）**：架构设计、任务拆解、资源评估
- **design（设计）**：接口定义、数据模型、UI/UX设计
- **execute（执行）**：编码实现、脚本编写、自动化部署
- **debug（调试）**：错误排查、日志分析、问题修复
- **review（审查）**：代码审查、安全审计、性能评估
- **verify（验证）**：测试执行、验收确认、质量检查
- **ship（交付）**：发布部署、文档归档、监控配置

**正交维度**：

- **safety（安全）**：安全检查、漏洞扫描、合规验证
- **meta（元）**：项目管理、进度跟踪、报告生成

分类器采用启发式规则（基于`SKILL.md` frontmatter中的关键词）进行初始分类。对于无法确定分类的工具，Assemble不会强行归类，而是标记为"未分类"，留待后续处理。

### 3. 智能补全（Inline LLM Classification）

对于未分类的工具，Assemble采用了一种聪明的按需分类策略：

- 当用户输入任务（如`/assemble build a small CLI for parsing CSV files`）时，系统识别与该任务最相关的2个未分类工具
- 调用LLM进行实时分类，只处理这2个工具，而非整个库存
- 分类结果持久化到`~/.claude/channels/assemble/inventory.json`，避免重复计算

这种设计实现了"用多少算多少"的效率原则——每个任务只触发必要的LLM调用，而不是一次性预热整个工具库。

### 4. 工作流推荐与交互执行（Recommend & Execute）

基于任务描述和已分类的工具库，Assemble：

- 生成推荐的分阶段工作流序列
- 为每个阶段展示可用的候选工具
- 提供交互式菜单让用户选择：运行工具、跳过阶段、手动输入、返回上一步、标记完成
- 支持上下文感知的辅助操作（如安全建议、元工具推荐）

整个执行过程会记录运行日志，支持`/assemble resume`命令从断点恢复。

## 技术实现亮点

### 纯标准库依赖

Assemble的Python实现仅依赖Python 3标准库，无需`pip install`任何第三方包。这带来了几个好处：

- **零依赖冲突**：不会与Claude Code或其他技能产生包版本冲突
- **快速安装**：只需`git clone`到技能目录即可使用
- **高可移植性**：在任何有Python 3的环境中都能运行

### 并发安全设计

项目实现了原子化的JSON读写机制（`update_json_locked`），确保：

- 多个并发的`/assemble`运行不会损坏库存文件
- 后台批量分类任务（`bin/classify-inventory`）与交互式运行可以安全并行
- 损坏的缓存文件会被隔离（重命名为`inventory.json.bad-<timestamp>`）而非静默删除

### 用户优先的冲突解决

当两个技能同名时，Assemble采用"用户技能优先"策略：

- 扫描顺序：先用户目录，后插件目录
- 去重逻辑：同名技能首次出现后忽略后续
- 这确保了用户自定义版本能覆盖默认实现

### 国际化支持

Assemble内置了国际化框架：

- 默认英文界面
- 已提供韩文本地化（`ko.json`）
- 可通过`ASSEMBLE_LOCALE`环境变量切换语言
- 新增语言只需复制翻译JSON文件，无需修改代码

## 使用示例

安装完成后，用户只需在Claude Code中输入：

```
/assemble build a small CLI for parsing CSV files
```

Assemble会：

1. 扫描技能库存，识别与CLI开发相关的工具
2. 推荐工作流：plan → design → execute → verify → ship
3. 在plan阶段展示候选工具（如架构设计技能、需求分析技能）
4. 用户选择一个工具运行，完成后自动推进到下一阶段
5. 全程支持`ask`（提问）、`skip`（跳过）、`manual`（手动）、`back`（返回）、`done`（完成）等元操作

## 设计哲学与架构决策

Assemble体现了几个重要的软件设计原则：

**渐进式发现**：不假设用户知道所有可用工具，而是通过扫描自动发现

**延迟加载**：技能体（skill body）在菜单中只显示标签和描述，实际执行时才加载完整代码

**容错设计**：损坏的缓存、缺失的依赖、未分类的工具都不会导致系统崩溃

**尊重用户选择**：推荐是起点而非终点，每个阶段都让用户保留最终决定权

**生态兼容性**：与Vercel、gstack等其他插件的技能和平共处，将它们纳入统一的阶段框架

## 局限性与改进空间

当前版本存在一些值得关注的限制：

**启发式分类的准确性**：基于关键词的启发式规则可能误判工具的实际用途，特别是对于功能复合的技能

**任务理解的深度**：Assemble根据任务描述推荐工作流，但对复杂任务的理解可能不够精准

**技能间依赖关系**：目前不建模技能之间的前置依赖（如某些技能需要先执行数据库迁移）

**大规模库存性能**：当技能数量极多时（数百个），扫描和分类的开销需要优化

## 对AI辅助编程的启示

Assemble代表了AI工具生态演进的一个重要方向：从"提供更多工具"转向"更好地组织和使用工具"。它的价值不仅在于技术实现，更在于提出了"工具编排"这一新的抽象层——在原始技能和最终任务之间，存在一个需要智能决策的中间层。

对于Claude Code用户来说，Assemble降低了使用高级技能的认知门槛。你不再需要记住每个技能的用途和用法，只需描述你想做什么，Assemble会帮你找到合适的工具并按正确顺序组织它们。

对于技能开发者来说，Assemble提供了标准化的集成模式。通过在`SKILL.md` frontmatter中声明阶段关键词，技能可以自动被Assemble发现和分类，无需额外的集成工作。

## 结语

在AI辅助编程工具日益丰富的今天，如何有效组织和利用这些工具成为一个关键问题。Assemble通过智能扫描、阶段分类、按需补全、交互执行的组合，为Claude Code用户提供了一个优雅的解决方案。它让复杂任务的分解和工具选择变得直观而高效，同时保留了用户的最终决策权。

项目的纯标准库实现、并发安全设计、国际化支持等工程细节，也展示了高质量AI工具技能应有的水准。对于希望提升Claude Code使用效率的开发者来说，Assemble是一个值得尝试的工具编排助手。
