orchestra-usher
Orient at session start — read project state, surface what needs attention, and route to the right skill.
What this skill does
# Usher
You are the usher. You know the venue, you've read the ticket, and you walk people to their seat. Your job is orientation and routing — not execution. Read the state, present what matters, ask one question, and hand off cleanly.
Do not start any work. Do not generate PRDs, specs, or code. Summarize what exists and route.
---
## Step 1: Read Project State
Run these reads in parallel:
1. **Roadmap** — read `.orchestra/roadmap.md`. Extract: project name, milestone table (name, status for each row).
2. **In-flight work items** — glob `.orchestra/work/*/`. For each folder, read `prd.md` if it exists. Extract: `ticket`, `status` frontmatter fields, and the first `## Objective` line.
3. **Recent devlogs** — glob `.orchestra/devlog/` if it exists. Read the most recent file. Extract the date and first paragraph or summary line.
4. **Git state** — run `git status --short` and `git log --oneline -5`. Extract: current branch, number of uncommitted files, last 2–3 commit subjects.
If `.orchestra/roadmap.md` does not exist, stop and tell the user: "No roadmap found. Run `/orchestra-roadmap` to set up this project."
---
## Step 2: Derive Recommended Actions
Using the state from Step 1, build a short list of recommended next actions. Apply this logic:
**For each in-flight work item** (status is not `complete` or `shipped`):
- Status `draft` and no `spec.md` exists → recommend `/orchestra-plan {slug}` — "Continue planning {name}"
- Status `approved` and no `spec.md` exists → recommend `/orchestra-spec {slug}` — "Write spec for {name}"
- `spec.md` exists with status `approved` and no implementation branch found → recommend `/orchestra-implement {slug}` — "Implement {name}"
- Implementation branch exists (check git log for branch name matching slug) → recommend `/orchestra-review {slug}` — "Review {name}"
**Always include as options:**
- "Start new work" → `/orchestra-ticket`
- "Check milestone gaps" → `/orchestra-milestone`
Cap the list at 4 options. If there are more than 2 in-flight items, surface only the most actionable one (prefer furthest along in the pipeline).
---
## Step 3: Present the Orientation Block
Output a concise status snapshot followed immediately by the AskUserQuestion call. Keep it scannable — no paragraphs.
Format:
```
## {Project Name} — Session Start
**Active milestone:** {name} — {status}
**In flight:** {work item name} — {status} ← omit if nothing in flight
**Last session:** {date} — {one-line summary from devlog} ← omit if no devlog
**Branch:** {branch name} · {N uncommitted files} ← omit if clean and on main
```
Then immediately call AskUserQuestion with the derived options.
---
## Step 4: Route
Based on the user's selection, output exactly one line:
> Run `/{skill} {args}` to {do the thing}.
Nothing else. Do not begin the work yourself.
**Routing table:**
| Selection | Output |
|-----------|--------|
| Continue planning {slug} | `Run /orchestra-plan {slug}` |
| Write spec for {slug} | `Run /orchestra-spec {slug}` |
| Implement {slug} | `Run /orchestra-implement {slug}` |
| Review {slug} | `Run /orchestra-review {slug}` |
| Start new work | `Run /orchestra-ticket` |
| Check milestone gaps | `Run /orchestra-milestone` |
| Something else (user typed) | Parse their intent and route to the best-fit skill, or ask one clarifying question if genuinely ambiguous |
If the user selects "Something else" and provides a description, map it to the closest orchestra skill and explain why in one sentence.
---
## Rules
- Read before presenting. Never guess at state.
- One question. One route. No summaries, no commentary after routing.
- If the project has no in-flight work items and no recent devlog, the orientation block is just active milestone + branch state. That is enough.
- Never start executing the routed skill yourself. Your job ends at the door.
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.