Home

Context Hub —— 让 AI 真懂你整个项目(而且全在本机)

Hydite 用一套本地构建的项目语义索引,把"AI 理解代码"这件事从"读当前文件"升级成"读懂整个仓库"。代码、索引、推理全程不出本机。


绝大多数 AI 编辑器宣称"理解你的代码",做的事其实只有一件:把当前文件的几百行塞进 prompt

这套做法在小项目里凑合能用,但对真实工程来说远远不够。一个企业级仓库通常意味着:

  • 几千个文件、几十万行代码、几百个子模块。
  • 一个 API 的实现散落在 controller / service / repository / event handler 五个层。
  • 一个类型定义被 200 处引用,改它之前你想知道会炸哪里

Hydite 的 Context Hub 是为这种场景准备的:在你机器上本地构建一套项目级语义索引,让 Agent / Edit / Assistant 三个模式都能"真的看懂整个仓库"。代码、索引、推理全程不出本机

Context Hub 项目语义理解

1. Context Hub 解决什么问题#

把"AI 理解代码"细分成三种能力,对照看一下差距:

能力普通 AI 补全Hydite Context Hub
看懂当前文件
知道这个函数被谁调用❌ 多半瞎猜✅ 本地调用图直接给
理解一个跨模块的业务流✅ 顺着语义索引串起来
改一个公共类型前预判影响✅ 变更影响分析
项目超过模型上下文窗口❌ 截断✅ 只挑最相关的片段进上下文
做这一切时代码出本机吗多半要❌ 不出

一句话:普通工具是"读到哪算哪",Context Hub 是"心里有整张地图,知道去哪取哪段"。

2. 完全本地构建的项目语义索引#

Context Hub 最重要的特性是本地优先。打开一个项目,Hydite 会:

  1. 用一段轻量的本机内置模型,在你机器上为整个仓库构建语义索引。
  2. 索引文件只写到项目所在的本地目录(默认 .hydite/index/,可加进 .gitignore)。
  3. 文件改动时增量更新,不用每次重扫全仓库。
  4. 关掉 IDE,索引就静静躺在硬盘上;下次打开秒加载。
1
┌──────── 你的电脑 ────────┐
2
│ │
3
│ 源代码 │
4
│ │ │
5
│ ▼ │
6
│ 本机内置模型 ──→ 索引 │ ← 全过程不联网
7
│ │ (本地)│
8
│ ▼ │
9
│ Agent / Edit / Assistant 直接用
10
│ │
11
└──────────────────────────┘

没有"先上传到云端建索引"这种环节。 这件事很重要:

  • 涉密项目可以放心开 Context Hub,索引本身就是机密的一部分,留在本机最安全。
  • 不依赖网络,离线也能用 Agent 的全部跨文件能力。
  • 你是索引的唯一拥有者,删项目就等于删索引,没有云端残留。

3. Context Hub 索引的不只是文本#

很多 RAG 工具只把代码当"长字符串"切片。Context Hub 索引的维度更广:

维度索引内容Agent 用它做什么
语义片段函数 / 类 / 模块按语义边界切片找"做某件事"的代码,不靠关键词
符号 & 类型函数签名、类型、接口、导出表跨文件追踪定义、引用、实现
调用图谁调用谁、谁实现谁改函数前查影响、追踪调用链
测试关联实现 ↔ 测试用例的双向链接改一个函数自动找出对应测试
Git 历史文件 / 函数级最近变更解释"这块为什么这么写"
文档与注释README、注释、ADR、设计文档让 AI 用你团队的语言而非通用术语
设计稿(可选)Design Hub 里的画布与 token设计 ↔ 代码的语义对照
MCP 资源(可选)你接入的 MCP Server 暴露的资源把外部知识接进同一张语义图

索引一旦建好,所有维度都被串成同一张语义图。Agent 提一个问题,能同时拿到符号、调用关系、最近改动、关联测试、相关文档 —— 这才叫"懂你的项目"。

4. Agent / Edit / Assistant 怎么用 Context Hub#

三种模式调用方式不同,但都基于同一张索引:

4.1 Agent 模式#

Agent 走多步循环时,每一步都会主动从 Context Hub 拿最相关的上下文

  • 「实现这个 API」→ Context Hub 抽出 controller 模板、相关 DTO、对应测试样例。
  • 「重构这段代码」→ Context Hub 给出所有调用点 + 类型依赖。
  • 「修这个 bug」→ Context Hub 把堆栈里出现的每个函数的实现 + 最近改动一并塞进上下文。

Agent 的"参数手册"和"调用记忆"全部来自 Context Hub。

4.2 Edit 模式#

Edit 不会主动跑工具,但仍然吃 Context Hub 的索引:

  • 在选区上发起 Edit,Context Hub 自动把当前选区附近的类型定义、被调用的函数、关联的测试拉进上下文。
  • 你不用手动 @ 文件,Edit 自己知道哪几行有用。
  • 输出的 diff 会引用真实存在的符号,而不是模型臆想的 API。

4.3 Hydite Assistant#

Assistant 是常驻本地的轻量伙伴,问"这个函数干嘛的""这个 API 谁在用",它直接走 Context Hub 检索 → 本地模型解释,对话过程默认不出本机

5. 长上下文路由 —— 项目大也不慌#

当一次对话需要的上下文超过当前模型的窗口时,Context Hub 会做两层处理

  1. 语义压缩:从索引里只挑出最相关的 5%~10% 片段进上下文,而不是塞整个文件夹。
  2. 长上下文路由:你授权云端模型时,超长场景会自动路由到百万级窗口的模型(如 Gemini 3.1 / Kimi K2.6);高隐私模式下则用本机长窗口模型直接处理。

结果就是:项目再大,AI 也不会一边丢上下文一边瞎答。

6. 与三档隐私模式的关系#

Context Hub 与 Hydite 的隐私分级是协同设计的:

隐私模式索引构建索引存储检索行为适用
高隐私本机本机仅本机检索 + 仅本机模型解释金融 / 政企 / 涉密
标准本机本机本机检索 → 仅最小相关片段进云端 prompt大多数商业项目
企业自托管本机本机本机检索 → 推理走你部署的私有 Vtslx AO 网关受监管行业

注意三档索引构建本身永远在本机,差别只是"检索结果送给谁去回答"。

7. 手动控制索引#

Context Hub 默认开箱即用,但你也可以精细控制:

操作入口
强制重建索引命令面板:Hydite: Rebuild Project Index
暂停增量更新状态栏 → Context Hub → 暂停
排除目录项目根 .hydite/index.ignore(语法同 .gitignore
额外纳入目录.hydite/index.include(默认会忽略 node_modulesdist 等)
跨项目共享缓存全局设置 → Context Hub → 共享缓存目录(仍在本机)
查看索引大小状态栏 → Context Hub → 详情

Tips:典型的 50 万行项目,索引大小一般在源码体积的 5%~15%,构建时长在分钟级;之后是纯增量,几乎感知不到。

8. 常见问题#

Q:索引会不会偷偷上传? A:不会。 Context Hub 的索引只写到本地 .hydite/index/;任何"上云"动作都会走标准 / 企业自托管模式的明确流程,并且只发最相关的片段而非整个索引。高隐私模式下完全屏蔽云端。

Q:能不能多人共用索引? A:可以,但默认推荐每人本地一份。团队共享请走企业自托管:把 Context Hub 的检索缓存放到内网共享盘 / 私有对象存储里,由 Vtslx AO 网关统一访问。

Q:换分支会不会让索引失效? A:不会。Context Hub 感知 Git 状态,切分支只触发最小增量更新;改动量小的分支几乎瞬间切完。

Q:Monorepo 怎么办? A:默认整库一张索引,跨 package 的引用一样能追踪。如果只想索引部分 workspace,用 .hydite/index.include 显式列出即可。

Q:索引能不能变成搜索框? A:可以。Cmd/Ctrl + Shift + F 之外,Hydite 顶栏有语义搜索入口 —— 用"做某件事"这种自然语言去找,不需要记关键词。

Q:和 Agent Hub、Skills、MCP 是什么关系? A:Context Hub 是地基,所有人都在它上面跑。Agent 调用 Context Hub 取上下文,Skills 把 Context Hub 的检索结果作为参数,MCP 资源也会被拉进同一张语义图。

9. 下一步#

  • 想看 Agent 怎么基于 Context Hub 并行作业 → Agent Hub 指南(即将上线)
  • 想配置高隐私模式 / 自托管 → Privacy & Sandboxing 指南(即将上线)
  • 想看模式切换怎么用 → Agent vs Edit 模式