English | 简体中文
面向真实代码仓库的终端原生 AI Coding Agent。
让 AI 在终端中读代码、搜文件、执行命令、修改代码、规划任务,并在关键操作前保持可控审批。
文档 · 为什么是 ByteMind · 使用场景 · 快速开始 · 功能矩阵 · 架构 · Skills / MCP / SubAgents
ByteMind 面向的是这样一类开发者:希望 AI 直接在代码仓库内部工作,而不是停留在外部聊天窗口中。
它不只给建议,而是尝试进入真实工程闭环:
需求输入 → 制定计划 → 调用工具 → 观察结果 → 修改代码 → 执行验证 → 输出结果
🧠 先规划对于高风险任务,可以先进入 Plan 模式,先审阅方案,再决定是否执行。 |
🛠 再执行检查文件、搜索代码、应用补丁、执行命令,并在需要时获取外部上下文。 |
🧭 保持控制通过审批策略和运行边界,让关键动作始终处于可见、可控的范围内。 |
| 场景 | ByteMind 可以做什么 |
|---|---|
| 理解新代码仓库 | 浏览目录、定位入口、梳理关键模块和调用链 |
| 排查失败测试 | 读取失败信息、定位相关代码、修改后再次验证 |
| 审查或优化改动 | 从正确性、回归风险和测试覆盖角度检查变更 |
| 生成技术方案和 RFC | 基于仓库上下文生成可执行的实现方案 |
| 自动化重复工程任务 | 把常见流程沉淀为 Skills、MCP 或 SubAgent 工作流 |
| 协作编码 | 在保留审批边界的前提下读写文件、执行命令、推进任务 |
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | bash
Windows PowerShell
iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex
安装指定版本
curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | BYTEMIND_VERSION=vX.Y.Z bash
$env:BYTEMIND_VERSION='vX.Y.Z'; iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex
mkdir -p .bytemind
cp config.example.json .bytemind/config.json
bytemind chat
bytemind run -prompt "分析当前仓库并总结架构"
bytemind run -prompt "重构这个模块并更新测试" -max-iterations 64
一个可复现的 Bug 修复闭环,展示 ByteMind 的完整工程能力:
go run ./cmd/bytemind run \
-prompt "修复失败的测试并验证它通过" \
-workspace examples/bugfix-demo/broken-project \
-approval-mode full_access
| 步骤 | 工具 | 内容 |
|---|---|---|
| 1 | list_files |
读取项目结构 |
| 2 | read_file |
读取源码和测试文件 |
| 3 | run_tests |
发现失败的测试 |
| 4 | replace_in_file |
修复除零 Bug |
| 5 | run_tests |
验证所有测试通过 |
| 6 | git_diff |
展示精确的修改内容 |
Bug: CalculateAverage 在空切片上除零返回 NaN。
修复: 添加 len(nums) == 0 守卫条件。
离线验证(无需 API Key):
go run ./evals/runner.go -smoke -run bugfix_go_001
详见 examples/bugfix-demo/、DEMO.md(评审向导)和 ENGINEERING.md(工程证据)。
ByteMind 专为需要可复现、可验证工程输出的评估场景而设计。
多步工具调用 + 观测反馈、上下文压缩、限流重试、执行预算控制(internal/agent/engine_run_loop.go)。
14 个内置工具,输出结构化 JSON — git_status、git_diff、run_tests、文件读写搜索、补丁应用、Shell 执行和 Web 访问。每个工具都有单元测试和安全分类。
examples/bugfix-demo/broken-project 是一个自包含的 Go 项目,初始 go test ./... 失败,Agent 修复后通过。提供离线验证方式。
YAML 定义评估任务,通过 evals/runner.go 运行,支持命令退出码、输出模式、文件内容正则、文件修改检测。已集成 CI(-validate / -smoke)。
三层安全模型:审批策略(on-request/always/never)、沙箱(off/best_effort/required)、运行时边界(可写目录、执行白名单、网络白名单)。详见 bytemind safety explain。
PR 门禁 CI:go build ./...、单元测试 + 覆盖率、Linux/macOS/Windows 沙箱验收、评估冒烟检查。
Skills(可复用工作流)、MCP(外部工具集成)、SubAgents(聚焦委派)。
| 分类 | 能力 | 说明 |
|---|---|---|
| 终端体验 | 终端优先交互 | 面向真实仓库工作流 |
| 流式输出 | 实时观察执行过程 | 适合长任务 |
| Agent Loop | 多步骤工具调用 + 观察结果 | 不只是一次性问答 |
| Build / Plan | 规划与执行分离 | 更适合高风险改动 |
| 文件能力 | 读取、搜索、写入、替换、补丁 | 核心仓库操作 |
| Git 能力 | git_status, git_diff |
查看工作区状态和变更 |
| 测试能力 | run_tests |
自动检测并运行项目测试 |
| Shell | 在审批下执行命令 | 让执行过程可控 |
| Web | 搜索和抓取外部内容 | 需要外部上下文时使用 |
| 会话管理 | 持久化和恢复任务 | 适合长期工作 |
| Skills | 可复用工作流 | Bug 排查、审查、RFC、onboarding |
| MCP | 外部工具 / 上下文集成 | 让运行时能力更丰富 |
| SubAgents | 聚焦型委托执行 | 降低主上下文噪声 |
| 安全控制 | 审批、allowlist、可写目录 | 人类在环执行 |
| Provider | OpenAI-compatible / Anthropic | 可配置运行时支持 |
| 工具 | 用途 |
|---|---|
list_files |
检查仓库结构和候选文件范围 |
read_file |
读取源码、文档、配置和测试内容 |
search_text |
按关键词定位符号、错误信息或调用点 |
git_status |
查看工作区状态(暂存、未暂存、未跟踪) |
git_diff |
输出当前变更的 unified diff |
run_tests |
自动检测并运行项目测试,返回结果 |
write_file |
创建或完整写入文件 |
replace_in_file |
对已有文件做小范围文本替换 |
apply_patch |
以补丁方式增量修改文件 |
run_shell |
在审批边界内执行命令并读取结果 |
web_search |
本地上下文不足时搜索外部资料 |
web_fetch |
抓取指定页面内容作为补充上下文 |
✅ ByteMind 擅长的事情
|
⚙️ 它为什么实用
|
graph TD
A["用户输入"] --> B["构建运行时上下文"]
B --> C["LLM 决定:回答或调用工具"]
C --> D{"是否调用工具"}
D -- "否" --> E["最终回答"]
D -- "是" --> F["审批 / 策略检查"]
F --> G["执行工具"]
G --> H["观察结果写回会话"]
H --> I{"是否完成"}
I -- "否" --> C
I -- "是" --> E
graph TD
User["User"] --> CLI["cmd/bytemind"]
CLI --> App["App Bootstrap"]
App --> Runner["Runner"]
Runner --> Engine["Agent Engine"]
Engine --> Provider["Provider Runtime"]
Provider --> Model["LLM Provider"]
Engine --> Tools["Tool Registry"]
Tools --> FileTools["File Tools"]
Tools --> PatchTools["Patch Tools"]
Tools --> Shell["Shell Tool"]
Tools --> Web["Web Search / Fetch"]
Tools --> TaskTools["Task Output / Stop"]
Tools --> Delegate["Delegate SubAgent"]
Runner --> Session["Session Store"]
Runner --> Config["Config"]
Runner --> Skills["Skills Manager"]
Runner --> SubAgents["SubAgent Gateway"]
Runner --> Safety["Approval / Sandbox / Allowlist"]
ByteMind 默认合并三层配置:内置默认值、用户级 ~/.bytemind/config.json(或 BYTEMIND_HOME/config.json)和项目级 <workspace>/.bytemind/config.json。
下方示例是项目级配置,只影响当前工作区;跨仓库复用的 provider 凭证更适合放在用户级配置或环境变量中。显式传入 -config 时,会使用指定配置文件。
.bytemind/config.json
{
"provider": {
"type": "openai-compatible",
"base_url": "https://api.openai.com/v1",
"model": "gpt-5.4-mini",
"api_key_env": "BYTEMIND_API_KEY"
},
"approval_policy": "on-request",
"approval_mode": "interactive",
"max_iterations": 64,
"stream": true
}
{
"provider": {
"type": "anthropic",
"base_url": "https://api.anthropic.com",
"model": "claude-sonnet-4-20250514",
"api_key_env": "ANTHROPIC_API_KEY",
"anthropic_version": "2023-06-01"
},
"approval_policy": "on-request",
"approval_mode": "interactive"
}
运行边界示例
{
"approval_policy": "on-request",
"approval_mode": "interactive",
"writable_roots": [],
"exec_allowlist": [],
"network_allowlist": [],
"system_sandbox_mode": "off"
}
可复用工作流定义,从三个作用域加载(builtin > user > project)。通过 /skills 和 /skill 命令管理。
/help 显示可用命令
/session 显示当前会话
/sessions [limit] 列出最近会话
/agents [name] 列出可用 SubAgent 或查看某个定义
/explorer 显示内置 explorer SubAgent 定义
/review 显示内置 review SubAgent 定义
/resume <id> 按 id 或前缀恢复最近会话
/new 在当前工作区开始新会话
/quit 退出 CLI
MCP 用于把 ByteMind 连接到本地仓库之外的外部工具和上下文。
SubAgents 提供聚焦型隔离执行上下文:
| SubAgent | 工具 | 用途 |
|---|---|---|
explorer |
list_files, read_file, search_text |
只读仓库探索 |
review |
list_files, read_file, search_text |
代码审查和 Bug 检测 |
general |
文件工具 + 编辑工具 | 多步骤编码任务 |
| 动作 | 默认行为 |
|---|---|
| 读取文件 | 通常自动允许 |
| 搜索文件 | 通常自动允许 |
| 写入文件 | 需要审批 |
| 执行 shell 命令 | 需要审批或受 allowlist 约束 |
| 高风险动作 | 执行前展示确认 |
ByteMind 的设计原则很简单:
AI 可以执行,但最终控制边界必须掌握在人手里。
# 查看当前安全配置
bytemind safety status
# 了解安全模型
bytemind safety explain
# 检查环境、配置和依赖
bytemind doctor
cmd/bytemind CLI 入口
internal/app 应用启动装配
internal/agent Agent loop、prompt、streaming、subagent execution
internal/config 配置加载、默认值、环境变量覆盖
internal/llm 通用消息与工具类型
internal/provider Provider 适配与 provider runtime
internal/session 会话持久化
internal/tools 文件 / patch / shell / web 工具
internal/skills Skills 发现与加载
internal/subagents SubAgent 管理与 preflight gateway
internal/sandbox 运行边界与沙箱相关逻辑
tui/ 终端 UI(BubbleTea 框架)
examples/bugfix-demo 5 分钟可复现 Bug 修复演示
evals/ 评测任务与运行器
docs/ 架构文档、RFC、PRD
scripts/ 跨平台安装脚本
This project is licensed under the MIT License.
$ claude mcp add bytemind \
-- python -m otcore.mcp_server <graph>