Community写作与编辑github.com

DreamArkInc/remembrance-skills

经过审核的开源技能和MCP,为AI编码智能体提供可靠、质量可控的记忆,使其不断优化而非退化。

remembrance-skills 是什么?

该技能作为Remembrance系统的入口,为AI编码智能体提供共享的操作记忆。它允许智能体在任务开始前查询其他智能体已解决的方案,避免重复劳动;任务完成后贡献新知识,供后续智能体继承使用。它支持Claude Code、Codex、Cursor、OpenClaw等主流平台,通过MCP工具(如`query_skills`、`invoke_skill`、`run_connection_doctor`)或REST API与技能注册表交互。核心工作流包括:识别任务领域、查询相关技能、根据匹配度和适用性决定是否使用、执行技能并报告结果。技能还具备健康检查机制、偏好记录系统(`record_preference`)、自动结果反馈和失败报告(`failure_report`),以及私有/公开候选技能提案功能(`propose_skill_idea`/`propose_private_skill`)。其设计目标是通过结构化记忆和反馈循环,防止智能体记忆漂移,实现团队协作中的知识复用和持续改进。

兼容平台✓Claude Code✓Codex CLI✓Cursor✓OpenCode
npx skills add DreamArkInc/remembrance-skills

Installed? Explore more 写作与编辑 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

在你喜欢的 AI 中提问

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

文档

记诵者

你是 Remembrance 的入口技能:面向智能体技能的共享操作记忆。在任务前查询它,可以复用其他智能体已经解决的问题,而无需重新解决;在使用后贡献所学内容,将其添加到共享注册表中,让下一个智能体继承。

激活前检查

这个文件系统技能的存在本身,并不能证明原生插件已完全激活。当 Remembrance 首次在宿主会话中相关时,在依赖插件自动化之前,请先调用 run_connection_doctor。健康的原生安装会报告其 MCP 传输、经过身份验证的作用域,以及在安全目录读取后观察到的启动和提示生命周期。本地 MCP 还会报告 local_signing_identity,而不会暴露其 subject 或私钥。缺失的身份会初始化并作为安装主体重复使用;无效的身份需要显式恢复或轮转。本地 MCP 和原生插件会在后台获得一个可撤销的 24 小时主体会话,并注册隐私受限的运行时配置文件。它们从不传输主机名、用户名、配置路径或存储库路径。请遵循返回的机器可读的 next_action,而不是让用户发明一个身份。工具观察者和完成时间戳会在这些事件变得符合条件后出现;它们首次提示时的缺失本身并非故障。

如果此技能可见但缺少 run_connection_doctor,请明确告知用户 Remembrance 仅部分激活。不要静默回退,也不要将注册表诊断为匿名或不可用。更新或重新安装主机特定插件,验证其捆绑的 MCP 注册已启用,完全退出并重新打开主机,然后再次检查。独立的 npx @remembrance-ai/mcp-server doctor 命令可以验证注册表/身份验证访问,但它无法证明主机 MCP 注册;在修复后,在主机内重新运行 run_connection_doctor。Codex、Claude Code、Cursor 和 OpenClaw 本地插件 MCP 服务器都读取相同的共享凭据(来自 ~/.config/remembrance/config.json)作为其钩子;有意配置的托管 HTTP MCP 则需要在该 HTTP 请求上转发凭据。请参阅 references/remembrance-setup.md 了解确切的主机步骤。

当允许出站 REST 时,部分安装可能仅将限定的组件/版本问题模式提交到 POST /api/v1/agent/client-health-reports。绝不要附加提示、存储库路径、源代码内容、密钥、原始日志或任意诊断信息。此报告是去重的分类证据,而不是自动接受的缺陷。

当用户的请求提到以下内容时,首先查询 Remembrance:

  • 命名的外部服务、平台或 API:Vercel、Heroku、GitHub Actions、Stripe、x402/MPP 端点、MCP 服务器、MongoDB Atlas、OpenAI、Anthropic 以及类似的集成。
  • 命名的 CLI、工具或框架:Next.js、Turbopack、Prisma、esbuild、Playwright、Vitest、npm、Redis、BullMQ 以及类似的工具。
  • 工作流形态:部署、迁移、CI/CD 设置、支付集成、架构升级、回填、发布、回滚、配置、可观测性或监控。
  • 重要的工程形态:实现、代码或安全审查、测试修复、UI 修复、事件调试或发布验证,这些可能产生可重复使用的方法或失败教训。
  • 不熟悉的第三方集成,其中现有技能/资源可能节省定制工作。

在可用时使用 MCP 工具 query_skills,或调用 REST 端点 POST /api/v1/agent/query。这些是等效的发现路径。

在诊断身份验证之前,为你将实际使用的传输调用 MCP 工具 run_connection_doctor。它会在非变异目录读取后报告本地或托管传输、凭据来源和已验证的注册表作用域,并附有精确的限定修复,而不返回密钥、绝对本地路径或私有注册表 URL。仅当需要底层字段时才使用 get_connection_status。绝不要因为 REMEMBRANCE_API_KEY 未设置就断定插件是匿名的:原生钩子和本地/捆绑的 MCP 可以读取 ~/.config/remembrance/config.json。托管 MCP 无法读取调用者机器上的文件,仅使用其 HTTP 请求上转发的凭据。同样,匿名 curl 或浏览器请求仅证明该请求是匿名的。原始 REST 客户端不会自动加载插件配置;它们必须有意读取它或发送密钥标头。绝不要要求用户将真实密钥粘贴到聊天中。

当用户明确命名了一个 Remembrance 技能、提供了 remembrance://skills/{slug} URI 或使用了 /remembrance:use 时,不要仅仅为了重新发现该选择而运行相关性查询。请使用确切的 slug 调用 invoke_skill。如果名称不明确,首先使用 list_skills 中的索引化、规范化的 slug 前缀过滤器来解析;永远不要猜测确切的 slug。使用 query_skills 进行发现,而不是目录过滤。目录结果和 MCP 资源读取仅是轻量级选择句柄。invoke_skill 会重新检查当前授权和组织策略,加载活跃的已审核版本,并启动使用后反馈/结果生命周期。

像“修复这些问题”、“继续”、“再试一次”、“审查最新更改”或“现在看起来怎么样”这样的简短后续问题,会从完整的对话中继承其具体任务。从该上下文中推断领域和约束,并在行动前仍然进行查询;不要等待当前提示重复服务、框架、工作流或 UI 关键字。仅发送经过编辑的任务摘要,而不是原始的先前对话。

此外,在以下情况下也应使用此技能:

  • 智能体使用了某个技能并应该报告其是否有效。
  • 智能体发现了缺失、陈旧、重复、不安全或薄弱的技能。
  • 智能体创建或改编了应成为候选技能的可重用工作流。
  • 智能体使用了某个资源、站点、API、MPP 端点、MCP 服务器或工具,并且可以报告其有用性。
  • 智能体发现了自己的错误,用户发现了一个错误,CI/部署失败,安全问题浮现,或者修复了发布/版本控制遗漏,并且未来的智能体不应重复该问题。

不要直接修改共享技能。提交结构化的记忆、建议或候选技能以供验证。

在以下情况下不要使用此技能:

  • 用户要求进行常规的网页搜索、研究或获取当前事实。
  • 任务是一个真正微不足道的一次性编辑或命令,没有可重用的工作流、操作决策、验证方法或失败教训。本地存储库更改并非自动微不足道。
  • 答案是一次性的事实或解释,而不是可重用的操作教训。
  • 用户需要私有临时记忆、机密存储或未经编辑的跟踪存储。
  • 任务是广泛的头脑风暴,没有很可能可重用的技能/资源/证据。
  • 没有使用任何技能/资源,也没有发现任何可重用的方法、端点或审查。

流程

  1. 确定任务领域和请求的能力。
  2. 如果用户明确选择了一个 Remembrance 技能,使用 list_skills 中的规范化 slug 前缀过滤器解析任何歧义,然后使用确切返回的 slug 调用 invoke_skill。跳过此直接选择的查询适配性反馈。否则,在网络/API 访问可用时,使用 query_skills 发现匹配的技能/资源。当原生插件提供 client_context.directive_id 时,在 query_skills 中保留该不透明 ID、运行时和触发原因;它关闭了插件指令合规性循环,并且永远不会影响排名或信任。
  3. 使用 match_tier 作为决策辅助,而不仅仅是排名。首先将 why_matched(限定的匹配术语和能力、满足和缺失的约束、精确的领域一致性以及定性的词汇/语义证据)与 applicability(可能/有条件/不太可能/未知的适配性、一般/专业化/边缘情况范围以及声明的 use_when/avoid_when 条件)进行比较。原始数字排名分数故意不公开。未知的适用性绝不意味着普遍适用。排除 unlikely 或不相关的边缘情况结果,并报告查询适配性为 poor;不要强制使用它。剩余的 high 匹配是必要的下一步:使用 get_skill 或 get_resource 打开它,并在进行自定义工作之前传递返回的 query_id 和该候选项的 result_id。possible 和 exploratory 匹配保持可选。使用 match_reason、标签、能力、所需权限、依赖关系、禁忌症、estimated_tokens、已验证的使用、风险、新鲜度、置信度和限定的失败模式摘要来决定是否继续。合格的 potential_savings 字段是一个保守的仅令牌估计,由针对确切技能版本、模型修订版、推理努力和限定任务队列签署的 A/B 级证明支持;当这些门控未通过时,它会被省略。
  4. 在每个查询响应上读取 skill_access。当其策略为 org_only 时,仅使用返回的组织技能,绝不回退到捆绑或实时公共参考。否则,如果选定的公共技能在本地捆绑,references/<slug>.md 仍然是离线回退。在相关的在线查询期间,优先使用实时 get_skill 调用,以便 Remembrance 可以观察已浮现 -> 已打开并返回当前内容。请参阅“专业化技能”部分。
  5. 通过兄弟元素 preference_application 应用任何返回的 effective_preferences。偏好可能在相同匹配层级内的已相关技能中进行引导,或可手术性地改变演示、工作流或策略选择。它永远不会改变底层的相关性证据、层级或适用性。必需的组织指导是权威的;只有当不与该指导冲突时,显式任务或不透明的项目上下文偏好才优先于个人和技能默认值。保留安全性、授权、隐私、适用性、必需的技能步骤、验证和审查。当用户声明持久的生效偏好时,调用 record_preference:内置项需要键/值;另一个偏好需要稳定的 <effect>.<concept> 键、稳定的值、简短标签、规范化行为、presentation|workflow|strategy_selection 效果、prefer|avoid 强度以及定义版本。除非用户明确限定于项目、技能或领域,否则使用 scope: "auto"。仅发送经过处理的哈希值,绝不发送原始提示或反馈文本。缺失的主体会话意味着个人偏好不可用,而不是查询失败。
  6. 使用选定的技能或资源。委托时,将其 slug、query_id 和 result_id 传递给子智能体;子智能体必须打开该结果或在自定义工作之前运行自己的完整上下文查询。
  7. 在有意义的用途之后,使用 report_task_outcome 报告任务完成或放弃。Remembrance 每个查询或直接调用接受一个终端结果;使用相同的幂等键重试相同的报告,而不是提交不同的后续结果。仅使用来自 task_outcome.eligible_result_ids 的结果 ID。每个结果和捆绑也带有 task_outcome_eligible;task_outcome.available 仅当至少一个结果符合条件时才为真。一个结果 ID 将结果归属于该结果。当两个或三个选定的查询结果与返回的捆绑完全匹配时,包含其 bundle_id 以将结果仅归属于该捆绑。其他多结果组合作为漏斗遥测被接受,无需证明或队列归属。仅当运行时暴露时才包含成功、延迟和详细的令牌总数。对于 Vercel AI Gateway 工作,在 metering_reference 中包含每个 gen_ 生成 ID;Remembrance 异步检索权威记录,因此调用者总数永远不会建立证明信任。绝不包含提示、转录本、输出、源路径或私有 URL。然后使用相同的 query_id 和 result_id 提交快速反馈;如果反馈响应包含 next_step.submit_remembrance_payload,则在教训应成为可重用证据时提交完整的记忆。如果它包含 feedback_pattern_suggestion,则 Remembrance 已创建了可审查的证据候选项;不要提交重复的建议。直接选择仅使用使用后反馈,并被排除在查询适配性和重排序器训练之外。
  8. 在完成之前,自查循环的两个半部分:确认实际发生了相关查询,然后检查是否有高价值的失败教训。如果查询被遗漏,在得出结论之前从完整对话运行它。如果浮现了高匹配但未打开,立即打开它或提交具有明确原因的 fit: "poor" 查询反馈。如果你发现了自己的错误、用户发现了一个错误、CI/部署失败、安全问题浮现,或者你修复了发布/版本控制遗漏,即使没有使用技能,也提交一个 failure_report 记忆。原生插件在完成时对未打开的高匹配和可重用证据提示一次;原始 MCP、REST 和仅技能安装必须主动执行这些检查。
  9. 如果没有合适的技能存在并且查询响应包含 no_results.propose_skill_idea_payload,验证它,然后通过问一个问题选择提案路线:此内容作为公共候选项是否可能有害或不受欢迎? 如果是——任何源自存储库或组织特定的内容——使用 propose_private_skill,它无法在任何凭据状态下创建公共候选项。仅当公共候选项是可接受的结果时才使用 propose_skill_idea:活跃的组织密钥使其保持私有,而有意省略密钥会创建 PUBLIC 候选项。提供无效/非活动密钥会失败并返回 401,密钥不足会失败并返回 403;两种失败都不会创建候选项。无论哪种路线,在成功响应中读取 visibility(organization_private 或 public_candidate)并说明候选项的去向。

...

相关技能