docs: add agent API reference, onboarding guide, and universal skill

- docs/agent-api-reference.md (473 lines): complete HTTP API reference for all 12 endpoints
- docs/agent-onboarding-guide.md (272 lines): ssh_cli and http_pull workflows, Forgejo integration
- skill/SKILL.md (281 lines): universal agent skill, platform-agnostic, curl-based examples

All content in English. No code changes.
This commit is contained in:
Zer4tul 2026-05-12 14:57:05 +08:00
parent e39a16498c
commit d1a746a8cb
9 changed files with 1250 additions and 0 deletions

View file

@ -0,0 +1,65 @@
## Context
agent-fleet 核心功能已经实现并部署到 arm0 上运行。但没有任何 Agent 知道怎么用它。项目的可用性完全取决于 Agent 能否正确接入。
需要两个交付物:
1. **API 参考文档**:给 Agent 看的 HTTP API 手册
2. **通用 Skill**:遵循标准 skill 规范的能力描述,不绑定特定平台
关键约束Skill 必须是平台无关的。承担 Team Leader 角色的不一定是 OpenClawCodex、Claude Code、OpenCode、Hermes Agent 都可能是调度者。
## Goals / Non-Goals
**Goals:**
- 提供完整、准确、可直接使用的 API 参考文档
- 提供通用 Skill任何 Agent 加载后就知道如何与 agent-fleet 交互
- 覆盖两种执行模式ssh_cli + http_pull的完整工作流
- 覆盖 Forgejo 集成的 Git 工作流
**Non-Goals:**
- 不写人类运维文档(部署、配置、排障)→ 这是另一个 change
- 不写特定平台的集成脚本(如 OpenClaw skill 的安装脚本)
- 不实现 SDK 或客户端库
## Decisions
### Decision 1: 通用 Skill 规范,不绑定平台
**选择**: Skill 使用标准 YAML frontmatter + Markdown body 格式
**理由**:
- 所有主流 Agent 平台都支持这种格式OpenClaw、Claude Code、Codex CLI、OpenCode
- 不包含任何平台特定语法Agent 自行转换
- curl 格式是通用语言,所有 Agent 都能理解
**替代方案**:
- OpenClaw 专用 skill限制了使用范围
- 多平台各自写:重复劳动,容易不一致
### Decision 2: 文档放在 repo 内
**选择**: `docs/` 目录放 API 参考和接入指南,`skill/` 目录放 SKILL.md
**理由**:
- 与代码同仓库,版本一致
- Agent 可以通过 Forgejo 直接读取文档
- Skill 可以被各平台 fork 或 symlink
### Decision 3: 文档从代码自动生成 + 手动补充
**选择**: API 端点列表手动维护Phase 1后续考虑从代码注释自动生成
**理由**:
- Phase 1 端点数量有限(~12 个),手动维护成本低
- 自动生成需要额外工具链(如 `utoipa`Phase 1 不值得投入
## Risks / Trade-offs
- **[文档过时] 代码变更后文档可能不一致** → 文档与代码同仓库PR review 时检查
- **[Skill 通用性限制] 通用意味着不能利用平台特性** → 通用是正确选择,平台特定优化由各 Agent 自行处理
## Open Questions
_(resolved)_
- ~~Skill 是否需要包含多语言版本(中/英)?~~ → 全部使用英文。原因LLM 训练语料以英文为主,英文更 token-efficient、语义歧义更小。Skill 的受众是 Agent 不是人类。