mcpField
P
personal-crm

personal-crm

github.com/inkeep生产力14112 次安装1 天前更新
代码仓库

关于 personal-crm

personal-crm 是基于 Markdown 的类型化实体资料库,用于从会议记录和原创内容维护档案。它采用兼容 GBrain 的结构,安装外部 gbrain CLI 后可进行互操作。

主要功能

  1. 01人物、公司和概念档案
  2. 02将汇总信息与日期时间线分开
  3. 03导入会议记录并提取实体
  4. 04跨文件夹验证 Markdown 链接
  5. 05可选的 gbrain 导入与同步

适用场景

  1. 01持续维护联系人和公司记录
  2. 02从会议中提取实体与证据
  3. 03记录带日期的证据且不改写历史
  4. 04使用 gbrain 导入或同步资料库

MCP 相关

该 skill 说明可将已注册的会议记录 MCP 服务与 OpenKnowledge MCP 服务配合,从中获取近期会议并写入资料库。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/inkeep/open-knowledge-skills --skill personal-crm

安装后在 Claude Code 中输入/personal-crm确认已加载。

附带文件plugin.json

详细介绍

Personal CRM(兼容 GBrain)——如何在此工作

一个以类型化实体库为基础的 Personal CRM,灵感来自 Garry Tan 的 gbrain。每个实体都是一份档案;Agent 会从会议记录和原创思考中提取实体,持续更新档案。此技能规定了这些行为,让模板和文件夹说明保持简洁。Markdown 结构兼容 GBrain:如果安装了外部 gbrain CLI,它可以导入/同步同一个资料库。

此技能提供的是操作指南。平台的 /open-knowledge 技能(读取/写入/预览/链接/依据规则)仍适用于所有 Markdown 操作——本技能在此基础上补充档案约定。

档案约定(核心规则)

people/、companies/ 和 concepts/ 中的每份档案都分为两部分,并以明确的 --- timeline --- 分隔:

  1. 汇总事实(--- timeline --- 上方)——你当前的最佳理解。随着新证据改变综合判断,重写此部分。
  2. 时间线(--- timeline --- 下方)——只追加带日期的条目,格式可解析为 - **YYYY-MM-DD** | source | @author — evidence. Confidence: …。绝不要编辑已有的时间线条目;只能追加。

有新事实时,应判断其归属:如果它改变了当前理解,就更新汇总事实;如果它是原始证据,就追加一条时间线条目。明确的分隔符和带日期条目的格式,是确保 GBrain 能解析资料库并进行导入/同步的关键。

文件夹

  • people/、companies/、concepts/——档案(汇总事实 + 时间线)。Frontmatter 中的 type: person|company|concept。
  • meetings/——会议记录(YYYY-MM-DD-<slug>.md);attendees: 应与 people/ 中的档案文件名一致。原始记录——切勿改写。通过会议录制工具导入记录时,请在其 frontmatter 中添加 source:(例如 granola、fireflies)和 source_meeting_id:(录制工具提供的稳定 ID)——这两项共同构成去重键。
  • originals/——未经转换的原创思考;权威源材料。Frontmatter 中的 type: original。
  • media/——批量转录文本、语音笔记、大型附件;通常会加入 .okignore,以减轻索引负担。

链接

按照平台技能的规定,新建档案时优先使用标准 Markdown 链接;此资料库中的跨文件夹链接很多,请仔细计算相对层级——例如,从 meetings/ 中的记录链接到 [Alice Chen](../people/alice-chen.md),从 people/ 中的档案链接到 [Acme AI](../companies/acme-ai.md)。写入/编辑操作返回的 brokenLinks 会在你离开前发现层级错误的路径。新的 brain 页面可在 GitHub 上正常呈现,通过 OK 的 brokenLinks 检查,并能顺利导入 GBrain。

以下两项与平台默认规则不同,均为 GBrain 特有:

  • 不要使用以斜杠开头的根绝对路径形式([Alice](/people/alice-chen.md))。OK 可以正确解析,但 GBrain 会将开头的 / 视为绝对文件系统路径并拒绝——请使用相对路径。(GBrain 也接受不带 ../ 的 [Alice](people/alice-chen.md),但在子文件夹中,OK 会将其解析为相对于源文件所在目录的路径——meetings/people/alice-chen,并报告为失效链接,因此请使用经 ../ 校正的相对路径;两者都能接受这种写法。)
  • 带路径的 wikilink 在这里是首选格式,并非旧式写法:[[people/alice-chen|Alice Chen]] 会从任意文件夹解析到资料库根目录(无需计算 ../),会像其他链接一样通过 brokenLinks 验证,也能导入 GBrain。建议使用不带扩展名的目标([[people/alice-chen]]),以保持 wiki 链接风格一致;OK 也能解析明确带有 .md 和 .mdx 后缀的链接。不带文件夹的裸 [[note-name]] 存在歧义(仅当启用 GBrain 的 basename-globbing 时才能解析)——请将其留给 Obsidian 迁移使用。

Agent 行为

  • 从会议录音工具导入。 如果注册了会议录音 MCP(Granola、Fireflies、Circleback、tl;dv、Fathom 等),并且同时注册了 OpenKnowledge MCP 服务,则拉取近期会议,并将每场会议写入 meetings/。使用 meetings/<source>-<source_meeting_id> 作为每场会议的路径,这样重新同步时会原位更新会议,而不是创建重复项。将录音工具返回的内容(Granola 的 Me/Them 对话流、机器人按发言者划分的对话轮次等)规范化为笔记和逐字转录;切勿改写转录内容。无论按需(由你发起)还是无人值守(由调度器发起),操作方式都相同——录音工具由你自行提供,且可互换。
  • 会议笔记写入后,提取其中提及的实体,并为每个被引用的档案追加时间线条目(通过 Markdown 链接引用会议)。尚未收录的实体若被提及,则为其创建存根。
  • 将 originals/ 视为权威来源(即用户自己的原话,而非推断)。
  • 如果实体之间的关联两端都已存在,则显示这些关联(人物 ↔ 公司、概念枢纽)。

gbrain CLI(可选)

此工具包提供 Markdown 部分(文件夹、模板和此技能);OK 是驾驶舱/编辑/审核层。如果已安装外部 gbrain CLI(~/.gbrain/),则可通过它添加定时增强功能:gbrain dream(夜间维护)、gbrain briefing、gbrain soul-audit,以及用于数据库索引的 gbrain import/gbrain sync --repo。根目录文件(USER.md、SOUL.md、ACCESS_POLICY.md、HEARTBEAT.md)会由这些技能读取;请手动填写,或通过 gbrain soul-audit 填写。使用知识库不需要这些功能——互操作只需纯 Markdown + Git。

模板

使用 write({ document: { path: "<path>", template: "<name>" } }) 创建。模板包含结构(包括 compiled-truth / --- timeline --- 分隔符)以及在相应位置提供的简短行内提醒;此技能包含完整约定,因此如果两者有任何不一致,请优先以此技能为准。

评论

支持 Markdown