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
4339 skills
Install
$ npx -y skills add apm-studio/apm-studio --skill studio-assistant-team-guide --agent claude-code

How 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.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
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.

Get the whole plugin

Other skills on apm-studio.