Digital Brain 知识模块实战:用 KNOWLEDGE.md 构建 Agent 驱动的第二大脑(bookmarks / learning / research 完整指南)
【免费下载链接】Agent-Skills-for-Context-EngineeringA comprehensive collection of Agent Skills for context engineering, multi-agent architectures, and production agent systems. Use when building, optimizing, or debugging agent systems that require effective context management.项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-Skills-for-Context-Engineering
本文聚焦 Agent Skills for Context Engineering 仓库中 digital-brain-skill 示例的知识模块(knowledge module),即以 examples/digital-brain-skill/knowledge/KNOWLEDGE.md 为总纲的个人知识库系统。你将掌握如何用bookmarks.jsonl、learning.yaml、competitors.md与research/目录组织个人研究、收藏与学习目标,并让 AI Agent 能按固定协议检索、综合并产出内容,最终落地一套“收藏→研究→学习→输出”的可自动化知识闭环。
模块定位:Digital Brain 中的“第二大脑”
Digital Brain 是一个面向创始人、创作者与构建者的结构化个人知识管理系统,其完整架构见 README.md,整体由五个互相独立、互不污染的领域模块组成:
| 模块 | 目录 | 职责 |
|---|---|---|
| 个人品牌 | identity/ | 声音、定位、价值观 |
| 内容创作 | content/ | 想法、草稿、发布流水线 |
| 知识库 | knowledge/ | 书签、研究、学习 |
| 人脉网络 | network/ | 联系人、关系、介绍 |
| 运营系统 | operations/ | 目标、任务、会议、指标 |
知识模块是其中“输入侧”的核心:它是研究、学习与信息组织的中枢,其模块级指令文件正是 KNOWLEDGE.md。该文件同时承担两个角色:既是给人看的模块说明(文件清单、数据 Schema、工作流),也是给 Agent 看的指令协议(<instructions>块)。从上下文工程角度看,这正是 README 所强调的渐进式披露(progressive disclosure)与模块分离原则在个人知识库上的具体化。
模块文件清单与职责
KNOWLEDGE.md 开篇即给出本模块的文件结构,这是 Agent 路由时首先要加载的表:
| 文件 | 格式 | 用途 |
|---|---|---|
bookmarks.jsonl | JSONL | 已保存的链接与资源 |
learning.yaml | YAML | 技能与学习目标 |
competitors.md | Markdown | 竞争格局 |
research/ | 文件夹 | 深度研究笔记 |
notes/ | 文件夹 | 快速捕获笔记 |
实际仓库中,知识模块目录为 examples/digital-brain-skill/knowledge/,包含bookmarks.jsonl(含 1 条 schema 头与 1 条示例)、learning.yaml(完整字段模板)、competitors.md(竞争情报模板)以及research/_template.md(研究笔记模板)。设计上遵循 file-formats.md 中定义的全局文件格式约定:JSONL 用于追加式日志、YAML 用于结构化配置、Markdown 用于叙事内容、XML 用于复杂提示词。
JSONL 通用约定:schema 头与 ID 生成
阅读 file-formats.md 可知,所有 JSONL 文件的第一行必须是 schema 定义行:
{"_schema": "schema_name", "_version": "1.0", "_description": "Purpose of this file"}该行在数据处理时会被跳过(见下文源码佐证),但用于文档化文件期望的结构。bookmarks.jsonl实际文件头为:
{"_schema": "bookmark", "_version": "1.0", "_description": "Saved resources and links. Append only. Use categories: ai_agents, building, growth, productivity, leadership, industry, personal"}同时,每条记录都应当使用统一的 ID 生成约定:{type}_{YYYYMMDD}_{HHMMSS}或{type}_{unique_slug},例如bm_20241229_120000、contact_johndoe。时间戳型 ID 保证了时序数据的唯一性,ID 在各自文件内必须唯一。
数据 Schema:Bookmark 条目完整字段
KNOWLEDGE.md 定义了收藏条目的核心 Schema,下面结合 file-formats.md 中的完整规范展开:
{ "id": "bm_YYYYMMDD_HHMMSS", "saved_at": "ISO8601", "url": "https://...", "title": "Page title", "source": "article|video|podcast|tool|tweet|paper", "category": "ai_agents|building|growth|productivity|leadership|industry|personal", "summary": "1-2 sentence summary", "key_insights": ["Insight 1", "Insight 2"], "status": "unread|read|reviewed|archived", "rating": 1-5, "tags": ["tag1", "tag2"] }各字段的语义与取值约束:
id:按bm_YYYYMMDD_HHMMSS约定生成,全文件唯一;saved_at:ISO8601 时间戳,脚本按它排序以取“最近收藏”;url/title:收藏的基本锚点,Agent 保存链接时必须捕获这两项(见 Agent 指令第 1 条);source:资源形态枚举,article|video|podcast|tool|tweet|paper,便于按媒体类型过滤;category:一级分类,必须取自固定枚举(见下节分类体系),保证跨文件统计口径一致;summary:1~2 句摘要,是后续检索与综合的最小信息单元;key_insights:要点数组,脚本会读取第一项作为“关键洞见”展示;status:生命周期状态unread|read|reviewed|archived,从“待读”到“已归档”;rating:1~5 分的个人评分,可空(null);tags:自由标签数组,用于细粒度检索与跨类目关联。
仓库中的示例条目(bookmarks.jsonl)以[PLACEHOLDER: ...]占位符呈现,用户在克隆模板后自行填充即可。占位符约定在 file-formats.md 中有统一说明:用[PLACEHOLDER: description]标记用户待填字段。
分类体系:七大类目
KNOWLEDGE.md 的<instructions>块规定了必须统一使用的分类枚举,这是 Agent 保存与检索时的一致化词汇表:
| 分类 | 含义 |
|---|---|
ai_agents | AI、Agent、自动化 |
building | 创业、产品、工程 |
growth | 营销、受众、内容 |
productivity | 系统、工具、工作流 |
leadership | 管理、团队、文化 |
industry | 市场趋势、竞争对手 |
personal | 健康、关系、生活 |
三条核心工作流
KNOWLEDGE.md 定义了三条可被 Agent 直接执行的操作流程,是模块的“行为规范”。
工作流一:保存资源(Saving a Resource)
- 以
status: "unread"追加到bookmarks.jsonl; - 补充
category与初始tags; - 稍后:阅读、写摘要、更新
status(unread → read → reviewed → archived)。
这套流程的关键在于**“先入档、后消化”**:收藏时只需最低成本的结构化捕获(URL、标题、分类),消化动作推迟到后续,符合追加式(append-only)数据原则,也避免打断当前上下文。
工作流二:研究项目(Research Projects)
- 为深度研究创建
research/[topic].md; - 关联相关书签(通过 ID、URL 或标题反向指向
bookmarks.jsonl); - 综合洞见(Synthesis);
- 提取内容创意(喂给
content/模块)。
research/_template.md为每次研究提供了标准骨架,包含元数据、研究问题、关键发现(每条带Source与Confidence置信度)、综合、内容创意、相关资源、未解问题与行动项,并在结尾注明“研究笔记是活文档,随学习不断更新”。元数据字段如下:
created: "[DATE]" updated: "[DATE]" status: "exploring|synthesizing|complete" related_pillars: ["[pillar1]", "[pillar2]"] content_potential: "high|medium|low"其中content_potential与related_pillars直接服务于“研究 → 权威内容”的知识图谱连接(见后文)。
工作流三:学习追踪(Learning Tracking)
- 在
learning.yaml中定义技能; - 将资源链接到技能;
- 跟踪进度与里程碑;
- 季度复盘。
深度实操:learning.yaml 字段全解析
learning.yaml是知识模块中的“技能与学习目标”结构化配置,仓库中的完整模板(learning.yaml)支持从当前焦点到学习习惯的全面跟踪:
current_focus: skill: "[PLACEHOLDER: e.g., AI Agent Development]" why: "[PLACEHOLDER: Why this is important now]" target_level: "[PLACEHOLDER: e.g., Build production agents]" deadline: "[PLACEHOLDER: Target date]" skills: - name: "[PLACEHOLDER: e.g., Python]" category: "technical|creative|business|personal" current_level: "beginner|intermediate|advanced|expert" target_level: "[PLACEHOLDER]" status: "learning|practicing|maintaining" resources: - type: "course|book|tutorial|project" title: "[PLACEHOLDER]" url: "[PLACEHOLDER]" status: "not_started|in_progress|completed" notes: "[PLACEHOLDER]" milestones: - "[PLACEHOLDER: e.g., Build first CLI tool]" - "[PLACEHOLDER: e.g., Contribute to open source]" last_practiced: "[DATE]" learning_queue: - title: "[PLACEHOLDER]" type: "course|book|video|article" url: "[PLACEHOLDER]" priority: "high|medium|low" skill: "[PLACEHOLDER: Related skill]" estimated_time: "[PLACEHOLDER: e.g., 10 hours]" added: "[DATE]" completed: - title: "[PLACEHOLDER]" type: "[PLACEHOLDER]" completed: "[DATE]" rating: 1-5 key_takeaways: - "[PLACEHOLDER]" applied_to: "[PLACEHOLDER: How you used this knowledge]" learning_habits: daily_time: "[PLACEHOLDER: e.g., 30 minutes]" best_time: "[PLACEHOLDER: e.g., 6am before work]" preferred_formats: - "[PLACEHOLDER: e.g., Video tutorials]" quarterly_review: last_review: "[DATE]" skills_improved: - "[PLACEHOLDER]" skills_to_focus: - "[PLACEHOLDER]" resources_to_complete: - "[PLACEHOLDER]"结构分层与取值约束:
current_focus:当前唯一学习焦点(技能、动机、目标水平、截止日期),Agent 在做检索排序时可优先匹配该焦点;skills[].category:technical|creative|business|personal四类;current_level:beginner|intermediate|advanced|expert;status:learning|practicing|maintaining;skills[].resources[]:资源类型course|book|tutorial|project,完成状态not_started|in_progress|completed——这构成了“学习 → 品牌中要突出的技能”的图谱连接;learning_queue:待消费资源队列,带优先级与预估耗时;completed:已完成记录,含评分与关键收获,且要求记录applied_to(知识如何被实际使用);learning_habits/quarterly_review:学习习惯元数据与季度复盘状态,支撑“Review quarterly”工作流。
深度实操:competitors.md 竞争情报模板
competitors.md(查看完整模板)是知识模块中的竞争格局文件,结构上覆盖:直接竞争者(每位含 YAML 元数据、做得好/短板/差异点)、间接竞争者表格、灵感对象(非竞争者)、市场趋势(增长/衰退/新兴)、定位矩阵(技术深度 × 可及性二维图)、竞争优势(独家优势与市场缺口)。其价值在于为内容差异化提供依据——对应知识图谱中的“Competitors → Differentiation angles”连接。
Agent 指令协议:Agent 管理知识的五条规则
KNOWLEDGE.md 的<instructions>块是写给 Agent 的行为协议,必须完整继承到你的个人副本中:
- 保存链接(Saving links):始终捕获 URL、标题和初始分类;
- 组织(Organizing):使用一致的分类和标签;
- 检索(Retrieving):按分类、标签或关键词搜索
bookmarks.jsonl; - 综合(Synthesizing):被问及某个主题时,先查
research/文件夹; - 学习更新(Learning updates):完成资源时更新
learning.yaml。
这五条规则的价值在于把“零散收藏”变成“可检索、可综合、可学习”的结构化资产,同时约束 Agent 不要凭印象作答,而是先检索本地知识库。
知识图谱提示:模块间的四类连接
KNOWLEDGE.md 末尾给出检索时的图谱连接提示,是知识模块与整个 Digital Brain 联动的枢纽:
- Bookmarks → Content ideas:收藏转化为内容创意;
- Research → Authority pieces:研究沉淀为权威作品;
- Learning → Skills to highlight in brand:学习成果成为品牌亮点;
- Competitors → Differentiation angles:竞争情报生成差异化角度。
从架构上看,这些连接把knowledge/与content/(创意、草稿)、identity/(品牌)打通,形成“输入侧滋养输出侧”的闭环。
源码佐证:脚本如何消费知识模块
知识模块不只被 Agent 手工读取,还通过agents/scripts/下的自动化脚本被程序化消费。以 content_ideas.py 为例,其核心逻辑展示了bookmarks.jsonl的实际读取方式:
load_jsonl()逐行解析,跳过_schema头行(if '_schema' not in data),与 file-formats.md 的 schema 行约定一一对应;get_recent_bookmarks(category=None)读取knowledge/bookmarks.jsonl,可按category过滤、按saved_at倒序取最近 10 条;generate_suggestions()将“最近研究主题”直接输出为内容建议,并读取每条key_insights[0]作为关键洞见——印证了category、saved_at、key_insights字段的语义。
同理,idea_to_draft.py 通过find_related_bookmarks()以标签交集或分类匹配方式,从bookmarks.jsonl为草稿检索支撑证据(Supporting Evidence),再结合同 pillar 的历史帖子生成草稿脚手架。可见一致化的字段约束(category/tags)是脚本可编程消费的前提,这也是 KNOWLEDGE.md 反复强调“使用一致的分类和标签”的根本原因。
端到端示例:从收藏到内容的完整链路
结合 content-workflow.md 可以看清知识模块在实际创作流程中的位置:当用户要求“写一条关于 in public 构建经验的线程”时,Agent 会先加载identity/voice.md与identity/brand.md确认主题与声音,再扫描content/posts.jsonl参考历史表现、检查content/ideas.jsonl待开发想法,最终套用content/templates/thread.md生成草稿并做声音对齐检查。整个流程约消耗650 tokens,而全量加载整个脑约需 5000 tokens——这正是渐进式披露带来的上下文成本优势。知识模块在其中负责“供给素材”:收藏的研究主题、书签洞见与研究笔记会在content_ideas.py等脚本中被转译为内容建议。
设计原则与上手步骤
Digital Brain 的整体设计原则(README.md)同样约束知识模块:渐进式披露(只加载当前任务所需)、追加式数据(永不删除,保留历史供模式分析)、模块分离(各领域独立)、声音优先(生成内容前必读 voice.md)、平台无关(兼容 Claude Code、Cursor 等任何 AI 助手)。关于这些原则与仓库中各上下文工程技能的对应关系,可查阅 SKILLS-MAPPING.md。
上手建议按以下顺序初始化知识模块:
- 用
bookmarks.jsonl的 schema 头与示例条目为模板,定义自己的分类与标签习惯; - 参照
learning.yaml模板填写当前焦点与 1~2 个技能条目; - 首次深度研究时复制
research/_template.md为research/[topic].md; - 有竞品分析需求时按
competitors.md模板建档; - 之后即可让 Agent 依据 KNOWLEDGE.md 的
<instructions>五条规则接管日常的保存、检索、综合与学习更新。
小结
knowledge/模块的价值不在于文件多,而在于协议的统一:固定枚举的分类、带 schema 头的 JSONL、统一的 ID 约定、可复用的研究模板,以及明确写给 Agent 的操作规则。正是这些约定让个人知识库既能被人轻松维护,又能被 Agent 与脚本程序化消费,从而真正成为“第二大脑”。
【免费下载链接】Agent-Skills-for-Context-EngineeringA comprehensive collection of Agent Skills for context engineering, multi-agent architectures, and production agent systems. Use when building, optimizing, or debugging agent systems that require effective context management.项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-Skills-for-Context-Engineering
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考