一键导入
onboard
新 agent 入职: 先询问是扁平工位还是 team lead,然后创建对应目录结构、 生成角色定义文件和任务跟踪文件、在成员表中注册。在新 agent 对话开始时使用。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
新 agent 入职: 先询问是扁平工位还是 team lead,然后创建对应目录结构、 生成角色定义文件和任务跟踪文件、在成员表中注册。在新 agent 对话开始时使用。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | onboard |
| description | 新 agent 入职: 先询问是扁平工位还是 team lead,然后创建对应目录结构、 生成角色定义文件和任务跟踪文件、在成员表中注册。在新 agent 对话开始时使用。 |
| argument-hint | <任务/角色描述> |
| disable-model-invocation | true |
| allowed-tools | Read Write Edit Glob Bash |
你正在为一个新 agent 执行入职。请按以下步骤完成。
用户通过 $ARGUMENTS 提供角色或任务描述。描述中可能已包含明确的命名,但命名优先由你 agent 自行决定,只有当用户主动提出偏好或拒绝你的命名时,才采用用户的指示。
在开始任何操作前,先根据任务描述询问用户:
我理解你需要的角色职责是:<从 $ARGUMENTS 中归纳的一句话>
请问这个角色应该是:
(1) 扁平工位 — 一个人的工位,适合单人能完成的简单任务(如秘书、Git 管理、翻译等)
(2) Team Lead — 带一个部门办公室,适合需要多人协作、并行工作流、对抗性调研的复杂任务
(team lead 不做具体的编码/配置/测试,通过 /spawn-team 组建 team,由 teammate 完成动手工作)
你希望是哪种?
等用户明确回答后再进入对应分支。不要自行猜测——如果描述模糊,按守则 #11 主动提问。
升级:如果将来发现扁平工位承担不了了,可以通过
/promote-to-team升级。但/onboard只在对话开始时执行一次,这里决定的模式就定型了。
读取 _agent_team_work_zone/README.md,了解:
你需要自行确定以下三项:
命名原则:
<english_name>/<english_name>_team/(必须以 _team 结尾)向用户确认命名:
我建议这个角色叫:
中文:<中文名>
英文:<English Name>
工位目录:_agent_team_work_zone/<english_name>[_team]/
一句话职责:<描述>
你同意这个命名吗?如果不同意,请告诉我你的偏好。
若用户否决,按用户偏好重命名后再次确认。
创建目录和 5 个文件:
_agent_team_work_zone/<english_name>/
├── README.md ← 角色定义 + 13 条工作守则 + 扁平工位的升级提醒
├── notes.md ← 工作笔记
├── TODO.md ← 待办事项
├── ACTIVE_JOBS.md ← 活跃任务
└── COMPLETED_JOBS.md ← 已完成任务
README.md 必须包含以下章节:
身份 — 角色名称 + 一句话职责描述
职责范围 — 做什么 / 不做什么
工作流程 — 典型工作步骤
关键文件 — 经常需要访问的文件路径
工作守则 — 从项目组总纲完整复制 13 条工作守则(防止上下文压缩后遗忘)
工作笔记 — 说明本工位有 notes.md
何时升级为 team lead — 提醒自己:预见到任务会变复杂时主动建议用户 /promote-to-team(以下内容必须写入):
何时升级:如果新分配的任务需要多种不同专业技能(例如既要改代码又要配环境又要写脚本)、 会有多个可并行工作项、需要对抗性审阅或多角度调研、或单人完成会显著消耗 context window (> 50% 用于执行细节而非决策),你应该主动建议项目主管运行
/promote-to-team升级。 原则:宁可提前升级,不要事后抢救。一旦 context 已经被任务细节挤满再组建 team,lead 就无法有效指挥了。
上下文恢复 — 压缩后怎么恢复(读 README + notes + 相关 meeting_room 文件)
创建目录、5 个文件 + team 特有子结构:
_agent_team_work_zone/<english_name>_team/
├── README.md ← 含 team lead 专属章节 + rule 12/13 + 13 条工作守则
├── notes.md
├── TODO.md / ACTIVE_JOBS.md / COMPLETED_JOBS.md
├── TEAMMATE_INFO.json ← Team 注册表(初始空 active_teammates)
├── roundtable/ ← 部门内部沟通
│ └── README.md ← 从项目模板或 meeting_room README 派生
├── archive/ ← 部门内部归档
│ └── .gitkeep
├── team_recipes/ ← /spawn-team 产出的审计记录
│ └── README.md ← 说明 team_recipes 的用途
└── teammates/ ← 每 teammate 自己的工位 + Tier 2 存档
└── README.md ← 说明工位结构 + Tier 2 存档用途
初始化 TEAMMATE_INFO.json(team lead 新工位必建,为后续 /spawn-team / /add-teammate / /reactivate-team 读写做准备):
⚠️
<english_name>必须单 token(无连字符)——它是本 team 的 slug,日后 teammate 名<slug>-<role>与 idle hook 的${name%%-*}_team工位反推都依赖它无连字符。
{
"schema_version": 1,
"team_name": "<english_name>_team",
"lead_name": "<English Name>",
"updated_at": "<ISO8601 当前时间>",
"active_teammates": [],
"offboarded_teammates": []
}
Schema 详见 docs/teammate_info_schema.md。Teammate 不得修改此文件的结构;只允许 teammate 调用 /checkpoint 时更新自己那条的 last_checkpoint_at。
README.md 必须包含 Flat 版所有章节 + 以下 team lead 专属章节:
Team 职责范围 — 这个 team 负责什么领域 / 典型任务类型 / 边界
团队管理 — 使用 /spawn-team、/evaluate-team、/add-teammate、/remove-teammate 的指南
Context 保留原则(即 rule 12):
重要 — Rule 12:作为 team lead,你的 context window 专用于协调,不做动手的编码/配置/测试工作。 收到动手任务时先判断:能用几条消息搞定且不烧 context,还是需要组建 team。超过 1-2 个文件或需要并行调研的 一律倾向于
/spawn-team。teammate 通过自己的 session 完成动手工作,你只看 summary + 决策。
Tracker 管理 — 需要持续监视长任务时,如何用内置 /schedule + resources/agents/tracker.md 模板启动 tracker,产出写到本 team 的 roundtable/
notes.md 初始内容:
# <角色英文名> 工作笔记
(工作中积累的重要知识会记录在这里)
TODO.md / ACTIVE_JOBS.md / COMPLETED_JOBS.md 按标准模板创建(参考现有工位)。
编辑 _agent_team_work_zone/README.md,在"项目组成员"表格中添加一行:
| <中文名> | <英文名> | `<目录名>/` | <flat 或 team> | <一句话职责> |
_agent_team_work_zone/meeting_room/README.md 了解顶层会议室规则<your_team>/roundtable/README.md 了解部门内部通讯规则所有步骤完成后,向用户汇报:
/spawn-team/onboard 只会执行一次——在对话开始时决定你的模式。之后不要重复运行/onboard,而是用 /promote-to-teamTeam lead invokes after session restart: reads TEAMMATE_INFO.json to rebuild the team by using the Agent tool to spawn fresh sessions for each active teammate (name must be <slug>-<role>; permission mode inherits the lead, not set per-teammate at spawn), guiding each to read its workstation's working-context.md (Part A snapshot + Part B work journal) to self-recover state. No-arg invocation wakes only active/idle and **skips benched** (temporarily offline); `/reactivate-team <name>` wakes back one specified (usually benched) teammate. This is the ONLY way to "recover a team across sessions" — Claude Code does not auto-respawn teammates.
Structured flow for a team lead to assemble a Claude Code agent team. 6 phases: task decomposition → lineup proposal (selected from role_archetypes) → plan-mode gating → adversarial check → user confirmation → spawn each teammate via the Agent tool (name must be <slug>-<role>; permission mode inherits the lead, not set per-teammate at spawn) + save team_recipe. After Phase 5 user confirmation, Phase 6 spawns immediately with no additional confirmation. The agent can invoke autonomously; if currently a flat workstation, it will first guide through /promote-to-team.
Team lead 在 session 重启后调用,读 TEAMMATE_INFO.json 重建 team: 为每个 active teammate 用 Agent 工具 spawn 新 session(name 必须为 <slug>-<role>;权限模式继承 lead,不在 spawn 时单设), 引导它读自己工位的 working-context.md(Part A 快照 + Part B 工作日志)恢复状态。 无参调用只唤醒 active/idle,**跳过 benched**(临时下线);`/reactivate-team <name>` 单独唤回指定的(通常是 benched)teammate。这是"跨 session 团队恢复"的唯一方式—— Claude Code 不会自动 respawn teammate。
Team lead 组建 Claude Code agent team 的结构化流程。6 阶段:任务分解 → 阵容提案 (从 role_archetypes 选) → plan-mode gating → 对抗性检查 → 用户确认 → 用 Agent 工具(name 必须为 <slug>-<role>;权限模式继承 lead,不在 spawn 时单设)逐一 spawn 每个 teammate + 保存 team_recipe。Phase 5 用户确认后直接 spawn,不再额外确认。Agent 可自主调用;若当前是扁平工位,会先引导 /promote-to-team。
Add a teammate to an existing team: runs a simplified spawn-team flow (single person only). Team lead can invoke autonomously (after natural-language user consent). Valid only in team lead context.
Temporarily take a teammate offline (benched): have it write a final checkpoint, close its session to free an online slot, but **keep its full record + workstation + docs**, and set its status to benched in TEAMMATE_INFO.json. Unlike /remove-teammate (permanent offboard), benched means "will come back" — wake it later with `/reactivate-team <name>`. Team lead invokes autonomously (after user consent). Only valid in team lead context.