日常编码
写代码、改 bug、重构模块、审查代码——和任何 AI 编码助手一样,但你可以随时切换模型。

Peri 是一个用 Rust 编写的终端 AI 编码助手。它兼容 Claude Code 生态——skills、hooks、MCP、sub-agents 直接可用——但更小更快,且不绑定任何特定模型。
日常编码
写代码、改 bug、重构模块、审查代码——和任何 AI 编码助手一样,但你可以随时切换模型。
长任务自动化
/goal 命令声明一个目标,Peri 在后续每一轮自动推进,即使跑几个小时也不会丢上下文。
并行工作流
/ultracode 把复杂任务拆成多个子代理并行执行——审查、编码、搜索同时进行。
终端 TUI
全功能终端界面:流式 Markdown 渲染、多面板分屏、后台任务监控、Token 用量实时显示。
| 如果你在用…… | Peri 的区别 |
|---|---|
| Claude Code | 兼容 .claude/ 配置,但用 Rust 写,约 13MB 二进制,支持任何 LLM |
| Cursor / Copilot | 终端原生,不需要 IDE,可以跑在服务器上 |
| aider | 更完整的 ReAct 循环 + 中间件管道 + 多个并行子代理(后台并发上限 3) |
| 没有工具 | Peri 的安装向导在 2 分钟内完成配置,不需要手动编辑任何文件 |
Peri 提供 macOS (x86_64 / Apple Silicon)、Linux (x86_64 / aarch64 / riscv64) 和 Windows (x86_64) 的预编译二进制文件。
打开终端,运行以下命令:
# macOS / Linuxcurl -fsSL https://raw.githubusercontent.com/konghayao/peri/main/scripts/install.sh | bashWindows 用户使用 PowerShell:
irm https://raw.githubusercontent.com/konghayao/peri/main/scripts/install.ps1 | iex首次启动会进入交互式配置向导,引导你完成模型选择和 API Key 设置——无需手动编辑任何配置文件。
peri更新到最新版:
peri updatePeri 支持任何 OpenAI 兼容的 API。以下为示例模型(实际可用性取决于你的 API 提供商与配额):
| 模型 | 提供商 | 推荐用途 |
|---|---|---|
| Claude 4 Sonnet | Anthropic | 复杂编码、架构设计 |
| DeepSeek V3 / R1 | DeepSeek | 高性能、低成本的日常编码 |
| GLM-5.x | 智谱 | 中文场景最优 |
| Qwen 3 Max | 阿里 | 通用编码任务 |
| GPT-4o / 4.1 | OpenAI | 全面推理 |
如果你已经有 Claude Code 的配置(.claude/settings.json、skills、hooks、MCP 服务器等),零迁移即可使用。
Peri 完全兼容:
.claude/skills/ 目录下的所有 skill 直接可用.claude/agents/ 下的代理定义无缝工作启动 Peri 后,你可以验证一切是否正常:
# 查看 Peri 版本peri --version
# 查看当前配置(配置文件在 ~/.peri/settings.json)ls -la ~/.peri/settings.json
# 测试一次简单对话peri -p "用 Python 写一个快速排序" --max-turns 1Peri 不是 Claude Code 的替代品,而是一个兼容生态的 Rust 重实现。它做的是同一件事——AI 驱动的编码助手——但做得更轻、更快、更开放。
| 维度 | Peri | Claude Code | Cursor / Copilot |
|---|---|---|---|
| 语言 | Rust | TypeScript / Node.js | TypeScript / Node.js |
| 二进制大小 | ~13 MB | ~80 MB (含 Node 运行时) | N/A (IDE 插件) |
| 运行时内存 | ~50 MB | ~300-800 MB | ~500-1500 MB |
| 启动时间 | ~0.5s | 2-5s | IDE 启动时间 |
| 缓存命中率 | 冻结系统提示词 + 边界标记,缓存友好 | ~60-80% | 取决于实现 |
| LLM 支持 | 任意模型,会话中切换 | 主要 Claude,有限 OpenAI | 主要 Claude / GPT |
| 配置兼容 | 完全兼容 CC config | 原生 | 不兼容 |
| 开源协议 | Apache 2.0 | 专有 | 专有 |
Node.js 的 V8 引擎在运行时占用大量内存,且不受开发者控制。Peri 不需要托管运行时——一个约 13MB 的静态链接二进制文件,启动即用,不会膨胀。
缓存是 AI 编码工具中最被低估的性能杠杆。Peri 的冻结系统提示词 + 边界标记机制让大部分重复上下文直接从缓存命中——你几乎不为重复的上下文付费。
传统方式: 每次对话重新发送全部上下文 → 100% 新 tokenPeri 方式: 冻结前缀 + 增量更新 → 1-5% 新 tokenRust 的 async 运行时(Tokio)天然支持高并发。Peri 可以同时运行多个后台子代理(编码、探索、代码审查、Web 研究),而 Node.js 的单线程事件循环难以优雅地处理这种负载。
Peri 使用确定性冻结前缀(deterministic frozen prefix)策略:
这意味着:
对于重度用户(每天数百次对话),缓存命中带来的节省可以降低 90% 以上的 token 消耗。
Peri 的 LLM 适配层是模型无关的。所有模型通过统一的 trait 接口接入:
// Peri 的 LLM 适配层(简化示意)#[async_trait]pub trait LlmProvider { async fn chat(&self, req: ChatRequest) -> Result<ChatResponse>; async fn stream(&self, req: ChatRequest) -> Result<Stream>; fn supports_tools(&self) -> bool; fn context_window(&self) -> usize;}DeepSeek、GLM、Qwen、Anthropic、OpenAI——都实现了同一个 trait。切换模型只是换一个实现,不涉及任何业务逻辑改动。
Peri 自身就是 Peri 写的。代码库的 99% 由 AI(DeepSeek 和 GLM-5.2)生成。
开发流程是一个 AI 自我驱动的闭环:
| 当你…… | 闭环启动 |
|---|---|
| 发现 bug 或技术债务 | 创建 issue → 系统诊断 → 撰写计划 → 子代理开发 → 归档 issue → 更新知识库 |
| 想要新功能 | 需求访谈 → 撰写计划 → 子代理开发 |
| 代码库变乱 | 清理分析 → 架构优化 → 撰写计划 → 子代理开发 |