From 783f973688cd692b1b192e0ca9b4cdb2762d4a46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E7=BA=AA?= <3049035704@qq.com> Date: Sat, 9 May 2026 17:35:33 +0800 Subject: [PATCH] docs: update readme --- README.md | 426 +++++++++++++++----- README.zh-CN.md | 430 +++++++++++++++++++++ docs/assets/bytemind-terminal-preview.webp | Bin 0 -> 99475 bytes 3 files changed, 751 insertions(+), 105 deletions(-) create mode 100644 README.zh-CN.md create mode 100644 docs/assets/bytemind-terminal-preview.webp diff --git a/README.md b/README.md index d1a811c9..084f2ccf 100644 --- a/README.md +++ b/README.md @@ -1,65 +1,123 @@ +

+ English | 简体中文 +

+ +

+ ByteMind Banner +

+

- ByteMind Banner + Typing SVG

ByteMind

- GitHub Stars - GitHub Forks - License - Go Version - Last Commit + A terminal-native AI coding agent for real repositories.

- 一个用 Go 实现的 AI Coding CLI,目标是提供更接近 OpenCode / ClaudeCode 的工作流能力。 + Let AI inspect code, search files, run commands, edit files, plan tasks, and operate under configurable human approval.

- 核心能力 • - 快速开始 • - 配置文件 • - 目录结构 + Stars + Forks + Release + License

-> [!NOTE] -> 当前版本已具备多轮会话、流式输出、工具调用循环、Shell 执行审批、执行预算控制与重复调用检测等核心能力。 +

+ Go + Platform + Provider + Mode + Runtime +

-> [!TIP] -> 长任务建议提高 `-max-iterations`,到达预算后会返回阶段性总结,不会直接失败退出。 +

+ Documentation + · + Why ByteMind + · + Use Cases + · + Quick Start + · + Feature Matrix + · + Architecture + · + Skills / MCP / SubAgents +

- +--- -## 🎯 核心能力 +## Why ByteMind -| 模块 | 说明 | 状态 | -| --- | --- | --- | -| 会话系统 | 多轮会话 + 会话持久化 | ![status](https://img.shields.io/badge/status-ready-22c55e?style=flat-square) | -| 对话交互 | 纯 CLI 聊天 + 流式终端输出 | ![status](https://img.shields.io/badge/status-ready-22c55e?style=flat-square) | -| Provider 适配 | OpenAI-compatible / Anthropic 双适配层 | ![status](https://img.shields.io/badge/status-ready-22c55e?style=flat-square) | -| 工具执行 | 文件读写搜索、补丁替换、命令执行审批 | ![status](https://img.shields.io/badge/status-ready-22c55e?style=flat-square) | -| 运行稳定性 | `max_iterations` 预算控制 + 重复调用检测 | ![status](https://img.shields.io/badge/status-ready-22c55e?style=flat-square) | +ByteMind is built for developers who want AI to work **inside the repository**, not outside it. + +Instead of stopping at suggestions, ByteMind can participate in the actual engineering loop: + +```text +Prompt → Plan → Tool Call → Observation → Code Change → Verification → Result +``` + +

+ Terminal-native + Human-in-the-loop + Extensible +

+ + + + + + + +
+

🧠 Plan

+

Use Plan mode for higher-risk tasks. Review the approach before making changes.

+
+

🛠 Execute

+

Inspect files, search code, apply patches, run commands, and fetch external context when needed.

+
+

🧭 Control

+

Keep sensitive actions behind approval policies and runtime boundaries.

+
+ +--- - +## Use Cases -## 🚀 快速开始 +| Scenario | What ByteMind can do | +| --- | --- | +| Understand a new repository | Inspect structure, find entrypoints, and map key modules and call paths | +| Debug failing tests | Read failures, locate related code, patch the issue, and verify again | +| Review or refine changes | Check correctness, regression risk, and missing test coverage | +| Generate technical plans and RFCs | Turn repository context into an actionable implementation proposal | +| Automate repeated engineering tasks | Encode common workflows through Skills, MCP, or SubAgents | +| Collaborate under approval | Read and write files, run commands, and advance tasks while preserving approval boundaries | -### 0) 一键安装(无需 Go) +--- -macOS / Linux: +## Quick Start + +### Install + +**macOS / Linux** ```bash curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | bash ``` -Windows PowerShell: +**Windows PowerShell** ```powershell iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex ``` -安装指定版本(将 `vX.Y.Z` 替换为要安装的发布标签): +**Install a specific version** ```bash curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | BYTEMIND_VERSION=vX.Y.Z bash @@ -69,45 +127,166 @@ curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts $env:BYTEMIND_VERSION='vX.Y.Z'; iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex ``` -更多安装方式见:[docs/installation.md](docs/installation.md) +### Configure -### 1) 准备配置 +```bash +mkdir -p .bytemind +cp config.example.json .bytemind/config.json +``` -先复制示例配置,再把 `api_key` 等字段改成你自己的值: +### Run -```powershell -New-Item -ItemType Directory -Force .bytemind | Out-Null -Copy-Item config.example.json .bytemind/config.json +```bash +bytemind chat +``` + +```bash +bytemind run -prompt "Analyze this repository and summarize the architecture" ``` -> 兼容说明:工作区 `config.json` 也会被识别;这里推荐 `.bytemind/config.json` 方便与源码分离。 +```bash +bytemind run -prompt "Refactor this module and update tests" -max-iterations 64 +``` -### 2) 运行 ByteMind +--- -聊天模式: +## Terminal Preview -```powershell -go run ./cmd/bytemind chat -``` +

+ ByteMind terminal preview +

-单次任务: +--- -```powershell -go run ./cmd/bytemind run -prompt "分析当前项目并生成改进建议" + + +## Feature Matrix + +| Category | Capability | Notes | +| --- | --- | --- | +| **Terminal UX** | Terminal-first interaction | Built for repository-centric workflows | +| **Streaming** | Real-time output | Useful for long-running tasks | +| **Agent Loop** | Multi-step tool use + observations | More than a one-shot reply | +| **Build / Plan** | Separate planning and execution modes | Better for high-risk changes | +| **Files** | Read, search, write, replace, patch | Core repository operations | +| **Shell** | Run commands under approval | Keep execution visible and controlled | +| **Web** | Search and fetch external content | Useful when external context is needed | +| **Sessions** | Persist and resume tasks | Suitable for long-running work | +| **Skills** | Reusable workflows | Bug investigation, review, RFC, onboarding | +| **MCP** | External tool / context integration | Extend the runtime beyond local tools | +| **SubAgents** | Focused delegated work | Reduce noise in the main context | +| **Safety** | Approval, allowlists, writable roots | Human-in-the-loop execution | +| **Providers** | OpenAI-compatible / Anthropic | Configurable runtime support | + +--- + +## Built-in Tools + +| Tool | Purpose | +| --- | --- | +| `list_files` | Inspect repository structure and candidate file scopes | +| `read_file` | Read source code, docs, config, and test content | +| `search_text` | Locate symbols, error messages, or call sites by keyword | +| `write_file` | Create or fully rewrite files | +| `replace_in_file` | Make small text replacements in existing files | +| `apply_patch` | Apply incremental file changes through patches | +| `run_shell` | Run commands inside the approval boundary and read results | +| `web_search` | Search external sources when local context is insufficient | +| `web_fetch` | Fetch a specific page as supplemental context | + +--- + +## Core Experience + + + + + + +
+

✅ What ByteMind is good at

+
    +
  • Understanding unfamiliar repositories
  • +
  • Debugging code and failing tests
  • +
  • Planning and applying small refactors
  • +
  • Reviewing correctness and regression risk
  • +
  • Writing RFC-style implementation plans
  • +
  • Automating repetitive coding workflows
  • +
+
+

⚙️ What makes it practical

+
    +
  • Approval before sensitive actions
  • +
  • Execution budget via max_iterations
  • +
  • Session persistence
  • +
  • Provider-agnostic runtime
  • +
  • Extensible skills and external tools
  • +
  • SubAgent-based context isolation
  • +
+
+ +--- + +## How It Works + +```mermaid +graph TD + A["User Prompt"] --> B["Build Runtime Context"] + B --> C["LLM decides: answer or tool call"] + C --> D{"Tool Call?"} + D -- "No" --> E["Final Answer"] + D -- "Yes" --> F["Approval / Policy Check"] + F --> G["Execute Tool"] + G --> H["Observation appended to session"] + H --> I{"Done?"} + I -- "No" --> C + I -- "Yes" --> E ``` -提高执行预算: +--- -```powershell -go run ./cmd/bytemind chat -max-iterations 64 -go run ./cmd/bytemind run -prompt "refactor this module" -max-iterations 64 + + +## Architecture + +```mermaid +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"] ``` - +--- + +## Configuration -## ⚙️ 配置文件 +ByteMind normally merges three configuration layers: built-in defaults, user-level `~/.bytemind/config.json` (or `BYTEMIND_HOME/config.json`), and project-level `/.bytemind/config.json`. -默认配置(OpenAI-compatible): +The example below is a **project-level config** and only affects the current workspace. Provider credentials reused across repositories usually belong in user-level config or environment variables. Passing `-config` uses that explicit config file. + +```text +.bytemind/config.json +``` + +### OpenAI-compatible example ```json { @@ -115,26 +294,16 @@ go run ./cmd/bytemind run -prompt "refactor this module" -max-iterations 64 "type": "openai-compatible", "base_url": "https://api.openai.com/v1", "model": "gpt-5.4-mini", - "api_key": "your-api-key-here" + "api_key_env": "BYTEMIND_API_KEY" }, "approval_policy": "on-request", - "notifications": { - "desktop": { - "enabled": true, - "on_approval_required": true, - "on_run_completed": true, - "on_run_failed": true, - "on_run_canceled": false, - "cooldown_seconds": 3 - } - }, + "approval_mode": "interactive", "max_iterations": 32, "stream": true } ``` -
-Anthropic 配置示例 +### Anthropic example ```json { @@ -142,67 +311,114 @@ go run ./cmd/bytemind run -prompt "refactor this module" -max-iterations 64 "type": "anthropic", "base_url": "https://api.anthropic.com", "model": "claude-sonnet-4-20250514", - "api_key": "your-api-key-here", + "api_key_env": "ANTHROPIC_API_KEY", "anthropic_version": "2023-06-01" - } + }, + "approval_policy": "on-request", + "approval_mode": "interactive" +} +``` + +
+ Runtime boundary example + +```json +{ + "approval_policy": "on-request", + "approval_mode": "interactive", + "writable_roots": [], + "exec_allowlist": [], + "network_allowlist": [], + "system_sandbox_mode": "off" } ```
- +--- -## 🧱 目录结构 + + +## Skills, MCP and SubAgents + +### Skills + +The CLI currently exposes reusable workflow helpers through the registered slash commands below. ```text -cmd/bytemind CLI 入口 -internal/agent 对话循环、系统提示词模板、流式输出 -internal/config 配置加载与环境变量覆盖 -internal/llm 通用消息与工具类型 -internal/provider 多 provider 适配层 -internal/session 会话持久化 -internal/tools 文件工具、patch 工具、shell 工具 +/help Show available commands +/session Show the current session +/sessions [limit] List recent sessions +/agents [name] List available subagents or show one definition +/explorer Show the builtin explorer subagent definition +/review Show the builtin review subagent definition +/resume Resume a recent session by id or prefix +/new Start a new session in the current workspace +/quit Exit the CLI ``` -## 🧭 交互命令 +### MCP + +Use MCP to connect ByteMind to external tools and context beyond local repository operations. -- `/help` -- `/session` -- `/sessions` -- `/quit` +### SubAgents -## 🧰 已实现工具 +SubAgents provide isolated execution contexts for focused work: -- `list_files` -- `read_file` -- `search_text` -- `write_file` -- `replace_in_file` -- `apply_patch` -- `run_shell` +- broad repository discovery +- file targeting +- read-only exploration +- bug scope reduction +- review / analysis subtasks -## 📝 系统提示词维护 +

+ Skills + MCP + SubAgents +

+ +--- + +## Safety Model + +| Action | Typical behavior | +| --- | --- | +| Read files | Usually allowed automatically | +| Search files | Usually allowed automatically | +| Write files | Requires approval | +| Run shell commands | Requires approval or allowlist | +| High-risk actions | Shown before execution | -系统提示词模板在: +> ByteMind is designed around a simple principle:
+> **AI can execute, but humans should keep the final control boundary.** -- `internal/agent/prompts/system.md` +--- + +## Project Structure + +```text +cmd/bytemind CLI entrypoint +internal/app Application bootstrap +internal/agent Agent loop, prompts, streaming, subagent execution +internal/config Config loading, defaults, environment overrides +internal/llm Common message and tool types +internal/provider Provider adapters and provider runtime +internal/session Session persistence +internal/tools File / patch / shell / web tools +internal/skills Skills discovery and loading +internal/subagents SubAgent manager and preflight gateway +internal/sandbox Runtime boundary and sandbox-related logic +``` -运行时由 `internal/agent/prompt.go` 通过 `go:embed` 内嵌 Markdown,并替换 `{{WORKSPACE}}`、`{{APPROVAL_POLICY}}` 占位符。 +--- -## 🌍 Environment Variables +## Links -See [docs/environment-variables.md](docs/environment-variables.md) for runtime TUI env vars: +- Documentation: +- GitHub: -- `BYTEMIND_ENABLE_MOUSE` -- `BYTEMIND_WINDOWS_INPUT_TTY` -- `BYTEMIND_MOUSE_Y_OFFSET` -- `BYTEMIND_DESKTOP_NOTIFY` -- `BYTEMIND_NOTIFY_APPROVAL` -- `BYTEMIND_NOTIFY_RUN_COMPLETED` -- `BYTEMIND_NOTIFY_RUN_FAILED` -- `BYTEMIND_NOTIFY_RUN_CANCELED` -- `BYTEMIND_NOTIFY_COOLDOWN_SECONDS` +--- -## 📄 License +## License This project is licensed under the [MIT License](LICENSE). diff --git a/README.zh-CN.md b/README.zh-CN.md new file mode 100644 index 00000000..91d44504 --- /dev/null +++ b/README.zh-CN.md @@ -0,0 +1,430 @@ +

+ English | 简体中文 +

+ +

+ ByteMind Banner +

+ +

+ Typing SVG +

+ +

ByteMind

+ +

+ 面向真实代码仓库的终端原生 AI Coding Agent。 +

+ +

+ 让 AI 在终端中读代码、搜文件、执行命令、修改代码、规划任务,并在关键操作前保持可控审批。 +

+ +

+ Stars + Forks + Release + License +

+ +

+ Go + Platform + Provider + Mode + Runtime +

+ +

+ 文档 + · + 为什么是 ByteMind + · + 使用场景 + · + 快速开始 + · + 功能矩阵 + · + 架构 + · + Skills / MCP / SubAgents +

+ +--- + + + +## 为什么是 ByteMind + +ByteMind 面向的是这样一类开发者:希望 AI **直接在代码仓库内部工作**,而不是停留在外部聊天窗口中。 + +它不只给建议,而是尝试进入真实工程闭环: + +```text +需求输入 → 制定计划 → 调用工具 → 观察结果 → 修改代码 → 执行验证 → 输出结果 +``` + +

+ Terminal-native + Human-in-the-loop + Extensible +

+ + + + + + + +
+

🧠 先规划

+

对于高风险任务,可以先进入 Plan 模式,先审阅方案,再决定是否执行。

+
+

🛠 再执行

+

检查文件、搜索代码、应用补丁、执行命令,并在需要时获取外部上下文。

+
+

🧭 保持控制

+

通过审批策略和运行边界,让关键动作始终处于可见、可控的范围内。

+
+ +--- + + + +## 使用场景 + +| 场景 | ByteMind 可以做什么 | +| --- | --- | +| 理解新代码仓库 | 浏览目录、定位入口、梳理关键模块和调用链 | +| 排查失败测试 | 读取失败信息、定位相关代码、修改后再次验证 | +| 审查或优化改动 | 从正确性、回归风险和测试覆盖角度检查变更 | +| 生成技术方案和 RFC | 基于仓库上下文生成可执行的实现方案 | +| 自动化重复工程任务 | 把常见流程沉淀为 Skills、MCP 或 SubAgent 工作流 | +| 协作编码 | 在保留审批边界的前提下读写文件、执行命令、推进任务 | + +--- + + + +## 快速开始 + +### 安装 + +**macOS / Linux** + +```bash +curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | bash +``` + +**Windows PowerShell** + +```powershell +iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex +``` + +**安装指定版本** + +```bash +curl -fsSL https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.sh | BYTEMIND_VERSION=vX.Y.Z bash +``` + +```powershell +$env:BYTEMIND_VERSION='vX.Y.Z'; iwr -useb https://raw.githubusercontent.com/1024XEngineer/bytemind/main/scripts/install.ps1 | iex +``` + +### 配置 + +```bash +mkdir -p .bytemind +cp config.example.json .bytemind/config.json +``` + +### 运行 + +```bash +bytemind chat +``` + +```bash +bytemind run -prompt "分析当前仓库并总结架构" +``` + +```bash +bytemind run -prompt "重构这个模块并更新测试" -max-iterations 64 +``` + +--- + +## 终端预览 + +

+ ByteMind 终端运行截图 +

+ +--- + + + +## 功能矩阵 + +| 分类 | 能力 | 说明 | +| --- | --- | --- | +| **终端体验** | 终端优先交互 | 面向真实仓库工作流 | +| **流式输出** | 实时观察执行过程 | 适合长任务 | +| **Agent Loop** | 多步骤工具调用 + 观察结果 | 不只是一次性问答 | +| **Build / Plan** | 规划与执行分离 | 更适合高风险改动 | +| **文件能力** | 读取、搜索、写入、替换、补丁 | 核心仓库操作 | +| **Shell** | 在审批下执行命令 | 让执行过程可控 | +| **Web** | 搜索和抓取外部内容 | 需要外部上下文时使用 | +| **会话管理** | 持久化和恢复任务 | 适合长期工作 | +| **Skills** | 可复用工作流 | Bug 排查、审查、RFC、onboarding | +| **MCP** | 外部工具 / 上下文集成 | 让运行时能力更丰富 | +| **SubAgents** | 聚焦型委托执行 | 降低主上下文噪声 | +| **安全控制** | 审批、allowlist、可写目录 | 人类在环执行 | +| **Provider** | OpenAI-compatible / Anthropic | 可配置运行时支持 | + +--- + +## 内置工具 + +| 工具 | 用途 | +| --- | --- | +| `list_files` | 检查仓库结构和候选文件范围 | +| `read_file` | 读取源码、文档、配置和测试内容 | +| `search_text` | 按关键词定位符号、错误信息或调用点 | +| `write_file` | 创建或完整写入文件 | +| `replace_in_file` | 对已有文件做小范围文本替换 | +| `apply_patch` | 以补丁方式增量修改文件 | +| `run_shell` | 在审批边界内执行命令并读取结果 | +| `web_search` | 本地上下文不足时搜索外部资料 | +| `web_fetch` | 抓取指定页面内容作为补充上下文 | + +--- + +## 核心体验 + + + + + + +
+

✅ ByteMind 擅长的事情

+
    +
  • 理解陌生代码仓库
  • +
  • 排查代码与失败测试
  • +
  • 规划并执行小范围重构
  • +
  • 审查正确性与回归风险
  • +
  • 撰写 RFC 风格实现方案
  • +
  • 自动化重复工程工作流
  • +
+
+

⚙️ 它为什么实用

+
    +
  • 敏感动作先审批
  • +
  • 通过 max_iterations 控制执行预算
  • +
  • 支持会话持久化
  • +
  • Provider 无关运行时
  • +
  • 可扩展 Skills 与外部工具
  • +
  • 基于 SubAgent 的上下文隔离
  • +
+
+ +--- + +## 工作原理 + +```mermaid +graph TD + A["用户输入"] --> B["构建运行时上下文"] + B --> C["LLM 决定:回答或调用工具"] + C --> D{"是否调用工具"} + D -- "否" --> E["最终回答"] + D -- "是" --> F["审批 / 策略检查"] + F --> G["执行工具"] + G --> H["观察结果写回会话"] + H --> I{"是否完成"} + I -- "否" --> C + I -- "是" --> E +``` + +--- + + + +## 架构 + +```mermaid +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`)和项目级 `/.bytemind/config.json`。 + +下方示例是**项目级配置**,只影响当前工作区;跨仓库复用的 provider 凭证更适合放在用户级配置或环境变量中。显式传入 `-config` 时,会使用指定配置文件。 + +```text +.bytemind/config.json +``` + +### OpenAI-compatible 示例 + +```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": 32, + "stream": true +} +``` + +### Anthropic 示例 + +```json +{ + "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" +} +``` + +
+ 运行边界示例 + +```json +{ + "approval_policy": "on-request", + "approval_mode": "interactive", + "writable_roots": [], + "exec_allowlist": [], + "network_allowlist": [], + "system_sandbox_mode": "off" +} +``` + +
+ +--- + + + +## Skills、MCP 与 SubAgents + +### Skills + +当前 CLI 通过下列已注册的斜杠命令暴露可复用工作流相关能力。 + +```text +/help 显示可用命令 +/session 显示当前会话 +/sessions [limit] 列出最近会话 +/agents [name] 列出可用 SubAgent 或查看某个定义 +/explorer 显示内置 explorer SubAgent 定义 +/review 显示内置 review SubAgent 定义 +/resume 按 id 或前缀恢复最近会话 +/new 在当前工作区开始新会话 +/quit 退出 CLI +``` + +### MCP + +MCP 用于把 ByteMind 连接到本地仓库之外的外部工具和上下文。 + +### SubAgents + +SubAgents 提供聚焦型隔离执行上下文,适用于: + +- 大范围仓库探索 +- 文件定位 +- 只读探索 +- Bug 范围收敛 +- 审查 / 分析子任务 + +

+ Skills + MCP + SubAgents +

+ +--- + +## 安全模型 + +| 动作 | 默认行为 | +| --- | --- | +| 读取文件 | 通常自动允许 | +| 搜索文件 | 通常自动允许 | +| 写入文件 | 需要审批 | +| 执行 shell 命令 | 需要审批或受 allowlist 约束 | +| 高风险动作 | 执行前展示确认 | + +> ByteMind 的设计原则很简单:
+> **AI 可以执行,但最终控制边界必须掌握在人手里。** + +--- + +## 项目结构 + +```text +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 运行边界与沙箱相关逻辑 +``` + +--- + +## 链接 + +- 文档: +- GitHub: + +--- + +## License + +This project is licensed under the [MIT License](LICENSE). diff --git a/docs/assets/bytemind-terminal-preview.webp b/docs/assets/bytemind-terminal-preview.webp new file mode 100644 index 0000000000000000000000000000000000000000..352e256ce0333625d11774dfc7823ffca6eb030f GIT binary patch literal 99475 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 UoCBt_3V?l)fD|;0{^!g809K=D>i_@% literal 0 HcmV?d00001