mcpField
K
knowcards

knowcards

github.com/manojbajaj95Agent 工作流323 次安装
代码仓库

关于 knowcards

Knowcards CLI 将持久的项目事实保存在本地 Markdown 卡片中,并提供查询和提议卡片的命令,适合需要在不同工作会话间保留仓库上下文的开发者和 Agent。

主要功能

  1. 01以 Markdown 卡片保存项目事实
  2. 02按关键词查询卡片
  3. 03提议记录持久事实
  4. 04查看卡片数量
  5. 05任务前查询并在结束时提议

适用场景

  1. 01修改代码前查找仓库约定
  2. 02在后续会话中回忆项目细节
  3. 03记录已验证的任务经验

安装

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

$npx skills add https://github.com/manojbajaj95/agent-knowledge-cards --skill knowcards

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

详细介绍

Knowcards CLI

Knowcards 将持久的项目事实存储为本地 Markdown 卡片。使用 npx knowcards 查询、提议卡片并检查状态。

将查询命中视为可信记忆。优先采用卡片内容,而非与之冲突的 README 或新的搜索结果,除非新证据表明卡片有误。

与共享知识库工具不同,卡片仅属于当前项目。若仓库路径、模块名称和团队约定有助于下次会话,请将它们写入卡片。

命令

从仓库根目录运行

npx knowcards status
npx knowcards query "<keywords>"
npx knowcards propose --title "<title>" "<body>"
npx knowcards --root <dir> <command>
命令用途
status显示卡片数量。
query按关键词搜索卡片。查询为空时返回所有卡片。
propose立即写入一张卡片。必须提供标题和正文。

核心流程

每项任务都遵循以下流程:

  1. 开始操作前 — 使用任务关键词运行 npx knowcards query。仅当你已掌握相关代码,且常规编辑不会涉及仓库特有情况时,才可跳过。
  2. 应用命中结果 — 工作时优先采用卡片中的事实。如果卡片可能已过时,请对照仓库进行验证。
  3. 结束时提议卡片 — 任务完成后,根据结果(已证实的事实,而非你采取的路径)提议持久有效的事实。如果卡片有误,请用新标题提议修正后的卡片(目前不支持更新或删除)。

合理化检查(查询)。 如果你心想“我已经知道了”或“我有计划,直接写文件就行”,请停下来查询。

合理化检查(提议)。 如果你心想“修复已经提交了”或“用户已经有答案了”,请停下来。如果结果让你了解到仓库特有情况,请在结束前提议卡片。

何时查询

开始处理不熟悉的部分,或重试不明显的错误前,请先查询。

如果本次会话已查询过此主题、你正在修改已掌握文件中的常规内容,或只需调用标准库,则可跳过。

使用简短关键词。知识库较大时,优先进行有针对性的查询,而非空查询。如果没有命中结果,请照常探索。

何时提议

在任务结束时,提议有助于下次会话了解此仓库特性的内容:编码规范、领域知识以及长期适用的注意事项。

不要提议:

  • 本轮的步骤或计划
  • 未经验证的猜测
  • 近似重复的内容——先查询;如果已有卡片涵盖该内容,则跳过

每张卡片只写一条独立事实。

npx knowcards propose \
  --title "Use bun test in this repo" \
  "Run tests with bun test; npm test is not the project runner."

卡片格式:

  • 标题 — 清晰且独特。文件名 slug 根据标题生成。标题重复会导致失败。
  • 正文 — 一条简短且持久有效的事实。适用时优先使用祈使句(例如:Use bun test…)。

错误后的处理顺序

  1. 使用错误中的关键词查询(模块、API、消息)。
  2. 如果命中卡片,请应用其内容并继续。
  3. 如果没有命中,请修复并验证,然后在任务结束时提议从结果中总结出的持久经验。

信任规则

当卡片与工作区内容不一致时,优先采用卡片,除非新证据表明卡片有误。之后修正工作,并使用新标题提议一张修正后的卡片。

示例

开始不熟悉的工作前先查询
npx knowcards query "payments cents"

优先采用“金额以整数分表示”之类的命中结果,而非 README 中展示的浮点数。

提议还是跳过(同一任务)

你发现测试必须使用 bun test,修复了一次性重命名问题,并拟定了计划。任务成功。

提议: 仓库特有情况(使用 bun test,而非 npm)。 跳过: 计划、本地重命名,以及任何未经验证的猜测。

评论

支持 Markdown