设计系统
Claude Code 的视觉设计系统包括主题、颜色和输出样式。
主题系统
typescript
// 主题定义(src/utils/theme.ts)— 扁平结构,64 个 string 字段
type Theme = {
// 基础 UI 色
autoAccept: string
bashBorder: string
claude: string
claudeShimmer: string
permission: string
permissionShimmer: string
planMode: string
ide: string
promptBorder: string
text: string
inverseText: string
inactive: string
subtle: string
suggestion: string
remember: string
background: string
// 语义色
success: string
error: string
warning: string
merged: string
// Diff 色
diffAdded: string
diffRemoved: string
diffAddedDimmed: string
diffRemovedDimmed: string
diffAddedWord: string
diffRemovedWord: string
// Agent 色 (子代理专用)
red_FOR_SUBAGENTS_ONLY: string
blue_FOR_SUBAGENTS_ONLY: string
// ... 共 8 种子代理颜色
// TUI V2 色
clawd_body: string
userMessageBackground: string
// ... 更多 UI 色
// 彩虹色 (ultrathink 关键词高亮)
rainbow_red: string
// ... 共 7 色 + shimmer 变体
}颜色差异引擎
typescript
// native-ts/color-diff/ — highlight.js 差异渲染的 TypeScript 移植
// 不包含独立的 nearestColor256 函数
// 终端颜色适配由 Ink 框架内部处理输出样式
typescript
// outputStyles/ — 输出格式化
// 输出样式定义在 src/constants/outputStyles.js 中
// 控制代码块、diff、消息等的渲染方式Markdown 渲染
Markdown 渲染通过 Markdown.tsx 组件完成(<Markdown text={content} />),无独立的 renderMarkdown 函数。
终端适配
终端能力检测由 Ink 框架内部处理,无独立的 TerminalCapabilities 接口。颜色支持、Unicode 支持等通过环境变量和终端检测自动适配。