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 commands/paulonasc/orchestra/importgit clone --depth 1 https://github.com/paulonasc/orchestraWhat 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.00000 | $0.01108 |
| Opus 5 | $0.00000 | $0.00554 |
| Sonnet 5 | $0.00000 | $0.00222 |
| Haiku 4.5 | $0.00000 | $0.00111 |
Grade A, and why
import 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 — 85 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/o import — Import external context into a thread
Users often create plans, research docs, or specs outside Orchestra (in other tools, other repos, standalone files). This command brings that context into Orchestra's thread structure.
Flow — interactive, guided by the agent:
Step 1 — What are you importing?
Ask: "What do you want to import? Give me a file path, paste the content, or point me to it."
Read the content. If it's a file path, read the file. If pasted, use the pasted content. Identify the content type automatically:
- Plan — has milestones, phases, or a structured breakdown of work →
plan.md - Research — findings, comparisons, evaluations, investigation notes →
research.md - Spec — requirements, acceptance criteria, problem statement →
spec.md - General context — anything else (notes, meeting summaries, braindumps) →
conversation.md(appended)
Tell the user what you detected: "This looks like a plan with 4 milestones. Importing as plan.md."
If ambiguous, ask: "This could be a spec or a plan. Which fits better?"
Step 2 — Where does it go?
Ask: "Import into an existing thread or create a new one?"
If existing thread:
- List threads (same as
/o listbut compact — number, name, status) - User picks one by number or name
- Check if the target file already exists (e.g.,
plan.mdalready in the thread)- If yes: "This thread already has a plan.md. Replace it, or append to conversation.md instead?"
- If no: proceed
If new thread:
- Ask: "What's this thread about? One line."
- Create the thread directory with the next sequential number
- If the import is a spec → write as
spec.md, auto-generate a stubconversation.md - If the import is a plan → write as
plan.md, also ask "Want me to generate a spec from this plan?" - If research → write as
research.md - Update
state/active-thread.md
Step 3 — Normalize and enrich
Don't just copy-paste. Adapt the content to Orchestra's format:
- If importing a plan: ensure milestones follow
M0, M1, M2...convention. Extract items. Populate the thread'sprogress.yamlwith ALL milestones. - If importing a spec: ensure it has
## Acceptance Criteria,## Risks,## Alternatives consideredsections. If missing, ask the user or flag: "Your spec doesn't have a Risks section. Want me to add one?" - If importing research: add
last_verified: YYYY-MM-DDheader. - Always: strip artifacts from external tools (Notion metadata, Google Docs formatting, etc.)
Step 4 — Verification check
After importing, always check the verification state:
-
Does the thread have a
verification.md? If not, create one. -
Are any items marked
donein the thread'sprogress.yaml? If so, check if they have corresponding PASS entries inverification.md. Items without verified tests are not truly done. -
Scan the repo for existing tests:
npm test --listTests 2>/dev/null,find . -name "*test*" -o -name "*spec*", or equivalent. Report what exists. -
If tests exist but haven't been run against the imported work, flag it:
"24 items marked done but nothing verified yet. Found 12 test files in the repo. Want me to run them and create a verification plan for what's not covered?"
-
If no tests exist, propose a strategy:
"No tests found. Here's a verification plan based on the acceptance criteria: [list]. Want me to create verification.md with this?"
Never mark items as done in the thread's progress.yaml if verification hasn't passed. If importing a plan where work was done outside Orchestra, mark items as in_progress (code written but unverified) rather than done. Only mark done after verification passes.
Step 5 — Confirm
Show a summary:
Imported plan.md → threads/003-payment-integration/
4 milestones extracted (M0–M3, 23 items total)
threads/003-payment-integration/progress.yaml updated with all milestones
⚠ 18 items marked in_progress (code exists, verification pending)
verification.md created with 23 checklist items
Active thread set to 003-payment-integration
Next: run /o checkpoint after verifying, or ask "run the tests"
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 · 85 lines · 0 tokens per session scan A 40f5f8a04f9d
import is a command published in the GitHub repository paulonasc/orchestra (15 stars, last pushed 4mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,108 tokens. 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-30.
Other commands, from other repositories
template
Manage issue templates for streamlined issue creation.
speckit.auto
Automatically execute the four core phases of the Spec-Driven Development (SDD) pipeline: specify → plan → tasks → implement, in strict sequential order.
daily-priorities
Query DIGI Jira via the Atlassian MCP to build a prioritized daily work plan. The report has two parts: suggested priorities (the recommendation) and full context (everything you need to evaluate whether the suggestions are right and what else is on the docket).
OPSX: Bulk Archive
Archive multiple completed changes at once.
sync-linear
Sync current work with Linear ticket status.
fest-show
Show festival progression (in-progress tasks, roadmap, and dependency view).