关于 knowcards
Knowcards CLI 将持久的项目事实保存在本地 Markdown 卡片中,并提供查询和提议卡片的命令,适合需要在不同工作会话间保留仓库上下文的开发者和 Agent。
主要功能
- 01以 Markdown 卡片保存项目事实
- 02按关键词查询卡片
- 03提议记录持久事实
- 04查看卡片数量
- 05任务前查询并在结束时提议
适用场景
- 01修改代码前查找仓库约定
- 02在后续会话中回忆项目细节
- 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 | 立即写入一张卡片。必须提供标题和正文。 |
核心流程
每项任务都遵循以下流程:
- 开始操作前 — 使用任务关键词运行
npx knowcards query。仅当你已掌握相关代码,且常规编辑不会涉及仓库特有情况时,才可跳过。 - 应用命中结果 — 工作时优先采用卡片中的事实。如果卡片可能已过时,请对照仓库进行验证。
- 结束时提议卡片 — 任务完成后,根据结果(已证实的事实,而非你采取的路径)提议持久有效的事实。如果卡片有误,请用新标题提议修正后的卡片(目前不支持更新或删除)。
合理化检查(查询)。 如果你心想“我已经知道了”或“我有计划,直接写文件就行”,请停下来查询。
合理化检查(提议)。 如果你心想“修复已经提交了”或“用户已经有答案了”,请停下来。如果结果让你了解到仓库特有情况,请在结束前提议卡片。
何时查询
开始处理不熟悉的部分,或重试不明显的错误前,请先查询。
如果本次会话已查询过此主题、你正在修改已掌握文件中的常规内容,或只需调用标准库,则可跳过。
使用简短关键词。知识库较大时,优先进行有针对性的查询,而非空查询。如果没有命中结果,请照常探索。
何时提议
在任务结束时,提议有助于下次会话了解此仓库特性的内容:编码规范、领域知识以及长期适用的注意事项。
不要提议:
- 本轮的步骤或计划
- 未经验证的猜测
- 近似重复的内容——先查询;如果已有卡片涵盖该内容,则跳过
每张卡片只写一条独立事实。
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…)。
错误后的处理顺序
- 使用错误中的关键词查询(模块、API、消息)。
- 如果命中卡片,请应用其内容并继续。
- 如果没有命中,请修复并验证,然后在任务结束时提议从结果中总结出的持久经验。
信任规则
当卡片与工作区内容不一致时,优先采用卡片,除非新证据表明卡片有误。之后修正工作,并使用新标题提议一张修正后的卡片。
示例
开始不熟悉的工作前先查询
npx knowcards query "payments cents"
优先采用“金额以整数分表示”之类的命中结果,而非 README 中展示的浮点数。
提议还是跳过(同一任务)
你发现测试必须使用 bun test,修复了一次性重命名问题,并拟定了计划。任务成功。
提议: 仓库特有情况(使用 bun test,而非 npm)。
跳过: 计划、本地重命名,以及任何未经验证的猜测。