《Java编程思想》以深入浅出、理论与实践结合著称,本书将采用类似结构:
- 工具驱动的人工智能编程范式
- CLI作为AI Agent的最佳载体
- 终端UI的复兴与创新
- AI应用开发者
- CLI工具开发者
- TypeScript/React进阶学习者
- 架构设计爱好者
- 如何阅读本书
- 源码学习方法
- 实践建议
- main.tsx的结构分析
- 启动时的性能优化策略
- 依赖管理和模块加载
- 配置系统的初始化
- Tool.ts:工具系统的类型定义
- Task.ts:任务系统的抽象设计
- 状态管理基础
- 类型系统的设计哲学
- QueryEngine.ts的设计
- 查询的构建与执行
- 查询结果的处理
- 查询系统的扩展性
- commands.ts的组织结构
- 命令的定义与分类
- 命令的参数解析
- 命令与工具的协作
- buildTool函数解析
- 工具Schema定义(Zod应用)
- 工具的生命周期
- 工具注册机制
- FileReadTool:文件读取的设计
- FileWriteTool:文件写入的复杂性
- FileEditTool:增量编辑的实现
- GlobTool & GrepTool:搜索工具
- AskUserQuestionTool:用户交互
- SkillTool:技能系统
- AgentTool:Agent系统
- WebFetchTool:网络获取
- WebSearchTool:网络搜索
- MCPTool:MCP协议集成
- TaskCreateTool:任务创建
- TaskGetTool & TaskUpdateTool:任务管理
- TaskOutputTool:任务输出处理
- 为什么选择React式终端UI
- Ink与React的异同
- 组件模型的移植
- ink.tsx核心组件
- components目录结构
- 组件的生命周期
- 组件的渲染流程
- layout目录分析
- Yoga布局算法
- 终端布局的挑战与解决方案
- render-to-screen.ts解析
- ANSI转义序列处理
- 文本节点的渲染优化
- 键盘事件处理
- 终端焦点状态
- 事件流的组织
- TaskType的设计
- TaskStatus的状态转换
- 任务上下文(TaskContext)
- 任务ID生成机制
- LocalShellTask:Shell命令执行
- LocalAgentTask:本地Agent
- 任务的生命周期管理
- RemoteAgentTask:远程Agent
- InProcessTeammateTask:队友任务
- 远程任务的通信机制
- 任务的状态同步
- AbortController的应用
- 任务的清理机制
- components目录的组织
- 组件的复用模式
- 组件的分类(对话框、状态、输入等)
- AppState的设计
- 不可变性模式的实现
- 状态的订阅与响应
- interactiveHelpers.tsx分析
- dialogLaunchers.tsx的对话框系统
- 用户输入的处理流程
- hooks目录的设计
- 自定义Hook的实现
- Hook的最佳实践
- vim目录分析
- motions、operators、transitions
- Vim模式的状态管理
- history.ts的设计
- sessionHistory.ts会话历史
- 历史的持久化
- cost-tracker.ts分析
- API调用的成本计算
- 成本优化策略
- permissions目录设计
- 权限的检查流程
- 权限的配置管理
- skills目录组织
- 技能的加载与执行
- 技能的扩展机制
- MCP协议概述
- mcp服务的设计
- MCP工具的实现
- 核心文件快速查找表
- 重要函数索引
- 工具系统中使用的模式
- 任务系统中使用的模式
- UI系统中使用的模式
- 工具开发最佳实践
- 组件开发最佳实践
- 任务开发最佳实践
- Claude Code术语解释
- AI Agent术语
- CLI开发术语
- 深入浅出:每个概念都要有清晰的解释和实际的代码示例
- 理论与实践结合:不仅解释"是什么",更要解释"为什么这样设计"
- 层层递进:从简单概念到复杂系统,循序渐进
- 代码驱动:每个章节都要有大量源码分析,不是空谈理论
- 图表辅助:使用架构图、流程图、状态图等可视化手段
- 对比分析:与传统方法对比,展示Claude Code的创新之处
This repository is not affiliated with, endorsed by, or maintained by Anthropic.