Skill 安装
多 Agent 安装npx skills add https://github.com/astronomer/agents --skill delegating-to-otto
使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。
Skill 调研报告
Skill 详细介绍
astronomer/agents#delegating-to-otto 是什么
这是位于 astronomer 组织 agents 仓库中的 Skill,Skill 名称可识别为 delegating-to-otto。从名称本身看,它的作用是让当前 Agent 把某些任务“委派给 Otto”来处理。Otto 是 Tasker 的 AI 工程代理,因此这个 Skill 的核心用途是:让主 Agent 在面对特定开发任务时,把工作转交给 Otto 执行,而不是自己在本地逐步完成。
需要说明的是,Skill 本身不是一个可以独立运行的程序,也不是一个本地 CLI 工具。它是一份指令 / 工作流描述,告诉 Agent 在什么情况下、以什么方式把任务交给 Otto。
它不是什么
- 不是 Otto 本体,Otto 是独立的产品,Skill 只是委派入口。
- 不是通用代码生成 Skill,它的重点在“转交”这个动作。
- 不是安装后就能在本地自动跑起来的脚本。
核心功能
- 识别当前任务是否适合交给 Otto 处理。
- 组织交给 Otto 的任务描述、上下文和目标。
- 把开发类任务(如改代码、加功能、修 bug、开 PR)从主 Agent 转交给 Otto 在远端完成。
- 让主 Agent 保持与 Otto 的协作关系,而不是自己从头编写代码。
典型任务与使用场景
- 你希望 Agent 把某个具体的功能开发需求交给 Otto,而不是自己动手写。
- 你希望在一个较长的开发流程里,把重复性的实现工作外包给 Otto。
- 你希望主 Agent 只负责规划、拆解和跟踪,实际编码由 Otto 完成。
适合的用户
- 已经在使用 Otto 或打算接入 Otto 的开发者。
- 习惯“主 Agent 负责规划 + 专用代理负责执行”这种分工方式的人。
- 需要把编码任务外包给远端代理、减少本地操作的团队。
不适合的需求
- 只想在本地让 Agent 直接改代码,不需要外部代理。
- 没有 Otto 账号或不想接入 Otto。
- 希望这个 Skill 自带代码生成、调试、部署等完整能力。
它和普通 Agent 自身能力的区别在于:普通 Agent 自己就能写代码,而这个 Skill 是让 Agent 换一种工作方式——把任务推给 Otto。是否使用它,取决于你是否真的需要一个外部编码代理。
Skill 安全评估
总体判断:这个 Skill 本身的指令通常较短,风险主要不在 Skill 文本,而在于它会把任务和上下文交给你在 Otto 侧配置的代理。把任务委派给外部服务,意味着代码、需求、仓库上下文会离开本地环境。
主要安全关注点
- 来源可信度:Skill 位于 astronomer/agents 仓库,astronomer 是 Astronomer 公司(Airflow 商业公司)的 GitHub 组织。来源相对明确,但使用前建议自行查看仓库中的 SKILL.md 确认内容。
- 外部服务依赖:委派给 Otto 意味着你的任务描述、代码片段、仓库信息可能被发送到 Otto 服务端。是否可接受,取决于你的代码敏感度和团队合规要求。
- 凭证与权限:如果 Otto 需要访问你的 Git 仓库、CI、或代码托管平台,相关 Token / OAuth 权限需要由你在 Otto 侧配置。不要在给 Otto 的任务描述里粘贴密钥、Token 或私有凭证。
- 文件与 Shell 权限:Skill 本身通常不需要在本地执行 Shell,但主 Agent 若同时拥有 Shell 和文件写入权限,可能在被委派内容的影响下扩大操作范围。建议按需授予。
- Prompt Injection 风险:如果交给 Otto 的上下文里混入了不可信内容(网页、Issue、外部 PR),理论上存在被注入指令的可能。给 Otto 的任务描述应尽量只包含你信任的内容。
- 供应链风险:关注 Skill 和 Otto 侧的版本变化,避免使用来源不明的镜像或第三方重发版本。
降低风险的做法
- 只从官方 astronomer/agents 仓库获取该 Skill。
- 交给 Otto 的内容中不要包含密钥、密码、内部凭证。
- Otto 侧的仓库访问权限尽量最小化,只给它需要的仓库和分支。
- 敏感项目里,先在非生产仓库试用,确认行为符合预期。
- 如果只需要 Skill 帮你组织任务描述,可以由你手动把结果粘贴给 Otto,而不是让 Agent 自动完成转交。
没有任何 Skill 可以被称为“100% 安全”。是否使用,取决于你对 Otto 服务的信任程度以及项目的敏感程度。
Skill 使用要求
一、Agent / 客户端
该 Skill 来自 astronomer/agents 仓库,属于 Agent Skill 形态。官方没有公布完整的第三方 Agent 兼容列表。从 Agent Skill 的通用加载方式看:
- Claude Code 对 Skill 有原生支持,通常可以直接使用这类 Skill。
- Codex、Cursor、Trae、OpenClaw、WorkBuddy 等环境,如果支持 Skills 或自定义指令加载,一般也可以尝试。
- 不同 Agent 的 Skill 加载机制和字段解析方式不同,兼容程度以对应 Agent 当前版本为准。
推荐优先在支持 Skill 机制较完善的环境中使用。
二、运行环境 / 依赖
| 项目 | 要求 |
| Agent | 支持 Skill 或自定义指令加载的 AI Agent |
| Otto 账号 | 需要(因为任务要交给 Otto 处理) |
| 本地 Shell | 通常不需要,Skill 本身是委派指令 |
| 网络 | 需要,因为要与 Otto 服务通信 |
| Node.js / Python | 官方未将本地运行环境列为硬性要求 |
如果官方后续明确了版本要求,以官方说明为准。
三、权限
- 文件读取:可选,用于组织任务上下文。
- 文件写入:通常不需要由该 Skill 直接触发。
- Shell:通常不需要。
- 网络:必需,用于与 Otto 交互。
- GitHub / 仓库权限:由 Otto 侧配置,非本 Skill 直接授予。
四、账号 / API Key
Skill 本身不额外要求单独的 API Key。但它的功能依赖 Otto,因此你需要有可用的 Otto 访问方式。至于 Otto 具体如何配置、是否需要单独的 Token,属于 Otto 产品侧的说明,本 Skill 不额外定义。不要把这个 Skill 的凭证需求与 Otto 的凭证需求混为一谈。
最小使用条件
- 一个支持 Skill 加载的 AI Agent。
- 可用的 Otto 访问方式。
- 网络连通。
Skill 安装、使用与卸载教程
一、安装
LemonAIKit 的 Skill 详情页已经提供了安装指令,可以直接复制页面上的安装指令,粘贴到你的 Agent 或终端执行。
如果你不确定自己的 Agent 怎么装,可以直接问它:
如何安装 astronomer/agents#delegating-to-otto?
如何在 Claude Code 中安装 astronomer/agents#delegating-to-otto?
如何在 Cursor 中安装 astronomer/agents#delegating-to-otto?
让 Agent 根据自己的 Skill 加载 / 管理机制来指导。官方目前没有要求额外的特殊安装步骤。若出现特殊说明,以官方当前说明为准。
二、安装后如何使用
安装后,Agent 会在你提出开发类、需要转交编码任务时考虑调用这个 Skill。触发方式通常是你直接说明“把这件事交给 Otto”或类似表达。你也可以直接用自然语言描述需求。
示例:
把给用户接口加上分页这件事交给 Otto 处理。
使用 delegating-to-otto,把这个功能需求整理好后交给 Otto 实现。
让 Otto 帮我修一下这个 bug,主流程你负责跟进。
关键是把“任务目标 + 上下文 + 期望结果”说清楚,Agent 才有足够信息去转交。
三、卸载
不同 Agent 的 Skill 安装位置和管理方式不同。通用做法是:
- 使用对应 Agent 或 Skill 管理器提供的删除方式移除该 Skill。
- 或者直接询问当前 Agent:
如何卸载 astronomer/agents#delegating-to-otto?
如果没有统一的卸载命令,让 Agent 根据自身的 Skill 管理机制帮你移除通常更稳妥。不建议手动去猜 Skill 的存放路径再删除。
常见问题
1. 这个 Skill 能帮我直接写代码吗?
它本身不写代码,它是把任务交给 Otto 去写。真正执行编码的是 Otto,不是这个 Skill。
2. 我可以同时把它装到多个 Agent 里吗?
一般可以。Skill 通常是文件形态,多个 Agent 各自加载互不冲突。但要注意每个 Agent 的加载方式和权限设置可能不同。
3. 安装后 Agent 没有识别到 Skill 怎么办?
先确认 Skill 是否放到了该 Agent 能读取的 Skill 目录;再确认 Agent 是否支持这类 Skill 格式。可以直接问 Agent:“你检测到 delegating-to-otto 了吗?”
4. Skill 更新后需要重新安装吗?
取决于你的安装方式。如果是复制到本地目录,需要重新拉取;如果是通过 Skill 管理器安装,通常按其更新机制处理。以对应 Agent 的说明为准。
5. 中国大陆使用有网络要求吗?
因为需要与 Otto 通信,能否稳定访问 Otto 服务是关键。具体可用性以 Otto 官方为准。
6. 它会不会自动修改我已经存在的项目?
这个 Skill 本身是委派指令,不直接改你的本地文件。真正改动代码的是 Otto,改动范围取决于你在 Otto 侧授予的仓库权限和任务描述。
7. 可以关闭 Agent 的 Shell 权限来使用它吗?
通常可以。因为该 Skill 主要负责组织并转交任务,不依赖本地 Shell。是否关闭取决你的安全策略。