Self-Improving Agent
一个面向 Automation 场景的 Agent 技能。原始说明:Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Clau...
一个面向 Automation 场景的 Agent 技能。原始说明:Knowledge Graph + Trust Verification System for AI agents. Build personal or team knowledge bases with verifiable trust chains. Tracks: Who said it? Who veri...
name: knowtrust-graph
description: "Knowledge Graph + Trust Verification System for AI agents. Build personal or team knowledge bases with verifiable trust chains. Tracks: Who said it? Who verified? How? Still valid? 知信动态图谱—知识管理+可信任验证链。低依赖,CLI直调,OpenClaw/Claude Code通用。"
metadata:
version: "1.3.3"
updated: "2026-05-15"
owner: "Win-ClaudeCode + WSL-OpenClaw"
| 场景 (Scenario) | 触发词 (Trigger Phrase) |
|----------------|------------------------|
| 管理个人知识笔记 | "整理到 KnowTrust"、"录入 KG"、"记录一下"、"save to knowledge graph" |
| 验证知识可靠性 | "这个可信吗"、"verify this"、"check trust"、"验证一下" |
| 搜索知识 | "查 KnowTrust X"、"search KG"、"知识图谱查"、"knowtrust search" |
| 导入文档 | "这段文档录入"、"import to KG"、"extract knowledge" |
| 团队知识共享 | "团队知识库"、"team knowledge"、"shared knowledge" |
| 冷热归档管理 | "归档"、"archive"、"cold storage"、"历史知识" |
设计模式:人主 AI 辅 — 人类决策确认,AI/智能体协助整理、关联、验证提醒。
适用智能体:任何支持 Python 环境和 CLI 调用的 AI 智能体系统(OpenClaw、Claude Code、其他 Agent 框架等均可加载使用)。
核心定义:知识 (Know) + 可信任的验证 (Trust) → 动态化图谱 (Graph)
依赖:仅 Python 标准库(sqlite3, json, argparse, uuid, datetime)+ 可选 Ollama 嵌入。低依赖设计——标准库为主,Ollama 为可选扩展。
本规范是智能体无关的独立工具规范。任何 AI 智能体只要满足以下条件即可加载:
python3 ~/.zhixin/kg.py <command>)~/.zhixin/zhixin.db)无需修改即可在以下系统中使用:
智能体只需定义工具调用规范,映射到 python3 ~/.zhixin/kg.py <command>:
{
"name": "zhixin-add-fact",
"description": "向知信图谱添加一条事实(知识陈述)",
"parameters": {
"entity_name": "string (关联实体名称)",
"content": "string (事实内容)",
"fact_type": "string (knowledge/opinion/decision/status/constraint)",
"source_name": "string (来源名称,可选)",
"verification": "string (unverified/self_checked,可选,默认unverified)"
},
"command": "python3 ~/.zhixin/kg.py add-fact '<json>'"
}
当用户表达以下意图时,智能体应介入执行知识提取:
| 用户意图 (User Intent) | 智能体动作 (Agent Action) |
|----------------------|-------------------------|
| "把这些整理到 KnowTrust" (Organize into KnowTrust) | 分析当前对话/文档,提取实体/关系/事实 → 预览 → 用户确认 → 批量写入 |
| "查 KnowTrust X" (Search KnowTrust for X) | 搜索 KG,返回相关知识 + 可信任状态 |
| "X 在 KnowTrust 里怎么验证的" (How is X verified?) | 展示 X 相关事实的完整验证链 (Show verification chain) |
| "这段文档录入 KnowTrust" (Import this document) | 分析文档内容,提取结构化知识 |
提取确认流程:
智能体 分析对话/文档
→ 输出预览:
📦 实体 (3个): 张三(person), 项目A(project), FastAPI(tool)
🔗 关系 (2条): 张三 works_on 项目A, 项目A depends_on FastAPI
📝 事实 (5条): [全部默认 unverified,标注来源]
→ 用户审查:确认/修改/删除
→ 智能体 批量调用 kg.py 写入
→ 输出摘要:"新增3实体2关系5事实,其中2条待验证"
提取 JSON 格式定义与更多场景示例见 references/ai-extraction-guide.md。
| 维度 | 含义 (Meaning) | 核心问题 (Core Question) |
|------|----------------|-------------------------|
| 知 (Know) | 知识信息 (Knowledge) | "我们知道了什么?" (What do we know?) |
| 信 (Trust) | 可信任的验证 (Verifiable Trust) | "凭什么信?谁验证过?" (Why trust? Who verified?) |
关键洞察 (Key Insight):知信图谱不是"知识库+信任打分"的两层分离结构,而是知识与验证在同一图谱中动态交织 (dynamically interwoven)。一条知识被验证后,它的"可信任状态"随之演化——图谱实时反映"什么已知且可信"。
| 原则 (Principle) | 含义 (Meaning) |
|-----------------|----------------|
| 人主AI辅 (Human-led, AI-assisted) | 人类做决策和确认,AI/智能体协助整理、关联、检查。不自动写入 |
| 验证可追溯 (Verifiable Traceability) | 每条知识可追溯到"谁说的→谁验证的→怎么验证的→是否仍有效" (who said → who verified → how → is it still valid) |
| 低依赖 (Low Dependency) | SQLite + Python 标准库,无向量数据库、无外部服务(可选 Ollama 嵌入) |
| 渐进复杂度 (Progressive Complexity) | 个人使用 7 表;团队使用扩展分支。2 可选向量表 |
| 文件共享 (File-based Sharing) | JSON 导出/导入实现团队同步,不依赖网络服务 |
| 动态演化 (Dynamic Evolution) | 知识状态随验证行为变化,图谱是活的不是静态快照 |
| 术语 | 含义 |
|------|------|
| 实体 (Entity) | 知识节点:人、项目、概念、工具、事件、文档、组织 |
| 关系 (Relation) | 实体间的有向边:workson / knows / dependson / contains / created_by |
| 事实 (Fact) | 附着于实体的知识原子:一条陈述 + 验证链 |
| 信息源 (Source) | "谁说的" — 事实的来源,有人工评定的可信度 |
| 验证链 (Verification Chain) | 信息源 → 验证行为 → 验证方法 → 有效期限 → 团队共识 |
| 验证状态 (Verification State) | 动态状态:unverified → selfchecked → peerreviewed → external_confirmed |
| 标注 (Annotation) | 团队成员对事实的确认/质疑/澄清/更新 — 验证行为的记录 |
| 分支 (Branch) | 知识隔离单元,不同项目/团队使用不同分支 |
| 冷热分层 (Hot-Cold Tiering) | 热库(活跃可写)和冷库(历史档案可查可唤醒),默认 6 个月过期归档 |
正文为核心流程与概念。以下细节按需读取:
| 文件 | 内容 | 何时读 |
|------|------|--------|
| references/schema.md | 7 表 DDL + 索引 + 视图 | 需要直接操作数据库时 |
| references/trust-engine.md | 验证引擎详解、状态机源码 | 调试可信任度计算时 |
| references/usage-patterns.md | 4 种使用模式完整示例 | 需要更多场景示例时 |
| references/ai-extraction-guide.md | AI 提取 JSON 格式定义 + 场景示例 | 实现 AI 辅助提取时 |
| 类型 (Type) | 中文示例 (Example) |
|-----------|------------------|
| person | 张三、Alice |
| project | KnowTrust 开发、Q3 营销计划 |
| concept | 验证链模型 (Verification Chain Model)、敏捷开发 (Agile) |
| tool | kg.py、Figma |
| event | 2026-05-10 项目启动会 |
| document | 需求规格说明书 v2 |
| org | 产品部、XX 公司 |
| 类型 (Type) | 含义 (Meaning) | 示例 (Example) |
|-----------|---------------|---------------|
| works_on | 参与/负责 (Works on, responsible for) | 张三 works_on KnowTrust |
| knows | 认识/了解 (Knows, understands) | 张三 knows 机器学习 (Machine Learning) |
| depends_on | 依赖 (Depends on) | KnowTrust depends_on SQLite |
| contains | 包含 (Contains) | Q3 计划 contains 市场调研 (Market Research) |
| created_by | 由...创建 (Created by) | kg.py created_by 张三 |
| related_to | 一般关联 (Generally related) | 项目A related_to 项目B |
| before / after | 时序 (Temporal order) | 需求评审 (Requirements Review) before 开发启动 (Dev Start) |
| 类型 (Type) | 含义 (Meaning) | 有效期特征 (Freshness) |
|-----------|---------------|-----------------------|
| knowledge | 客观知识 (Objective Knowledge) | 长期—除非被证伪 (Long-term, until falsified) |
| opinion | 个人观点 (Personal Opinion) | 可能变化,需标注持有者 (Volatile, track holder) |
| decision | 决策记录 (Decision Record) | 长期—历史记录 (Permanent, historical) |
| status | 状态信息 (Status Update) | 短中期,需定期更新 (Short-medium term, refresh) |
| constraint | 约束条件 (Constraint) | 持续有效直到解除 (Active until lifted) |
知信图谱的"信"不只是一个分数,而是一条可追溯的验证链:
信息源 → 源可信度 → 验证行为 → 验证方法 → 有效期限 → 团队共识
(Source) (Reliability) (Verified?) (How verified?) (Still valid?) (Consensus?)
(谁说的) (此人可靠吗) (核实过吗) (怎么核实的) (过期了吗) (别人认可吗)
每条事实有一个动态状态,随验证行为自动切换:
| 状态 (State) | 含义 (Meaning) | 触发 (Trigger) |
|-------------|----------------|----------------|
| unverified | 未验证,仅供参考 (Unverified, for reference only) | 新录入默认 (Default for new entries) |
| self_checked | 录入者自查过 (Self-checked by author) | --verify <id> --level self_checked |
| peer_reviewed | 团队成员复核过 (Peer reviewed) | 至少 1 人标注 confirm (≥1 confirm) |
| external_confirmed | 外部权威确认 (External authority confirmed) | --verify <id> --level external_confirmed |
| disputed | 存在质疑 (Disputed/challenged) | 有人标注 dispute |
| outdated | 已过期 (Expired, needs refresh) | fresh_until 超期未续 |
| consensus | 团队共识 (Team consensus) | ≥3 人标注 confirm |
当需要量化比较时:
Verifiability = 0.30 × SourceReliability + 0.35 × VerificationDepth
+ 0.20 × Freshness + 0.15 × ConsensusRatio
| 维度 (Dimension) | 权重 (Weight) | 取值逻辑 (Logic) |
|-----------------|--------------|-----------------|
| 源可靠性 (Source Reliability) | 30% | sources 人工评定 (Human-rated) |
| 验证深度 (Verification Depth) | 35% | unverified=0, selfchecked=0.3, peerreviewed=0.7, external_confirmed=1.0 |
| 新鲜度 (Freshness) | 20% | 有效期内=1.0, 过期每 30 天 -0.1, ≥300 天=0 |
| 共识度 (Consensus Ratio) | 15% | confirm/(confirm+dispute), 无标注=0.5 |
场景:管理个人项目知识、学习笔记、决策记录。
python3 ~/.zhixin/kg.py init
python3 ~/.zhixin/kg.py add-entity '{"name":"张三","type":"person","description":"后端开发"}'
python3 ~/.zhixin/kg.py add-fact '{"entity_name":"我的项目","content":"使用Python 3.12和FastAPI","fact_type":"knowledge","source_name":"我自己","verification":"self_checked"}'
python3 ~/.zhixin/kg.py search "FastAPI"
python3 ~/.zhixin/kg.py entity "我的项目"
python3 ~/.zhixin/kg.py stale --type unverified
更多场景示例见 references/usage-patterns.md。
场景:3-10 人团队共享项目信息,跟踪决策和知识状态。
python3 ~/.zhixin/kg.py branch create '{"name":"team-alpha","description":"Alpha团队知识库"}'
python3 ~/.zhixin/kg.py verify <fact_id> --level peer_reviewed
python3 ~/.zhixin/kg.py annotate '{"fact_id":"<id>","annotator":"李四","type":"confirm","content":"已核实"}'
python3 ~/.zhixin/kg.py check-report --entity "核心决策"
python3 ~/.zhixin/kg.py stale --days 7
python3 ~/.zhixin/kg.py export > team-kg.json
python3 ~/.zhixin/kg.py import team-kg.json
完整团队协作流程见 references/usage-patterns.md。
| 命令 | 说明 |
|------|------|
| init | 初始化数据库(~/.zhixin/zhixin.db) |
| stats | 数据库统计概览 |
| 命令 | 说明 |
|------|------|
| add-entity <JSON> | 添加实体 |
| add-fact <JSON> | 添加事实 |
| add-relation <JSON> | 添加关系 |
| add-source <JSON> | 注册信息源 |
| update-fact <id> <JSON> | 更新事实内容 |
| 命令 | 说明 |
|------|------|
| search <keyword> | 全文搜索实体和事实 |
| entity <name> | 查看实体详情(含关联事实和关系) |
| traverse <name> [--depth N] | 关系图遍历 |
| recent [--days N] | 最近 N 天的更新 |
| 命令 | 说明 |
|------|------|
| verify <id> --level <L> | 更新验证深度(selfchecked / peerreviewed / external_confirmed) |
| annotate <JSON> | 添加标注(确认/质疑/澄清) |
| check <id> | 查看单条事实的验证链与可信任状态 |
| check-report [--entity NAME] | 实体关联事实的可信任全景 |
| stale [--days N] [--state STATE] | 过期/未验证事实列表 |
| 命令 | 说明 |
|------|------|
| archive [--months N] [--dry-run] | 将过期 N 个月(默认6)的事实从热库搬到冷库 |
| archive-list [--entity NAME] [--limit N] | 列出冷库中的归档事实 |
| cold-search <keyword> | 同时搜索热库 + 冷库,合并返回 |
| wake <fact_id> | 将冷库事实唤醒回热库,自动重置 fresh_until 为 +90天 |
| 命令 | 说明 |
|------|------|
| branch create/list | 分支管理 |
| export [--branch ID] | 导出 JSON |
| import <file> | 导入 JSON(冲突项交互确认) |
[Ollama])需要本地运行 Ollama。非必选,无 Ollama 时 keyword 搜索始终可用。
| 命令 | 说明 |
|------|------|
| embed [--target entities\|facts] [--model NAME] | 为实体/事实生成向量嵌入 |
| semantic <query> [--target facts\|entities] [--top-k N] [--model NAME] | 语义向量搜索 |
使用流程:
# 1. 确保 Ollama 运行中(有 embedding 模型即可)
# 2. 生成向量嵌入
python3 ~/.zhixin/kg.py embed # 为所有实体生成嵌入
python3 ~/.zhixin/kg.py embed --target facts # 为所有事实生成嵌入
# 3. 语义搜索
python3 ~/.zhixin/kg.py semantic "数据库技术选型"
python3 ~/.zhixin/kg.py semantic "性能瓶颈" --top-k 5
1. --add-fact 录入(默认 unverified)
2. 录入者 --verify self_checked(自查)
3. 队友 --annotate confirm(复核)
4. 状态自动变为 peer_reviewed
5. 多人 confirm → 状态变为 consensus
1. 用户:"把今天会议讨论的内容整理到 KnowTrust" (Organize today's meeting into KnowTrust)
2. 智能体 分析对话 → 输出结构化预览(实体/关系/事实)
3. 用户确认/修改 → 智能体 批量调用 kg.py 写入
4. 所有新事实默认 unverified,提示用户后续验证
1. 定期 --stale --days 7 查看即将过期的事实
2. 对过期的:update-fact 更新内容 + 延长 fresh_until
3. 对仍有效的:update-fact 直接延长 fresh_until
当知识持续积累,过期事实会拖慢查询并干扰可信度判断。
冷热分层将知识分为热库(活跃知识)和冷库(历史档案):
1. 定期 --archive --dry-run 预览待归档事实
2. --archive 执行归档(默认6个月过期阈值)
3. 归档的事实仍在冷库中可查询:--cold-search
4. 需要时 --wake <id> 唤醒回热库(fresh_until 自动重置为 +90天)
5. --archive-list 查看冷库清单
6. --stats 显示冷热库统计
设计哲学:归档 ≠ 删除。冷库是可查询的历史档案,被唤醒的事实重获新生。
人决定什么时候归档(通过 --archive),什么时候唤醒(通过 --wake)。
AI/智能体协助发现和提醒(通过 --stale 和 --cold-search)。
阈值调整:
# 更快归档(3个月过期阈值)
kg.py archive --months 3
# 更保守(12个月过期阈值)
kg.py archive --months 12 --dry-run # 先预览
python3 ~/.zhixin/kg.py stats 确认数据库状态;检查文件 ~/.zhixin/zhixin.db 是否存在且可读写database is locked → 等 2 秒重试,不要强行杀进程;持续锁定则检查是否有其他进程持有写锁search 始终可用chcp 65001| 问题 | 修复版本 | 影响 |
|------|---------|------|
| add-fact 不自动设置 fresh_until → 默认 +90 天 | v1.2.x | ✅ 关闭 |
| stale --type 歧义 → 改为 --state | v1.2.x | ✅ 关闭 |
| verify 拒绝 "unverified" 状态 → 校验层级 | v1.2.x | ✅ 关闭 |
| freshuntil 无格式校验 → storefact 入口校验 | v1.2.x | ✅ 关闭 |
| 过期事实无冷热分层 → archive/cold-search/wake | v1.3.0 | ✅ 新增 |
| 方向 | 描述 |
|------|------|
| 摘要压缩归档 | archive --summarize:AI 合并多条过期事实为一条摘要入冷库 |
| 冷库自清理 | 冷库中超过 2 年且从未被唤醒的事实 → 自动摘要压缩后删除 |
| 批量唤醒 | wake --entity NAME 一次唤醒某实体的全部冷库事实 |
| 自动过期提醒 | 智能体在对话中主动提示 "X 条事实即将过期,是否归档?"
| 内容 | 协议 | 文件 |
|------|------|------|
| 代码 (kg.py) | MIT | LICENSE |
| 文档 (SKILL.md, references/) | CC BY 4.0 | LICENSE-docs |
MIT: 随便用,保留版权声明即可。CC BY 4.0: 随便用,署名即可。均不限制商用。
| 来源 | 内容 |
|------|------|
| Ronie 决策 | 以泛智图谱为基础框架,去除内部专用和复杂结构部分,规划知信图谱 |
| Ronie 决策 | 知=知识信息,信=可信任的验证,二者组合为动态化图谱 |
| Ronie 决策 | 面向个人/小团队信息共享,广泛适用 |
| 泛智图谱贡献 | entity→relation→fact 核心模型、分支概念、CLI 设计模式 |
| Win-ClaudeCode 设计 | 验证链模型、动态验证状态、人主 AI 辅模式、AI 辅助提取流程 |
| WSL-OpenClaw 改写 | 通用智能体适配、智能体集成指南、代码审计 |