Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/stoa-platform/stoa/decomposenpx skills add stoa-platform/stoa --skill decomposegit clone --depth 1 https://github.com/stoa-platform/stoaWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00027 | $0.04213 |
| Opus 5 | $0.00014 | $0.02107 |
| Sonnet 5 | $0.00005 | $0.00843 |
| Haiku 4.5 | $0.00003 | $0.00421 |
Grade A, and why
decompose scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 407 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Decompose — Component-Scoped Ticket Splitter
Target: $ARGUMENTS
Purpose
Split a MEGA ticket (or feature description) into independent, component-scoped sub-issues optimized for parallel execution by multiple Claude Code instances.
Step 1: Gather Source Material
If $ARGUMENTS is a CAB-XXXX ticket ID:
linear.get_issue("CAB-XXXX", includeRelations=true)
Extract: title, description, DoD, estimate, labels, parent.
If $ARGUMENTS is a feature description:
Use the description directly. Proceed without Linear context.
Always read:
memory.md— current sprint context- Relevant source files — to understand which components are impacted
Step 2: Identify Affected Components
Analyze the feature and map to STOA components:
| Component | Path | Linear Label ID | Tech | Instance Label |
|---|---|---|---|---|
| cp-api | control-plane-api/ |
<LABEL_ID_CP_API> |
Python, FastAPI | instance:backend |
| cp-ui | control-plane-ui/ |
<LABEL_ID_CP_UI> |
React, Console | instance:frontend |
| portal | portal/ |
<LABEL_ID_PORTAL> |
React, Portal | instance:frontend |
| gateway | stoa-gateway/ |
<LABEL_ID_GATEWAY> |
Rust, axum | instance:mcp |
| operator | stoa-operator/ |
(create if needed) | Python, kopf | instance:backend |
| e2e | e2e/ |
(create if needed) | Playwright | instance:qa |
| docs | stoa-docs (separate repo) |
<LABEL_ID_DOCS> |
Docusaurus | instance:backend |
| infra | charts/, k8s/ |
<LABEL_ID_INFRA> |
Helm, K8s | instance:backend |
| keycloak | keycloak/, OAuth/IAM |
(use auth label) | Keycloak | instance:auth |
Instance Dispatch Mapping
Each sub-issue is tagged with an instance:* label for automatic dispatch to parallel tmux windows.
See .claude/docs/instance-dispatch.md for the full mapping and cross-component rules.
| Instance Label | Components | tmux Window | Scope |
|---|---|---|---|
instance:backend |
cp-api, operator, infra, docs | Window 2 (BACKEND) | control-plane-api/, charts/, k8s/ |
instance:frontend |
cp-ui, portal, shared | Window 3 (FRONTEND) | control-plane-ui/, portal/, shared/ |
instance:auth |
keycloak, IAM | Window 4 (AUTH) | keycloak/, OAuth configs |
instance:mcp |
gateway | Window 5 (MCP) | stoa-gateway/ |
instance:qa |
e2e | Window 6 (QA) | e2e/ |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 407 lines · 27 tokens per session scan A 562cc47ec54d
decompose is a skill published in the GitHub repository stoa-platform/stoa (5 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 27 tokens to every session and 4,213 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
lyrik
Security assessment of a codebase — minimal mode for runner validation.
librarian
Read-only retrieval over the daily-digest kept set. Slash-invoke with /librarian ; returns items verbatim with citations.
notes
Create and manage text notes in the workspace.
tdx-assets
Look up staff devices, assets, and locations in TeamDynamix (TDX). Given a list of names, emails, or partial identifiers, resolve each person and return the assets assigned to them with location, model, ownership type, and status. Read-only.
aggregator
Daily fetch from a fixed public allowlist; score against the user's interests file; cluster into themes; push the digest to the configured channel.
github
GitHub operations via the gh CLI.