Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

编程智能体指南

仓库根目录下的 AGENTS.md 是面向 AI 编码助手的精简且始终加载的契约。本页提供对某些任务有用的详细信息,但不应占用每个会话的提示词预算。

无论模型大小或模型运行位置如何,这些规则均适用。精简提示配置可能会改变主动加载的上下文数量;但不会削弱安全性、隐私性、授权或贡献方面的要求。

如何使用本页面

架构和贡献映射开始。其变更路径表会将每项任务指向当前的架构、基础、测试、安全和维护者文档。仅在需要查阅以下特定于代理的主题时才返回这里。

单一数据源示例

任何状态都不应同时存在于两个独立维护的位置。如果某项事实已存在于配置、架构、运行时状态或生成的定义中,应从该来源解析或派生,而不是将其复制到另一个字段中。

在添加结构体字段、通道或句柄字段、schema 字段或配置项之前,请先给出以下答案之一:

  1. “这是唯一事实来源,在此创建。“说明它代表什么。
  2. “权威来源是 <path>;这样会将其复制一份。“在使用时从该位置解析它。

不要将重复状态的清理推迟到后续步骤。仅用于重启的快照仍然是重复状态。

禁止的示例:

  • 频道句柄,用于缓存已授权用户,而实时配置负责管理这些用户;
  • 一个枚举和一个单独手动维护的变体列表;
  • 一个配置快照,克隆运行时可从实时配置中读取的字段;
  • 将提供商凭证复制到另一个运行时字段中。

允许的示例:

  • 解析器通过闭包捕获 Arc<RwLock<Config>>
  • 借用的 Config 或类型化配置参数;
  • 不会在操作结束后保留的按需视图;
  • 宏或生成器,从单个输入生成多个 surface。

架构与所有权

ZeroClaw 是一个 Rust 优先、trait 驱动的智能体运行时。主要扩展 trait 位于 crates/zeroclaw-api/src/

  • model_provider.rs (ModelProvider)
  • channel.rs (Channel)
  • tool.rsTool
  • memory_traits.rs (Memory)
  • observability_traits.rs (Observer)
  • runtime_traits.rs (RuntimeAdapter)
  • peripherals_traits.rsPeripheral

不要在此处维护另一个 crate 或仓库清单。使用 Crates 了解所有权和依赖方向,使用根目录 Cargo.toml 中的工作区成员了解当前成员关系,并使用架构图了解 provider、channel、tool、plugin、runtime 和 config 的变更路径。

稳定性与风险

稳定性级别定义和版本控制策略位于 FND-001。组件本地 AGENTS.md 文件和插件注册表清单是目标所有权模型。在每个组件都拥有各自文件之前,下表是当前分配的权威来源;请勿将其复制到另一个手动维护的汇总中。

当前稳定性分配

组件层级备注
zeroclaw-api实验性的自 v1.0.0 起稳定(正式里程碑)
zeroclaw-configBetav0.8.0 版本已稳定
zeroclaw-logBeta统一日志输出、JSONL 持久化和广播钩子
zeroclaw-providersBeta
zeroclaw-memoryBeta
zeroclaw-infraBeta
zeroclaw-commands实验性的内置命令目录与元数据
zeroclaw-tool-call-parserBetav0.8.0 版本已稳定
zeroclaw-channels实验性的v1.0.0 版本的插件迁移
zeroclaw-tools实验性的v1.0.0 版本的插件迁移
zeroclaw-runtime实验性的智能体运行时:智能体循环、安全性、cron、SOP、技能和可观测性
zeroclaw-gateway实验性的在 v0.9.0 版本中拆分二进制文件
zerocode实验性的TUI 入门向导
zeroclaw-plugins实验性的WASM 插件系统及 v1.0.0 插件生态系统的基础架构
zeroclaw-hardware实验性的USB 发现、外设和串行支持
zeroclaw-macrosBeta与配置架构紧密耦合
zeroclaw-eval实验性的具备 LLM 追踪固件确定性回放能力的智能体评估框架
zeroclaw-spawnBeta归因传播的 tokio::spawn 包装器,基于 zeroclaw-log 构建

稳定组件遵循破坏性变更策略。测试版组件可能在 MINOR 版本中进行破坏性变更,并附带变更日志说明。实验性组件不提供任何稳定性保证。层级只会通过团队的审慎决策进行提升,绝不会降级。

变更风险路由基于影响,而非路径。请参阅维护者标签指南中的规范定义:risk:low涵盖不会对生产、兼容性、构建、发布或治理产生影响的文档、测试夹具和机械性元数据;risk:medium涵盖常规行为变更;risk:high涵盖具体的信任、凭据、兼容性、治理或发布权限边界。domain:security独立于risk:*,用于标识实际的安全边界。

包含 risk:highdomain:security 任一标签的 PR,在合并前需要经过深入审查,并获得两次独立的 Core Team 批准。应将不确定性向更高等级分类。验证和回滚证据应与实际影响范围相匹配,而不应只依据变更行数。有关 PR 流程,请参阅 如何贡献;有关验证分类体系,请参阅 测试

技能发现

仓库专属的编码助手技能存放在 .claude/skills/ 目录中。请检查可用的 */SKILL.md 文件,并仅加载与所请求操作匹配的技能。请勿在本页面维护第二份技能目录;该目录即为当前清单,每个技能文件负责管理其自身的工作流。

受保护的操作文档

这些文件由技能或开发工具使用。除非同时更新其使用方和仓库指南,否则不要移动或删除这些文件。

文件消费者
docs/book/src/contributing/pr-review-protocol.mdPR 审查技能
.claude/skills/changelog-generation/SKILL.md变更日志技能加载器和发布运行手册
docs/book/src/maintainers/reviewer-playbook.md问题分流技能
docs/book/src/maintainers/pr-workflow.md问题分类与维护者工作流程
docs/book/src/contributing/privacy.mdIssue 和 PR 隐私门控
docs/book/src/foundations/fnd-00*.md审查架构参考资料

本地化与隐私

面向用户的文本和纯英文日志规则仍保留在根目录的 AGENTS.md 中。Wiki 和内部开发者文档同样仅使用英文。完整规约请参阅 Privacy and PII disciplineDocs and translations

延伸阅读