Skip to content

Claude Code 源码文档 - 其他模块

版本: 2.1.88 | 覆盖: hooks, ink, buddy, remote, screens, voice, vim, memdir, migrations, constants, types, coordinator

1. Hooks 系统 (src/hooks/)

104 个自定义 React Hook 文件,是 Claude Code 终端 UI 的核心逻辑层。

关键 Hook 示例:

  • useCanUseTool - 工具权限检查
  • useSettingsChange - 设置变更监听
  • 以及大量 UI 交互 Hook

2. Ink 终端 UI (src/ink/)

96 个文件,基于 Ink 的终端 React 渲染引擎。

  • 自定义 Ink 渲染器
  • 终端布局组件
  • ANSI 输出处理
  • 焦点管理、键盘导航

3. Buddy 系统 (src/buddy/)

Claude Code 的吉祥物/伴侣系统:

文件职责
CompanionSprite.tsx精灵动画渲染
companion.ts伴侣逻辑
prompt.ts伴侣提示词
sprites.ts精灵定义
types.ts类型
useBuddyNotification.tsx通知 Hook

4. Remote 远程会话 (src/remote/)

文件职责
RemoteSessionManager.ts远程会话管理
remotePermissionBridge.ts远程权限桥接
sdkMessageAdapter.tsSDK 消息适配
SessionsWebSocket.tsWebSocket 会话

5. Screens 屏幕 (src/screens/)

文件屏幕
REPL.tsx主 REPL 交互界面
Doctor.tsx诊断界面
ResumeConversation.tsx恢复对话

6. Voice 语音 (src/voice/)

文件职责
voiceModeEnabled.ts语音模式启用检测

语音功能大部分在 services/voice.tsservices/voiceStreamSTT.tsservices/voiceKeyterms.ts 中。

7. Vim 模式 (src/vim/)

终端 Vim 键绑定支持:

文件功能
motions.ts移动命令
operators.ts操作命令
textObjects.ts文本对象
transitions.ts模式转换
types.ts类型定义

8. Memdir 记忆目录 (src/memdir/)

管理 Claude Code 的记忆/知识文件:

文件职责
memdir.ts记忆目录核心逻辑
findRelevantMemories.ts查找相关记忆
memoryAge.ts记忆老化
memoryScan.ts记忆扫描
memoryTypes.ts记忆类型
paths.ts记忆文件路径
teamMemPaths.ts团队记忆路径
teamMemPrompts.ts团队记忆提示

9. Migrations 数据迁移 (src/migrations/)

版本升级时的自动迁移:

文件迁移内容
migrateAutoUpdatesToSettings.ts自动更新设置迁移
migrateBypassPermissionsAcceptedToSettings.ts权限绕过设置迁移
migrateEnableAllProjectMcpServersToSettings.tsMCP 服务器设置迁移
migrateFennecToOpus.tsFennec→Opus 模型迁移
migrateLegacyOpusToCurrent.ts旧版 Opus 迁移
migrateOpusToOpus1m.tsOpus→Opus1m 迁移
migrateReplBridgeEnabledToRemoteControlAtStartup.tsBridge→Remote 迁移
migrateSonnet1mToSonnet45.tsSonnet1m→Sonnet4.5 迁移
migrateSonnet45ToSonnet46.tsSonnet4.5→Sonnet4.6 迁移
resetAutoModeOptInForDefaultOffer.ts自动模式重置
resetProToOpusDefault.tsPro→Opus 默认重置

10. Constants 常量 (src/constants/)

文件内容
apiLimits.tsAPI 限制
betas.tsBeta 功能
common.ts公共常量
cyberRiskInstruction.ts安全风险指令
errorIds.ts错误 ID
figures.ts图标字符
files.ts文件相关常量
github-app.tsGitHub App 常量
keys.ts快捷键
messages.ts消息常量
oauth.tsOAuth 常量
outputStyles.ts输出样式
product.ts产品信息
prompts.ts提示词常量
spinnerVerbs.ts加载动画动词
systemPromptSections.ts系统提示词段落
system.ts系统常量
toolLimits.ts工具限制
tools.ts工具常量
turnCompletionVerbs.ts回合完成动词
xml.tsXML 标签常量

11. Types 类型 (src/types/)

文件类型内容
command.ts命令类型
hooks.tsHook 类型
ids.tsID 类型
logs.ts日志类型
permissions.ts权限类型
plugin.ts插件类型
textInputTypes.ts文本输入类型
generated/自动生成的类型(事件、protobuf)

12. Coordinator (src/coordinator/)

文件职责
coordinatorMode.ts协调者模式(多Agent协作时的中央协调)

MIT