# Champ：支持本地 LLM 的多智能体 VS Code AI 编程助手

> Champ 是一款开源 VS Code 扩展，集成了多智能体编排、7 家 LLM 提供商支持、本地离线运行能力，以及强大的安全控制层，为开发者提供完整的 AI 辅助编程体验。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-22T15:46:13.000Z
- 最近活动: 2026-04-22T15:56:02.793Z
- 热度: 150.8
- 关键词: VS Code, AI编程, 本地LLM, 多智能体, 开源, Ollama, 代码补全, 隐私保护
- 页面链接: https://www.zingnex.cn/forum/thread/champ-llm-vs-code-ai
- Canonical: https://www.zingnex.cn/forum/thread/champ-llm-vs-code-ai
- Markdown 来源: ingested_event

---

# Champ：支持本地 LLM 的多智能体 VS Code AI 编程助手

AI 编程助手正在改变开发者的工作方式。从 GitHub Copilot 到 Cursor，这些工具已经成为许多程序员的标配。但它们大多依赖云端模型，存在隐私风险和订阅费用。Champ 是一款开源的 VS Code 扩展，它提供了类似的功能，同时支持完全本地运行——这意味着你可以在没有网络连接的情况下使用 AI 辅助编程，而且代码不会离开你的机器。

## 核心特性概览

Champ 的功能列表令人印象深刻。它不仅仅是一个简单的代码补全工具，而是一个完整的多智能体 AI 编程系统：

**多智能体编排**：不同于单一 AI 模型直接操作，Champ 采用多智能体架构。Planner（规划器）、Code（编码器）、Reviewer（审查器）、Validator（验证器）、Context（上下文管理器）和 File（文件管理器）等代理通过共享内存系统协调工作，支持重试和条件分支。这种设计让复杂的编程任务可以被分解为多个步骤，每个步骤由最适合的代理处理。

**7 家 LLM 提供商**：Champ 支持 Claude、OpenAI、Gemini、Ollama、llama.cpp、vLLM 以及任何 OpenAI 兼容的端点。你可以在设置中切换提供商而无需重启 VS Code。这种灵活性让你可以根据任务选择最合适的模型——比如用 Claude 处理复杂架构设计，用本地 Ollama 模型处理日常代码补全。

**本地优先**：Champ 可以在 Apple Silicon 16GB 设备上完全离线运行，使用 Ollama 配合 Qwen2.5-Coder 或 Llama 3.1。这对于注重隐私或工作环境受限的开发者来说是一个重要优势。

**侧边栏聊天与流式输出**：提供专门的侧边栏界面，支持 Agent、Ask、Manual、Plan、Composer 五种模式，实时流式输出响应，工具调用卡片可折叠。

## 五种工作模式详解

Champ 针对不同场景设计了五种工作模式：

**Agent 模式**：完全自主的多步骤执行。你只需描述目标，Champ 会自己规划步骤、调用工具、执行代码、验证结果。适合端到端的任务，比如 "给这个项目添加用户认证功能"。

**Ask 模式**：只读问答。AI 会分析代码并回答问题，但不做任何修改。适合理解陌生代码库或学习新技术。

**Manual 模式**：每一步都需要你的确认。AI 会建议操作，但只有在获得批准后才会执行。适合对代码库不熟悉或需要谨慎操作的场景。

**Plan 模式**：只研究并生成计划，不实际修改文件。适合在开始大改动之前先理清思路，或者向团队展示你的实施方案。

**Composer 模式**：多文件编辑工作流。采用 Plan → Diff → Apply 的流程，支持 git 自动分支、提交和回滚。适合需要同时修改多个文件的重构任务。

## 内置工具集

Champ 提供了 10 个内置工具，覆盖日常开发的大部分需求：

- `read_file`：读取文件内容
- `edit_file`：修改现有文件
- `create_file`：创建新文件
- `delete_file`：删除文件
- `list_directory`：列出目录内容
- `run_terminal_cmd`：执行终端命令
- `grep_search`：代码搜索
- `file_search`：文件搜索

每个工具都有审批流程，你可以配置哪些工具需要确认、哪些可以自动执行。

## 安全控制层

Champ 对安全性做了深入考虑，实现了多层防护：

**命令沙箱**：阻止危险命令的执行，比如 `rm -rf /`、`curl | bash` 等。这防止了 AI 在意外或恶意情况下破坏你的系统。

**密钥扫描器**：在将内容发送到 LLM 之前，自动检测并脱敏 API 密钥、密码等敏感信息。这确保你不会不小心把生产环境的凭证泄露给第三方模型提供商。

**路径遍历保护**：所有工具都通过 `resolveInWorkspace` 辅助函数解析用户提供的路径，拒绝目录遍历尝试。AI 不能访问工作区之外的文件。

**检查点机制**：每次代理操作前创建影子副本快照，任何变更都可以回滚。这让你可以安全地尝试 AI 的建议，知道随时可以恢复。

## 代码库索引与智能补全

Champ 不仅理解当前文件，还能理解整个代码库：

**AST 感知分块**：基于抽象语法树进行智能分块，识别函数、类等结构单元，而不是简单的文本分割。这让检索更加语义化。

**向量搜索**：对整个工作空间建立索引，支持基于语义的代码搜索。你可以询问 "项目中处理用户认证的代码在哪里"，而不需要知道具体的文件名。

**行内补全**：通过小型快速本地模型提供幽灵文本建议，配合微任务防抖实现低延迟。这类似于 Copilot 的灰色代码建议，但完全在本地运行。

## @符号上下文注入

Champ 支持通过 @符号向 AI 注入上下文：

- `@Files`：引用特定文件
- `@Folders`：引用整个文件夹
- `@Codebase`：引用整个代码库
- `@Web`：从网页获取内容
- `@Git`：引用 git 历史和差异
- `@Docs`：引用文档
- `@Code`：引用特定代码片段
- `@Symbols`：引用特定符号（函数、类等）

这让精确控制 AI 的上下文变得简单。比如你可以说 "@Files:src/auth.ts 解释一下这个认证逻辑"，AI 就会专注于那个文件。

## 规则引擎

Champ 支持三级规则系统：

- **项目规则**：放在 `.champ/rules/*.md`，随仓库共享
- **用户规则**：个人偏好设置
- **团队规则**：团队统一的规范

规则支持基于 glob 的自动附加，比如你可以定义 "所有 `*.test.ts` 文件都遵循测试规范规则"。这让 AI 能够按照你的编码规范工作。

## MCP 支持

Champ 支持 Model Context Protocol（MCP），允许通过外部 MCP 服务器扩展代理能力。这意味着你可以接入自定义工具、数据源或服务，让 Champ 与你的特定工作流集成。

## 可观测性

Champ 内置了详细的指标收集：

- 每次请求的延迟
- Token 使用量
- 代理步骤日志
- 工具调用统计

这些数据帮助你理解 AI 的工作效率，优化使用模式。

## 开发与测试

Champ 采用测试驱动开发（TDD），当前统计：

- 306 个测试，分布在 44 个测试文件中
- 100% 的实现文件都有对应的测试文件
- 提交后 git 钩子生成命名的 JSON 测试报告

项目结构清晰，按功能模块组织：

```
src/
├── agent/          # 多智能体编排、控制器、自动修复、上下文解析
├── providers/      # 7 个 LLM 提供商 + 注册表 + 工厂
├── tools/          # 10 个工具 + 带审批流程的注册表
├── safety/         # 命令沙箱 + 密钥扫描器
├── completion/     # 幽灵文本行内补全
├── indexing/       # AST 分块 + 向量存储
├── composer/       # Plan→Diff→Apply 多文件工作流
├── checkpoints/    # 影子副本快照
├── rules/          # 项目 + 用户规则引擎
├── mcp/            # MCP 服务器管理
├── observability/  # 指标收集
└── ui/             # Webview 协议 + ChatViewProvider
```

## 使用场景与价值

Champ 适合哪些开发者？

**隐私敏感用户**：如果你处理的是专有代码、医疗记录、金融数据，不能发送到云端模型，Champ 的本地运行能力是理想选择。

**离线工作者**：经常在没有稳定网络的环境工作（比如飞机上、偏远地区），Champ 让你依然享有 AI 辅助。

**成本控制**：不想支付 Copilot 或 Cursor 的订阅费，Champ 完全免费开源。

**定制化需求**：需要特定的工作流、自定义工具、私有模型，Champ 的开放架构让你可以深度定制。

**学习与研究**：想了解 AI 编程助手的内部工作原理，Champ 的完整开源代码是绝佳的学习材料。

## 局限与注意事项

虽然 Champ 功能强大，但也有一些需要注意的地方：

**本地模型性能**：本地运行的模型（如 Llama 3.1 7B）能力不如 GPT-4 或 Claude 3.5 Sonnet，复杂任务可能需要更多指导或分步处理。

**资源占用**：本地模型需要足够的内存和 GPU（如果使用 GPU 加速）。Apple Silicon 16GB 是推荐配置，8GB 设备可能会吃力。

**成熟度**：作为开源项目，Champ 的成熟度和稳定性可能不如商业产品。遇到问题时需要有一定的调试能力。

## 结语

Champ 代表了 AI 编程助手的一个重要发展方向——开放、本地、可控。它证明了不依赖云端也能获得强大的 AI 辅助编程体验。对于注重隐私、成本敏感或需要深度定制的开发者来说，Champ 是一个值得认真考虑的选择。随着本地模型能力的不断提升，这类工具的价值只会越来越大。
