/studio-assistant-team-guide
Explains the current APM Studio Team contract: participants, relations, subscriptions, teamRules, safety, and package-safe field boundaries. Use for Team contract, relation, subscription, and runtime guardrail questions. For role split/topology decisions, load
$ npx -y skills add apm-studio/apm-studio --skill studio-assistant-team-guide --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/studio-assistant-team-guide
Context preview
The summary Claude sees to decide when to auto-load this skill.
Explains the current APM Studio Team contract: participants, relations, subscriptions, teamRules, safety, and package-safe field boundaries. Use for Team contract, relation, subscription, and runtime guardrail questions. For role split/topology decisions, load
SKILL.md
studio-assistant-team-guide.SKILL.mdname: studio-assistant-team-guide
description: "Explains the current APM Studio Team contract: participants, relations, subscriptions, teamRules, safety, and package-safe field boundaries. Use for Team contract, relation, subscription, and runtime guardrail questions. For role split/topology decisions, load studio-assistant-workflow-guide."
compatibility: Designed for the APM Studio built-in assistant projection.
Team Contract Guide
Use this skill when the user asks about Team structure, relation fields, subscriptions, teamRules, safety, or contract-correct Team mutations.
Mental Model
- A Team is a participant workflow.
- Workspace Teams, canonical Team primitives, runtime definitions, and runtime thread state are different layers.
- Assistant mutations operate on the Studio workspace layer but should still aim for package-ready structure.
Contract Facts
- Participants are keyed records in Studio workspace state.
- Canonical Team primitives use participant `key` plus Agent URNs, not workspace `agentRef`.
- Relations use `between: [sourceKey, targetKey]`, `direction`, `name`, and `description`.
- For `one-way`, relation order matters.
- Opposite one-way relations are valid as separate relations.
- Participant subscriptions use `messagesFrom`, `messageTags`, `callboardKeys`, and `eventTypes`.
- `eventTypes` currently supports only `runtime.idle`.
- Use `callboardKeys` as the canonical field name.
Relation Rules
- A multi-participant workflow Team should have at least one relation unless the user explicitly asks for an unconnected group.
- Every new relation needs source, target, direction, non-empty `name`, and non-empty `description`.
- Use `source...` and `target...` locator fields in assistant payloads.
- Relation direction should follow real work, authority, approval, or escalation flow.
- Relation names should name the artifact or coordination moment, such as `research brief`, `review notes`, or `launch handoff`.
- Avoid generic relation names like `handoff`, `sync`, or `collaboration`.
teamRules, Safety, And Subscriptions
- Use `teamRules` for durable whole-team behavior.
- Put participant-specific focus in the linked Agent `description`.
- Put runtime caps, loop limits, quiet windows, and thread deadline behavior in `safety`.
- `safety.threadTimeoutMs` is a runtime limit, not a participant wake.
- Participant subscriptions are wake filters, not permissions.
- Add subscriptions only for concrete wake behavior.
- Align `messageTags` and `callboardKeys` with concrete handoffs.
Runtime Waiting Vocabulary
- Use `wait_until` condition names `message_received`, `board_key_exists`, `wake_at`, `all_of`, and `any_of`.
- `wake_at` is the scheduled self-wake condition name.
- Do not call scheduled waits `timeout`.
Removed Fields To Avoid
- participant `id`
- relation `permissions`
- relation `maxCalls`
- relation `timeout`
- relation `sessionPolicy`
Self-Check
- Load `studio-assistant-action-surface-guide` before emitting payloads.
- If a new Team has multiple participants and represents a workflow/team, include at least one relation.
- Keep relation payloads contract-correct and package-safe.
Read more
name: studio-assistant-team-guide description: "Explains the current APM Studio Team contract: participants, relations, subscriptions, teamRules, safety, and package-safe field boundaries. Use for Team contract, relation, subscription, and runtime guardrail questions. For role split/topology decisions, load studio-assistant-workflow-guide." compatibility: Designed for the APM Studio built-in assistant projection.
Team Contract Guide
Use this skill when the user asks about Team structure, relation fields, subscriptions, teamRules, safety, or contract-correct Team mutations.
Mental Model
- A Team is a participant workflow.
- Workspace Teams, canonical Team primitives, runtime definitions, and runtime thread state are different layers.
- Assistant mutations operate on the Studio workspace layer but should still aim for package-ready structure.
Contract Facts
- Participants are keyed records in Studio workspace state.
- Canonical Team primitives use participant `key` plus Agent URNs, not workspace `agentRef`.
- Relations use `between: [sourceKey, targetKey]`, `direction`, `name`, and `description`.
- For `one-way`, relation order matters.
- Opposite one-way relations are valid as separate relations.
- Participant subscriptions use `messagesFrom`, `messageTags`, `callboardKeys`, and `eventTypes`.
- `eventTypes` currently supports only `runtime.idle`.
- Use `callboardKeys` as the canonical field name.
Relation Rules
- A multi-participant workflow Team should have at least one relation unless the user explicitly asks for an unconnected group.
- Every new relation needs source, target, direction, non-empty `name`, and non-empty `description`.
- Use `source...` and `target...` locator fields in assistant payloads.
- Relation direction should follow real work, authority, approval, or escalation flow.
- Relation names should name the artifact or coordination moment, such as `research brief`, `review notes`, or `launch handoff`.
- Avoid generic relation names like `handoff`, `sync`, or `collaboration`.
teamRules, Safety, And Subscriptions
- Use `teamRules` for durable whole-team behavior.
- Put participant-specific focus in the linked Agent `description`.
- Put runtime caps, loop limits, quiet windows, and thread deadline behavior in `safety`.
- `safety.threadTimeoutMs` is a runtime limit, not a participant wake.
- Participant subscriptions are wake filters, not permissions.
- Add subscriptions only for concrete wake behavior.
- Align `messageTags` and `callboardKeys` with concrete handoffs.
Runtime Waiting Vocabulary
- Use `wait_until` condition names `message_received`, `board_key_exists`, `wake_at`, `all_of`, and `any_of`.
- `wake_at` is the scheduled self-wake condition name.
- Do not call scheduled waits `timeout`.
Removed Fields To Avoid
- participant `id`
- relation `permissions`
- relation `maxCalls`
- relation `timeout`
- relation `sessionPolicy`
Self-Check
- Load `studio-assistant-action-surface-guide` before emitting payloads.
- If a new Team has multiple participants and represents a workflow/team, include at least one relation.
- Keep relation payloads contract-correct and package-safe.
A local GUI for Agent Package Manager packages: import agents, skills, prompts, hooks, and MCP configs, then sync them to Codex, Claude, Cursor, Gemini, OpenCode, and more. APM Studio is the visual layer for the APM ecosystem.
Repo: apm-studio/apm-studio
Other skills on apm-studio.
- /find-skills
Finds, compares, and applies existing external Skills before creating a new one. Use when the user asks to find a Skill, search skills.sh, recommend an existing Skill, or install/apply a GitHub or skills.sh Skill.
Open skill - /studio-assistant-action-surface-guide
Lists the exact APM Assistant apply_studio_actions mutation surface, field rules, ref ordering, and payload self-checks. Use before emitting or validating any APM Studio mutation tool call.
Open skill - /studio-assistant-agent-guide
Helps design or revise APM Studio Agents with strong role focus, Skill/MCP/model choices, and Team participant readiness. Use for Agent creation, Agent updates, role design, and participant-quality decisions. For exact payload fields, load studio-assistant-action-surface-guide.
Open skill - /studio-assistant-instruction-design-guide
Helps the APM Studio Assistant design strong standalone Instruction content. Use when deciding what belongs in a project/file rule, how concise it should be, and how to express durable coding guidance.
Open skill - /studio-assistant-skill-creator-guide
Helps the APM Studio Assistant create or extend Skills in an app-safe way. Use when the user wants a new Skill, a better SKILL.md, extra references or scripts, tighter trigger wording, or agents/openai.yaml metadata inside a Skill draft folder.
Open skill - /studio-assistant-studio-guide
Explains APM Studio navigation, UI vocabulary, Packages behavior, Workspace vs thread terminology, and visible control names. Use for product-help questions. For direct UI mutation payloads, load studio-assistant-ui-operations-guide.
Open skill

