# opencodebook **Repository Path**: ulong9464/opencodebook ## Basic Information - **Project Name**: opencodebook - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-20 - **Last Updated**: 2026-05-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OpenCode 技术教程系列 > 31篇深度技术教程,全面解析OpenCode的设计思想、核心原理、源码实现、插件开发与会话机制 ## 📚 系列概览 | 系列 | 篇数 | 主题 | |------|------|------| | 🏗️ [设计思想篇](01-设计思想篇/) | 5篇 | OpenCode的核心理念与架构决策 | | ⚙️ [核心原理篇](02-核心原理篇/) | 10篇 | Agent、工具、会话、MCP等核心机制 | | 🔬 [源码分析篇](03-源码分析篇/) | 10篇 | 关键文件的逐行代码解析 | | 🔌 [插件开发篇](04-插件开发篇/) | 5篇 | 从入门到发布的完整实战指南 | | 💬 [会话篇](05-会话篇/) | 1篇 | Context设计与会话管理机制 | --- ## 🏗️ 设计思想篇 (D1-D5) > [📁 进入目录](01-设计思想篇/) | 编号 | 标题 | 链接 | |------|------|------| | D1 | 为什么又来一个AI编程助手?OpenCode的诞生故事 | [阅读 →](01-设计思想篇/D1-为什么又来一个AI编程助手.md) | | D2 | 41个模块的交响乐——OpenCode架构全景图 | [阅读 →](01-设计思想篇/D2-41个模块的交响乐.md) | | D3 | 七种Agent,七种武器——Agent类型学 | [阅读 →](01-设计思想篇/D3-Agent类型学.md) | | D4 | 插件帝国的基石——Hooks系统设计 | [阅读 →](01-设计思想篇/D4-Hooks系统设计.md) | | D5 | 权限的艺术——安全模型与信任边界 | [阅读 →](01-设计思想篇/D5-权限的艺术.md) | --- ## ⚙️ 核心原理篇 (C1-C10) > [📁 进入目录](02-核心原理篇/) | 编号 | 标题 | 链接 | |------|------|------| | C1 | Agent生命周期:从诞生到消亡的旅程 | [阅读 →](02-核心原理篇/C1-Agent生命周期.md) | | C2 | 工具调用机制:当AI需要动手时 | [阅读 →](02-核心原理篇/C2-工具调用机制.md) | | C3 | 会话管理:记忆的持久化艺术 | [阅读 →](02-核心原理篇/C3-会话管理.md) | | C4 | MCP协议:让工具生态无限扩展 | [阅读 →](02-核心原理篇/C4-MCP协议.md) | | C5 | 技能系统:AI的技能树与成长之路 | [阅读 →](02-核心原理篇/C5-技能系统.md) | | C6 | 权限系统:allow/deny/ask的三国演义 | [阅读 →](02-核心原理篇/C6-权限系统.md) | | C7 | 消息处理:从用户输入到AI响应 | [阅读 →](02-核心原理篇/C7-消息处理.md) | | C8 | LLM集成:流式响应与多模型支持 | [阅读 →](02-核心原理篇/C8-LLM集成.md) | | C9 | 事件总线:模块间的秘密通讯 | [阅读 →](02-核心原理篇/C9-事件总线.md) | | C10 | 配置系统:灵活性的源泉 | [阅读 →](02-核心原理篇/C10-配置系统.md) | --- ## 🔬 源码分析篇 (S1-S10) > [📁 进入目录](03-源码分析篇/) | 编号 | 标题 | 链接 | |------|------|------| | S1 | agent.ts深度游——Agent核心实现 | [阅读 →](03-源码分析篇/S1-Agent核心实现.md) | | S2 | tool/registry.ts——工具注册表揭秘 | [阅读 →](03-源码分析篇/S2-工具注册表.md) | | S3 | session/index.ts——会话管理核心 | [阅读 →](03-源码分析篇/S3-会话管理核心.md) | | S4 | mcp/index.ts——MCP协议实现 | [阅读 →](03-源码分析篇/S4-MCP协议实现.md) | | S5 | skill/skill.ts——技能加载机制 | [阅读 →](03-源码分析篇/S5-技能加载机制.md) | | S6 | permission/next.ts——权限评估引擎 | [阅读 →](03-源码分析篇/S6-权限评估引擎.md) | | S7 | acp/agent.ts——ACP协议深度解析 | [阅读 →](03-源码分析篇/S7-ACP协议深度解析.md) | | S8 | bus/bus-event.ts——事件总线实现 | [阅读 →](03-源码分析篇/S8-事件总线实现.md) | | S9 | storage/db.ts——数据库层设计 | [阅读 →](03-源码分析篇/S9-数据库层设计.md) | | S10 | cli/index.ts——CLI入口与命令系统 | [阅读 →](03-源码分析篇/S10-CLI入口与命令系统.md) | --- ## 🔌 插件开发篇 (P1-P5) > [📁 进入目录](04-插件开发篇/) | 编号 | 标题 | 链接 | |------|------|------| | P1 | 插件开发入门:Hello OpenCode | [阅读 →](04-插件开发篇/P1-插件开发入门.md) | | P2 | 自定义工具插件:扩展AI的能力边界 | [阅读 →](04-插件开发篇/P2-自定义工具插件.md) | | P3 | 认证插件开发:让AI安全登录 | [阅读 →](04-插件开发篇/P3-认证插件开发.md) | | P4 | 事件钩子插件:监听AI的一举一动 | [阅读 →](04-插件开发篇/P4-事件钩子插件.md) | | P5 | 发布你的插件:从本地到npm | [阅读 →](04-插件开发篇/P5-发布你的插件.md) | --- ## 💬 会话篇 (H1) > [📁 进入目录](05-会话篇/) | 编号 | 标题 | 链接 | |------|------|------| | H1 | Context上下文设计 —— 法典编写的艺术 | [阅读 →](05-会话篇/H1-Context上下文设计.md) | --- ## 📖 概念篇 ↔ 源码篇 对照阅读 概念篇(D/C系列)和源码篇(S系列)存在对应关系。建议先读概念篇理解设计意图,再读源码篇看具体实现: | 概念篇 | 主题 | 对应源码篇 | |--------|------|-----------| | D3 Agent类型学 | 7种Agent分类 | → S1 Agent核心实现 | | C1 Agent生命周期 | Agent创建→派生→终止 | → S1 Agent核心实现 | | C2 工具调用机制 | 工具调用5阶段流程 | → S2 工具注册表 | | C3 会话管理 | Session/Message/Part | → S3 会话管理核心 | | C4 MCP协议 | MCP三种传输与认证 | → S4 MCP协议实现 | | C5 技能系统 | SKILL.md与按需加载 | → S5 技能加载机制 | | C6 权限系统 | allow/deny/ask评估 | → S6 权限评估引擎 | | C9 事件总线 | 发布/订阅解耦 | → S8 事件总线实现 | --- ## 🎯 阅读建议 ### 新手入门路线 1. **D1** → 了解OpenCode是什么 2. **D2** → 建立架构全景认知 3. **C1** → 理解Agent核心概念 4. **P1** → 动手写第一个插件 ### 进阶开发者路线 1. **D3-D5** → 深入设计思想 2. **C2-C6** → 掌握核心机制 3. **S1-S10** → 源码级理解 4. **P2-P5** → 实战插件开发 ### 贡献者路线 1. **D2** → 架构全景图 2. **S1-S10** → 关键源码解析 3. **D4-D5** → 插件与权限设计 4. **P5** → 发布流程 --- ## 📝 文章特点 - **详细**:每篇18,000+字符,深入剖析 - **幽默**:用类比和故事让技术有趣 - **代码丰富**:大量真实源码示例 - **配图**:60+ PlantUML 架构图 --- ## 📊 统计信息 | 指标 | 数值 | |------|------| | 总字符数 | 818,886 | | 总文章数 | 30 篇 | | 平均篇幅 | 27,296 字符/篇 | | 配图数量 | 60+ 张 | --- ## 📖 PDF 版本 完整教程已编译为 PDF:[opencode-book.pdf](opencode-book.pdf) --- ## 📜 版权声明 本教程系列采用 [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) 许可协议。 --- *最后更新: 2025年5月*