无$.psi\\rangle$
目的: 多代理存储系统的内容可寻址基底——BLAKE3散列、不可变存储,具有Merkle DAG来源、评分和MCP集成。用于外部化LLM内存、沿袭和遍历控制的基础架构层。
每个工件(代码、推理、分数)都经过BLAKE3散列、重复数据消除,并存储在一个不可变的内容寻址存储中,该存储具有一个可查询的SQL镜像,由 笨蛋。专为来源、谱系和评分很重要的多代理工作流而构建。
Ket实现了中描述的基板架构 *分布式认知协调的内容寻址自适应知识库* (Joven,2026)——一种用于LLM推理失败的系统层方法,将内存持久性、来源和遍历控制外部化到确定性、内容寻址的基础设施中。本文的核心原语(Merkle DAG节点、深度评分、分层操作、增量链和定点收敛)直接映射到ket的crate架构;完整映射见论文第9.2节。
建筑
┌─────────────────────────────────────────────────────┐
│ ket-cli │
│ 22 commands, --json output │
├──────────┬──────────┬───────────┬───────────────────┤
│ ket-mcp │ket-agent │ ket-score │ ket-cdom │
│ 16 tools │ tasks │ 4 dims │ tree-sitter │
│ JSON-RPC │ routing │ auto/peer │ Rust + Python │
├──────────┼──────────┴───────────┴───────────────────┤
│ ket-opt │ WQS binary search · tier allocation │
│ calibrate│ Lagrangian relaxation · provenance │
├──────────┴──────────────────────────────────────────┤
│ ket-dag │
│ Merkle DAG · lineage · soft links │
├─────────────────────────────────────────────────────┤
│ ket-cas │ ket-sql │
│ BLAKE3 flat-file blobs │ Dolt versioned SQL │
└─────────────────────────────┴───────────────────────┘双存储模式 -CAS是真理的永恒源泉;Dolt SQL是可查询的、版本化的镜像。A. repair 如果他们偏离正道,指挥部就会和解。
工作区板条箱
| 板条箱 | 用途 |
|---|---|
| 凯特猫 | BLAKE3内容寻址blob存储区(.ket/cas/) |
| 市场行情 | Merkle DAG用于来源——父链、软链接、进出口捆绑 |
| ket sql | Dolt SQL包装器——9个表、版本化提交、沿袭查询 |
| 市场mcp | MCP服务器(stdio JSON-RPC)为Claude和其他代理提供了16个工具。Dolt是可选的-CAS-only工具在没有它的情况下工作 |
| 市场代理 | 多代理编排——任务生命周期、子流程生成、上下文注入 |
| 市场得分 | 评分引擎——正确性、效率、风格、完整性——通过自动评分 cargo build/test/clippy |
| 市场选择 | WQS二分搜索优化器——DAG节点间计算层分配的拉格朗日松弛 |
| 市场cdom | 代码文档对象模型——Rust和Python符号提取的树型解析 |
| ket cli | 包含22个命令的CLI二进制文件 |
| 市场 | 用于CAS和DAG操作的PyO3 Python绑定 |
入门指南
三个层次——从最低限度开始,在需要时添加功能。
第1层:Just ket(不依赖Rust)
内容寻址代理内存所需的一切:存储、DAG、沿袭、漂移检测、MCP服务器。 16个MCP工具中有13个在这一层工作。
# Build
cargo build --release
# Initialize a ket store
ket init
# Store a file and get its content ID
ket put myfile.rs
# Create a DAG node with lineage
ket dag create "initial reasoning" --kind reasoning --agent claude
# Track a file for drift detection
ket track add src/main.rs --agent claude
ket drift
# Start the MCP server (for Claude integration)
ket mcp
# Scan code symbols
ket scan src/lib.rs
ket cdom "parse"先决条件: Rust(稳定版,2021年版)。就这样
第二层:添加Docker(评分、任务、SQL查询)
Docker在容器中运行Dolt——你永远不会直接安装它。这将解锁评分、任务委派、SQL查询和校准。 所有16个MCP工具。
# Start the Dolt sidecar
docker compose --profile full up -d dolt
# Sync CAS → SQL
ket repair
# Now scoring and tasks work
ket agent register claude
ket task create "Implement auth module" --by claude
ket scores auto --agent claude --dir .
ket calibrate run --max-cost 50先决条件: Rust+Docker。
第3层:完整的Docker(不需要Rust)
在容器中运行所有内容。适合在不安装Rust的情况下尝试ket。
# Build the image
docker compose build
# Initialize a ket store
docker compose run --rm ket init
# Store a file (mount your project into /data)
docker compose run --rm -v "$PWD":/data/project ket put /data/project/myfile.rs
# DAG operations
docker compose run --rm ket dag create "initial reasoning" --kind reasoning --agent claude
docker compose run --rm ket dag ls
docker compose run --rm ket status这 /data 销量会在不同批次之间持续存在。添加Dolt侧三轮 docker compose --profile full up -d dolt.
CLI命令
内容商店
ket init--初始化.ket目录ket put--存储文件,返回CIDket get--按CID检索内容ket verify--检查完整性ket cas-stats--店铺规模细分ket gc [--delete]--垃圾收集孤立斑点
DAG和谱系
ket dag create--创建节点(--kind,--parent,--agent)ket dag ls/ket dag show--列出/检查节点ket dag lineage--追踪祖先链- `ket dag drift
` --检测文件漂移
ket link create--软链接(取代、矛盾等)ket merge --parents ...--多父合并节点ket dot [--root ]--Graphviz DOT可视化ket export/ket import--便携式DAG捆绑包
任务和代理
ket task create/ket task ls/ket task assign- `ket agent register
/ ket agent ls`
ket run--通过代理子流程执行任务
代码智能
- `ket scan
` --索引符号(Rust/Python)
ket cdom [path]--搜索提取的符号ket search--全文内容搜索
评分
ket scores add--创纪录得分(--dim,--value,--agent)ket scores show--节点得分ket scores profile--代理平均值ket scores route--维度的最佳代理ket scores auto--自动评分(构建/测试/剪辑)
校准
ket calibrate run--WQS优化层分配(--max-cost,--max-depth,--max-tier3)ket calibrate inspect--读回存储的校准ket calibrate history--子树的所有校准
运营
ket sql--针对Dolt的原始SQLket log [-n ]--突变日志ket status--健康仪表板ket history/ket diff--Dolt版本历史ket repair [--dry-run]-从CAS重建SQLket track add/ls/rm--文件漂移跟踪
全球旗帜
- `--home
以(权力)否决 .ket 目录(env: KET_HOME`)
--json--结构化JSON输出
MCP集成
Ket通过MCP(模型上下文协议)公开了16个用于代理集成的工具。
Dolt是可选的。 MCP服务器仅从CAS开始-16个工具中有13个在没有Dolt的情况下工作。只有评分、任务和校准需要它。
| 工具 | 它做什么 | 需要Dolt吗? |
|---|---|---|
ket_put | 存储内容,获取CID | 否 |
ket_get | 按CID检索内容 | 否 |
ket_verify | 检查CID完整性 | 否 |
ket_dag_link | 创建具有来源的DAG节点 | 否 |
ket_dag_lineage | 追踪祖先链 | 否 |
ket_dag_ls | 列出/过滤DAG节点 | 否 |
ket_check_drift | 检测文件更改 | 否 |
ket_search | 全文内容搜索 | 否 |
ket_status | 基质健康仪表板 | 否(通过Dolt增强) |
ket_store_reasoning | 将推理作为DAG节点进行持久化 | 否 |
ket_get_reasoning | 根据上下文检索推理 | 否 |
ket_query_cdom | 搜索代码符号 | 否 |
ket_schema_stats | 检查架构数据消除的有效性 | 否 |
ket_score | 记录质量分数 | 是 |
ket_create_subtask | 将工作委托给代理人 | 是 |
ket_calibrate | 优化遍历层 | 是 |
添加到您的Claude MCP配置中:
{
"mcpServers": {
"ket": {
"command": "ket",
"args": ["mcp"]
}
}
}设计原则
- 内容解决了所有问题 --相同的内容=相同的CID。确定性、重复性、不可变。
- 默认来源 --每个工件都通过Merkle DAG链接到其父级。
- 双存储器 -CAS用于真理,SQL用于查询。两者都可以重建另一个。
- 记分门路线 --通过4个维度的历史评估,系统可以了解哪个代理最擅长什么。
- 漂移检测 --跟踪的文件会根据需要重新散列,以防止过时的推理上下文。
- 便携式捆绑包 --DAG子图可以跨实例导出和导入。
- 架构链接,而非架构强制 --见下文。
模式和重复数据消除
Ket的CAS通过内容哈希消除重复:相同的字节产生相同的CID。这是精确的dedup,而不是语义dedup。两个斑点 *意思是* 相同的东西,但不同之处在于尾随换行符或键顺序,得到不同的CID。
模式解决了这个问题,而没有将市场拉到情报线之上。
运作原理
模式是存储在CAS JSON模式、结构定义、提示模板和纯英语描述中的任何blob。Ket不会解释它。创建DAG节点时,您需要附加架构的CID:
# Store your schema
SCHEMA_CID=$(ket put my_schema.json)
# Create a node whose output conforms to it
ket dag create "structured observation" \
--kind memory --agent claude --schema $SCHEMA_CID这 schema_cid 节点上的字段记录输出的形状 *索赔* 拥有。这就是合同。执法是你的问题。
为什么这有助于除尘
当语义等效的数据产生字节相同的输出时,内容哈希去重工作。模式通过约束表面积来实现这一点:排序键、规范格式、仅必填字段、无可选噪声。如果代理符合模式,则等效的观测值也会对其进行哈希运算。
市场提供什么
schema_cid在每个节点上 --可选,存储在DAG中,可查询。- 架构统计信息 --给定模式CID,计算总节点数与唯一输出CID。如果它们相等,则模式不会产生dedup。如果它们出现分歧,那就是。这是一个纯粹的哈希计数查询,不需要语义理解。
- 通过来源传播 --当模式演变时,DAG会使爆炸半径可见。查询所有具有旧模式CID的节点,跟踪其沿袭,显式迁移。
市场不提供什么
- 摄取时的架构验证。Ket不会拒绝不合格的数据。
- 模式格式意见。JSON Schema、protobuf、TOML--ket不在乎。
- 语义错误。如果两个blob表示相同的东西,但具有不同的字节,则它们会得到不同的CID。模式的工作是防止这种情况发生。
基板保持在情报线以下。模式是一种用户端规程,它使内容寻址层更难为您工作。
许可证
麻省理工学院
