Skip to content
Development
Skill

/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

From plugin
apm-studio
4379 skills

Claude Code

$ npx -y skills add apm-studio/apm-studio --skill studio-assistant-team-guide --agent claude-code

SKILL.md

studio-assistant-team-guide.SKILL.md
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.
Read more
@apm-studio
Ships withapm-studio

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.

Stars on GitHub

Momentum

stars in total
437
Star history of apm-studio/apm-studio on GitHub, a chart by star-history.com

Other skills on apm-studio.

find-skills

find-skills

Finds, compares, and applies existing external Skills before creating a new one. Use when the user asks to find a Skill, search…

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about studio-assistant-team-guide.

Which coding agents can use studio-assistant-team-guide?
studio-assistant-team-guide installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.