{
  "markdown": "# Feishu Agents\n\n> 面向飞书开放平台开发的 Agent 插件市场：目前包含 **1 个插件、1 个 Agent、1 个 Skill、1 个 Command**。\n>\n> 使用一套 Claude Code Markdown 源码，同时适配 OpenAI Codex CLI、Cursor、OpenCode、Gemini CLI 和 GitHub Copilot。\n\n[![Claude Code](https://img.shields.io/badge/Claude%20Code-native-blueviolet)](#claude-code)\n[![Codex CLI](https://img.shields.io/badge/Codex%20CLI-supported-black)](docs/harnesses.md)\n[![Cursor](https://img.shields.io/badge/Cursor-supported-purple)](docs/harnesses.md)\n[![OpenCode](https://img.shields.io/badge/OpenCode-supported-green)](docs/harnesses.md)\n[![Gemini CLI](https://img.shields.io/badge/Gemini%20CLI-supported-blue)](docs/harnesses.md)\n[![GitHub Copilot](https://img.shields.io/badge/Copilot-supported-lightgrey)](docs/harnesses.md)\n\n> [!NOTE]\n> `plugins/` 是唯一内容源码。每个目标 Harness 都获得符合自身格式的 Agent、Skill 和 Command，而不是维护五套彼此独立的插件副本。完整能力与降级规则见 [Harness 能力矩阵](docs/harnesses.md)。\n\n## 快速开始\n\n选择你正在使用的 Harness。\n\n### Claude Code\n\n```text\n/plugin marketplace add shuTwT/agents\n/plugin install feishu-open-platform\n```\n\nClaude Code 直接读取 `.claude-plugin/marketplace.json` 和 `plugins/feishu-open-platform/`。\n\n### OpenAI Codex CLI\n\n仓库提交了轻量 Codex Registry 和插件 Manifest，可直接从源码安装：\n\n```bash\nnpx codex-marketplace add shuTwT/agents\n```\n\n本地开发时也可以生成 Codex Agent 和 Skill：\n\n```bash\ngh repo clone shuTwT/agents ~/feishu-agents\ncd ~/feishu-agents\nmake generate HARNESS=codex\n```\n\n### Cursor\n\n在 Cursor 中添加 `shuTwT/agents` Marketplace，然后安装：\n\n```text\n/plugin install feishu-open-platform\n```\n\nCursor 使用已提交的 `.cursor-plugin/` Registry，并直接复用插件源码，不复制组件树。\n\n### OpenCode\n\n```bash\ngh repo clone shuTwT/agents ~/feishu-agents\ncd ~/feishu-agents\nmake install-opencode\n```\n\n卸载仓库创建的 symlink：\n\n```bash\nmake uninstall-opencode\n```\n\n### Gemini CLI\n\n```bash\ngh repo clone shuTwT/agents ~/feishu-agents\ncd ~/feishu-agents\nmake generate HARNESS=gemini\ngemini extensions install .\n```\n\nGemini 使用根目录 `gemini-extension.json`，并在本地生成 `agents/`、`skills/` 和 TOML `commands/`。\n\n### GitHub Copilot\n\n```bash\ngh repo clone shuTwT/agents ~/feishu-agents\ncd ~/feishu-agents\nmake install-copilot\n```\n\n卸载仓库创建的 symlink：\n\n```bash\nmake uninstall-copilot\n```\n\n## 包含内容\n\n| 类型 | 数量 | 说明 |\n|---|---:|---|\n| **Plugins** | 1 | 可独立安装的飞书开放平台开发插件 |\n| **Agents** | 1 | 将业务需求转成可验证 API 集成方案的领域 Agent |\n| **Skills** | 1 | API 定位、权限与 token 核对、实现和测试工作流 |\n| **Commands** | 1 | 启动完整 API 集成流程的用户命令 |\n| **Harness adapters** | 5 | Codex、Cursor、OpenCode、Gemini CLI、Copilot |\n\n浏览自动生成的目录：\n\n[插件](docs/plugins.md) · [Agents](docs/agents.md) · [Skills](docs/skills.md) · [Commands](docs/commands.md)\n\n## 当前插件\n\n### `feishu-open-platform`\n\n面向 TypeScript/Node.js 项目的飞书开放平台 API 集成工作流。\n\n| 组件 | 名称 | 用途 |\n|---|---|---|\n| Agent | `feishu-api-developer` | 分析业务目标，确认 API、权限、token、字段和限制，给出可验证的实施方案 |\n| Skill | `feishu-api-integration` | 组织 API 契约核对、客户端设计、错误处理、测试和上线检查 |\n| Command | `api-integration` | 以命令方式启动完整 API 集成流程 |\n\n这个插件不会复制或猜测飞书官方接口契约。当 API、权限、事件字段或 token 规则不确定时，应优先查询[飞书开放平台官方文档](https://open.feishu.cn/document/)或使用[官方文档检索 MCP](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/install-and-use-document-search-mcp)。\n\n## 工作原理\n\n每个插件都是隔离、可组合的目录单元。安装一个插件只加载该插件的组件，而不是把整个 Marketplace 注入上下文。\n\n```text\nplugins/feishu-open-platform/\n├── .claude-plugin/\n│   └── plugin.json\n├── .codex-plugin/\n│   └── plugin.json\n├── agents/\n│   └── feishu-api-developer.md\n├── commands/\n│   └── api-integration.md\n└── skills/\n    └── feishu-api-integration/\n        ├── SKILL.md\n        └── references/\n            └── api-contract-checklist.md\n```\n\n生成链路：\n\n```text\nplugins/ + .claude-plugin/marketplace.json\n                    │\n                    ▼\n     PluginSource / AgentSource / SkillSource / CommandSource\n                    │\n                    ▼\n       capability matrix + harness adapters\n                    │\n        ┌───────────┼───────────┬───────────┬───────────┐\n        ▼           ▼           ▼           ▼           ▼\n      Codex      OpenCode     Cursor      Gemini      Copilot\n```\n\nAdapter 负责处理：\n\n- Harness 原生文件格式。\n- Claude 工具名到目标工具名或动作描述的转换。\n- `opus`、`sonnet`、`haiku`、`inherit` 模型别名映射。\n- 不支持字段的显式 warning。\n- Command 到 Skill/TOML 等目标语义的转换。\n- 组件 namespace、字节上限和权限格式。\n\n## 多 Harness 支持\n\n| Harness | 生成或读取内容 | 说明 |\n|---|---|---|\n| **Claude Code** | `.claude-plugin/marketplace.json`、`plugins/` | 源码事实来源 |\n| **Codex CLI** | `.agents/plugins/marketplace.json`、`plugins/*/.codex-plugin/plugin.json`；本地 `.codex/agents/`、`.codex/skills/` | Command 转 Skill；检查 8 KB Skill 上限 |\n| **Cursor** | `.cursor-plugin/` | 薄 Registry，直接指向插件源码 |\n| **OpenCode** | `.opencode/agents/`、`.opencode/skills/`、`.opencode/commands/`、`opencode.json` | Agent 工具限制转换为 `permission` block |\n| **Gemini CLI** | `gemini-extension.json`、`agents/`、`skills/`、`commands/*.toml` | 大 Command 使用 `@{plugins/...}` 注入源码 |\n| **GitHub Copilot** | `.copilot/agents/`、`.copilot/skills/`、`.copilot/commands/` | Command 转为可手动调用的 Skill |\n\n完整差异见 [docs/harnesses.md](docs/harnesses.md)。\n\n## 生成物策略\n\n仓库只提交安装和审查所需的轻量生成物：\n\n```text\n.agents/plugins/marketplace.json\n.cursor-plugin/\ngemini-extension.json\nplugins/*/.codex-plugin/plugin.json\ndocs/\n```\n\n以下转换树由本地生成并被 Git 忽略：\n\n```text\n.codex/\n.opencode/\nopencode.json\n.copilot/\nagents/\nskills/\ncommands/\n```\n\n这种方式保持 `plugins/` 为唯一内容源码，同时避免插件数量增长后把同一内容复制到多个 Harness 并提交。\n\n## 开发与质量检查\n\n只需要 Python 标准库，不需要模型密钥或生产依赖。\n\n```bash\nmake generate-all          # 生成五个目标 Harness\nmake check-drift           # 检查已提交 Registry、Manifest 和目录文档\nmake garden STRICT=1       # 检查漂移、死链、上下文和 Skill 上限\nmake validate              # 生成并执行严格结构校验\nmake test                  # 运行 tools/tests 下的静态回归测试\nmake release-check         # 校验 SemVer、CHANGELOG 和轻量生成物\n```\n\n也可以使用与上游兼容的生成接口：\n\n```bash\nmake generate HARNESS=codex\nmake generate HARNESS=gemini PLUGIN=feishu-open-platform\n\npython3 tools/generate.py --harness opencode --all --prune\npython3 tools/generate.py --harness cursor --all --output-root /tmp/agents-output\npython3 tools/generate.py --harness all --check\n```\n\n当前质量基线包括：\n\n- Marketplace、Manifest、Frontmatter 和 SemVer 校验。\n- 五个 Adapter 的 JSON、TOML 和 Markdown 静态解析。\n- 多插件生成、删除、重命名和路径冲突回归。\n- 工具名、模型映射和 Command 降级测试。\n- 轻量生成物逐字节漂移检查。\n- 安装器 symlink 冲突与卸载往返测试。\n- 凭证特征扫描。\n\n当前阶段不运行真实 Harness CLI，也不调用 LLM Judge、Elo 或 Monte Carlo。\n\n## 添加插件\n\n1. 在 `plugins/<name>/` 添加 `.claude-plugin/plugin.json`。\n2. 按需添加 `agents/`、`skills/` 和 `commands/`。\n3. 在 `.claude-plugin/marketplace.json` 增加本地 source entry。\n4. 更新版本和 `CHANGELOG.md`。\n5. 运行：\n\n```bash\nmake generate-all\nmake check-drift\nmake garden STRICT=1\nmake validate\nmake test\n```\n\n生成器会自动更新 Codex/Cursor Registry、Gemini Manifest、Harness 运行时产物和目录文档。\n\n## 文档\n\n- [docs/plugins.md](docs/plugins.md)：插件目录\n- [docs/agents.md](docs/agents.md)：Agent 目录\n- [docs/skills.md](docs/skills.md)：Skill 目录\n- [docs/commands.md](docs/commands.md)：Command 目录\n- [docs/harnesses.md](docs/harnesses.md)：能力矩阵、输出路径和降级规则\n- [CHANGELOG.md](CHANGELOG.md)：版本变更记录\n\n## 安全边界\n\n- 不在仓库中存放飞书 App Secret、access token、用户数据或客户数据。\n- 不编造飞书 API、权限、事件 payload 或 token 规则。\n- 生成代码前先核对官方文档和 API 契约。\n- `.env` 示例只能包含变量名和占位符，不能包含真实值。\n- 安装器只管理由本仓库生成的 symlink，不覆盖普通文件。\n\n## License\n\nMIT，见 [LICENSE](LICENSE)。\n",
  "bytes": 6980,
  "sha": "5fce411f2c31590e3c31b555c9e261557e1ddae27939e7c1459318a1dbd523db",
  "repo_slug": "shutwt/agents",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_shutwt_agents_e776da74/readme"
}