Skip to content

Latest commit

 

History

History
161 lines (116 loc) · 8.5 KB

File metadata and controls

161 lines (116 loc) · 8.5 KB

组件体系详解(四):组件索引、长尾组件与目录映射

返回总目录

上一章:平台能力组件

1. 本章导读

前面三章已经覆盖了组件体系的主干与关键组件族。本章补齐两个目的:

  1. 对没有展开长篇分析的组件目录与顶层组件做归类说明。
  2. 给后续源码复核提供一个按目录跳转的索引。

2. 顶层独立组件的分组理解

src/components/ 根目录下还有大量不属于子目录家族的独立组件,可以按职责分成几组。

2.1 工作台壳层与状态条

代表文件:

这一组负责把消息区之外的“外框层”拼起来。

2.2 输入基础件

代表文件:

这些组件为 PromptInput 提供更底层的可组合输入能力。

2.3 检索、选择与导航弹层

代表文件:

这组组件把长会话和多资源环境中的查找行为显式产品化了。

2.4 展示与渲染辅助

代表文件:

它们让终端中显示 markdown、表格、diff、代码、tool loader 成为可复用能力。

2.5 生命周期、远程与恢复类弹窗

代表文件:

这一组体现的是“会话恢复、远程环境、切换与退出”能力。

2.6 更新、告警与入门提示

代表文件:

它们负责将安装、升级、配置问题与使用风险反馈给用户。

3. 目录级索引

下表给出 src/components/ 主要目录的用途摘要,便于按目录复核源码。

目录 作用 备注
agents agent 列表、详情、编辑、创建向导 平台控制面核心之一
PromptInput 输入编排、建议、通知、footer Messages 并列主中枢
messages 各类消息叶子渲染器 消息协议层
permissions 工具审批与规则 UI 文件数最多
tasks 后台任务列表与详情 多类任务统一视图
mcp MCP 服务与工具管理 transport/auth/tool 三层视图
teams teammate/swarm 控制台 面向多 agent 协作
memory memory 文件与通知入口 对接 user/project/auto/team/agent memory
skills skills 浏览器 按 source 聚合
hooks hooks 配置浏览器 只读浏览
sandbox sandbox 设置与 doctor 运行环境子系统
Settings 状态、配置、用量 Tabs 式设置页
design-system Dialog、Tabs、Theme 等基础件 自建终端设计系统
CustomSelect 选择器组件基座 多处复用
wizard 向导容器与导航 agent 创建等场景复用
ui TreeSelect、OrderedList 等通用件 辅助构件
shell shell 输出展开与时间显示 服务于消息/任务
Spinner spinner 变体 细粒度状态反馈

4. 其他值得注意的长尾目录

还有一些文件量不大,但具有明确产品含义的目录:

这些目录虽然不是工作台主干,但它们把产品、策略、推广、帮助等非核心能力也纳入了统一终端 UI 体系。

5. 如何复核“每个组件及其子组件”

如果需要继续做细粒度源码复核,建议按下面顺序阅读:

  1. 先看 App.tsxMessages.tsxPromptInput/PromptInput.tsx
  2. 再看各主中枢对应的子目录:messagesPromptInput
  3. 然后按平台能力顺序查看:permissionsagentsmcptasksteams
  4. 最后看支撑层:design-systemwizarduisrc/hookssrc/contextsrc/state

这个顺序能够先抓住主干,再逐步下钻到子组件与辅助构件。

6. 本章小结

组件索引层面的结论是:

  • src/components/ 不是零散堆组件,而是按“会话主干 + 平台控制面 + 设计系统 + 长尾功能”组织。
  • 大部分复杂度集中在消息、输入、权限、agent、MCP、任务、团队几个主题上。
  • 长尾组件虽然分散,但基本都能挂回到这几个主题,不存在明显失控的孤岛目录。