Community生产力与协作github.com

知识同步增强版

跨本地文件、Claude Code 记忆、MCP 记忆、数据存储、GitHub、Linear 和 Git 仓库存储、排序、同步、查找和删除重复知识。

知识同步增强版 是什么?

该技能为 AI 代理(如 Claude Code、Codex 等)提供一套完整的知识管理策略。它定义了多层存储体系,从短期活动工作源(如 GitHub、Linear)到长期知识库、MCP 语义记忆以及本地笔记,每个事实都被分配一个“主要仓库”,其他仓库仅保存简短注释和链接,从而避免冗余和冲突。核心工作流程包括读取和分类信息、在多个存储层中搜索匹配项、处理重复和冲突(优先保留更新或更权威的来源),最终安全地写入并更新索引。该技能强调安全性:绝不保存密钥、密码或令牌,禁止在未获用户明确许可的情况下进行提交、推送或外部调用。它支持同步聊天记录、工作区状态和 GitHub/Linear 数据,并提供了详细的边缘情况处理规则,例如对无日期、所有者不明、文件过大或内容可能涉密的情况给出了明确指示。最终,所有操作都会经过最终检查,以确保没有创建重复项、每个事实都有唯一的“家”、所有记录均已回读确认,并且向用户报告了所有更改和跳过项及其原因。

兼容平台✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/agenticluke/knowledge-sync-plus/tree/main/skill

Installed? Explore more 生产力与协作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

知识操作

跨多个存储管理知识。

为每个事实指定一个主要仓库。其他存储可以保存简短注释,并附带指向该主要仓库的链接。

何时使用此技能

当用户希望:

  • 将事实或笔记保存到知识库。
  • 导入文件、聊天记录或数据集。
  • 在存储之间同步知识。
  • 查找或合并重复笔记。
  • 搜索关于某个主题的已知事实。
  • 更新共享的事实来源。
  • 执行比简单记忆查找更复杂的操作时,使用此技能。

主要规则

  • 将代码工作保留在真实克隆的仓库中。
  • 将进行中的计划和状态放在 GitHub、Linear 或仓库中。
  • 将不适合同代码一起存放的长篇笔记放于代码仓库之外。
  • 将长期的、跨设备的笔记放入知识库。
  • 创建之前先搜索。
  • 不要为同一事实创建两个主要副本。
  • 除非用户要求并且所需的工具已经设置好,否则不要进行外部调用。
  • 绝不要保存密钥、密码、令牌、Cookie 或私有登录数据。
  • 除非用户要求或已批准该步骤,否则不要提交或推送。
  • 不要用旧笔记替换新的事实。

存储层

1. 活动工作源

示例:

  • GitHub 问题、拉取请求、讨论和发布说明
  • Linear 问题、项目和文档
  • 真实项目仓库中的文件

用于以下场景:

  • 当前计划
  • 路线图
  • 发布状态
  • 部署状态
  • 构建和代码工作

如果一个事实涉及活跃工作,请先更新此层。

2. Claude Code 记忆

路径:

~/.claude/projects/*/memory/

使用带有 YAML 前言段的简短 Markdown 文件。

用于以下场景:

  • 用户偏好
  • 用户反馈
  • 小型项目事实
  • 简短参考笔记
  • 后续对话中需要的事实

不要假设此路径存在或可以更改。请先进行检查。

3. MCP 记忆

常用工具:

  • create_entities
  • create_relations
  • add_observations
  • search_nodes

用于以下场景:

  • 命名的人物、团队、工具和项目
  • 这些项目之间的关联
  • 希望以后易于搜索的事实

使用当前 MCP 服务器上准确的工具名称。如果没有设置记忆服务器,则跳过此层并说明原因。

4. 知识库仓库

用于以下场景:

  • 长期笔记
  • 会话导出
  • 联合研究
  • 操作手册
  • 长文档

这是非项目代码内容的主要跨设备存储。

5. 数据存储

示例:

  • Supabase
  • PostgreSQL

用于以下场景:

  • 大量行数据
  • 大量文档集
  • 全文搜索
  • 需要 SQL 的数据

在记忆中仅保留简短摘要和记录 ID。

6. 本地笔记和归档

用于以下场景:

  • 供人阅读的笔记
  • 旧计划
  • 本地媒体列表
  • 短期非代码文件

不要将其用作第二个代码仓库或活动计划的主要仓库。

选择主要仓库

使用此指南:

知识类型主要仓库可选副本
当前计划、发布或代码状态GitHub、Linear 或项目仓库简短记忆笔记
业务决策项目记忆或知识库MCP 记忆
用户偏好或反馈Claude Code 记忆MCP 记忆
小型参考事实Claude Code 记忆MCP 记忆
大型文档集数据存储或知识库简短记忆摘要
聊天或会话导出知识库仓库简短记忆摘要
本地短期笔记本地归档无

如果两个选项都合适,请选择拥有该工作的存储。从另一个存储添加链接,而不是复制完整文本。

导入步骤

1. 读取和分类

找出:

  • 来源
  • 主题
  • 日期
  • 所有者
  • 事实是否是最新的
  • 文本是否包含机密信息
  • 最佳的主要仓库

不要导入您无法读取或信任的文本。将不确定的事实标记为不确定。

2. 搜索匹配项

在写入之前:

  • 搜索记忆文件。
  • 若 MCP 记忆已设置,则进行搜索。
  • 搜索知识库。
  • 当 GitHub 或 Linear 可能拥有该事实时,进行检查。
  • 当使用目标数据存储时,进行检查。

按主题、名称、日期、ID 和来源链接进行匹配。

3. 处理副本和冲突

如果存在相同事实:

  • 更新主要记录。
  • 添加新的来源链接或日期。
  • 保留有用的历史记录。
  • 仅在安全的情况下删除或标记过时的副本。

如果两个来源不一致:

  • 不要猜测。
  • 保留两个主张及其日期和来源。
  • 仅当新来源明确拥有该事实时才优先选择它。
  • 当选择会更改工作或删除数据时,询问用户。

4. 保存

仅写入属于范围且可用的存储。

  • 当活动工作发生变化时,首先更新活动工作源。
  • 保持 Claude Code 记忆简短。
  • 使用 MCP 记忆存储事实和链接。
  • 将长文本放入知识库。
  • 将大型数据集放入数据存储。
  • 在已知时添加来源、日期和所有者。

如果某个存储缺失或为只读,则不保存任何内容。报告无法完成的操作。

5. 更新索引

更新用于查找新项目的任何主题列表、会话列表或摘要文件。

使用小写 kebab-case 文件名,例如:

release-plan-2026-05.md

6. 检查结果

回读每个更改过的记录。确保链接、日期和名称正确无误。

同步工作

同步聊天记录

对于 Claude、Codex 或其他聊天导出:

  1. 删除机密信息和私有登录数据。
  2. 保留来源名称和日期。
  3. 将完整导出保存到知识库。
  4. 向记忆中添加简短摘要。
  5. 更新会话索引。
  6. 仅在用户批准后提交和推送。

同步工作区状态

对于关键文件和设置:

  1. 创建文件夹映射。
  2. 仅复制有用的、非机密的事实。
  3. 删除密钥、令牌、密码、Cookie 和私有路径。
  4. 记录来源和日期。
  5. 随时间跟踪更改。

不要将整个活动的代码文件夹复制到归档中。

同步 GitHub 或 Linear

当事实涉及活动工作时:

  1. 找到拥有该工作的项目。
  2. 首先更新该项目。
  3. 根据需要添加支持文档。
  4. 仅当能提供额外价值时才添加本地笔记。
  5. 将笔记链接回主要项目。

同步多个来源

对于聊天记录、书签、GitHub 事件或其他来源:

  1. 按主题对项目进行分组。
  2. 删除完全重复和近似重复的内容。
  3. 保留来源链接和日期。
  4. 编写一条清晰的状态说明。
  5. 将其保存在主要仓库中。
  6. 仅在用户批准后提交和推送。

记忆模式

短期:
使用当前任务列表管理本次聊天中的工作。

中期:
使用 ~/.claude/projects/*/memory/ 中的简短文件。

长期:
使用 GitHub 或 Linear 管理活动工作。
使用知识库管理长篇笔记。

关联事实:
使用 MCP 记忆管理项目、事实和链接。

知识文件格式

---
title: 发布计划
type: project
topics:
  - release
  - mobile-app
source: https://example.com/item/123
updated: 2026-05-12
status: current
---

# 发布计划

简短事实放在这里。

## 链接

- 主要工作项:URL 或文件路径

仅使用有帮助的字段。使用 ISO 日期格式 YYYY-MM-DD。将 status 设置为 current、stale、archived 或 unclear。

具体示例

用户请求:

保存以下信息:移动应用发布从 6 月 1 日推迟到 6 月 15 日。GitHub 问题 42 管理发布计划。

步骤:

  1. 在 GitHub、记忆、MCP 记忆和知识库中搜索发布计划。
  2. 打开问题 42 并确认它是主要工作项。
  3. 如果允许,将问题 42 的日期更新为 6 月 15 日。
  4. 更新旧的记忆笔记,而不是创建新的。
  5. 添加 MCP 事实说明发布日期是 6 月 15 日,并将其链接到问题 42。
  6. 将任何 6 月 1 日的笔记标记为过时。仅当旧日期是有用的历史记录时才保留它。
  7. 回读保存的日期和链接。
  8. 报告每个更改的存储和任何跳过的存储。

如果用户仅要求审查或搜索,则不要更新 GitHub。

边缘情况

  • 如果来源没有日期,则说明日期未知。
  • 如果所有者不明确,在更改活动计划之前先询问。
  • 如果文件太大,将其存储在知识库或数据存储中,并保留一条简短的记忆笔记。
  • 如果两个项目同名,使用 ID、链接、所有者和日期来区分它们。
  • 如果内容可能涉及隐私,则保存最少的必需信息。
  • 如果发现机密信息,请将其排除。不要复制或打印。
  • 如果写入部分失败,不要声称同步完成。列出成功和失败的操作。
  • 如果保存会删除有用的历史记录,请先归档或询问。
  • 如果没有安全的主要仓库,请询问用户应将其放在何处。
  • 如果同一事实必须出现在两个存储中,请将完整文本保留在一个存储中。在另一个存储中放一条简短的注释和链接。

最终检查

在结束之前,确认:

  • 没有创建新的重复项。
  • 每个事实都有唯一的主要仓库。
  • 旧事实已更新或标记为过时。
  • 没有保存或打印机密信息。
  • 日期、名称、ID 和链接正确无误。
  • 索引和摘要是最新的。
  • 在有用的情况下添加了交叉链接。
  • 所有更改过的记录均已回读。
  • 未经批准,没有进行提交、推送或外部写入。
  • 告知用户哪些内容已更改、哪些内容被跳过及其原因。

相关技能