arcane-cli 1.12.3 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/README.md +1 -1
  2. package/dist/assets/.arcane/governance/agent-approved-paths.md +1 -0
  3. package/dist/assets/.arcane/governance/agent-policies.md +1 -0
  4. package/dist/assets/.arcane/governance/agent-work-queue-model.md +1 -0
  5. package/dist/assets/.arcane/governance/authentication-strategy.md +1 -0
  6. package/dist/assets/.arcane/governance/cicd-standards.md +1 -0
  7. package/dist/assets/.arcane/governance/compliance-standards.md +1 -0
  8. package/dist/assets/.arcane/governance/decision-documentation-standard.md +1 -0
  9. package/dist/assets/.arcane/governance/development-methodology.md +1 -0
  10. package/dist/assets/.arcane/governance/external-verification-standards.md +1 -0
  11. package/dist/assets/.arcane/governance/framework-decisions.md +1 -0
  12. package/dist/assets/.arcane/governance/git-conventions.md +1 -0
  13. package/dist/assets/.arcane/governance/hardening-checklist.md +1 -0
  14. package/dist/assets/.arcane/governance/mobile-release-standards.md +1 -0
  15. package/dist/assets/.arcane/governance/naming-conventions.md +1 -0
  16. package/dist/assets/.arcane/governance/new-business-setup.md +1 -0
  17. package/dist/assets/.arcane/governance/poc-management-pattern.md +1 -0
  18. package/dist/assets/.arcane/governance/portable-bootstrap.md +1 -0
  19. package/dist/assets/.arcane/governance/product-excellence-standards.md +1 -0
  20. package/dist/assets/.arcane/governance/rca-process-standard.md +1 -0
  21. package/dist/assets/.arcane/governance/records-conventions.md +1 -0
  22. package/dist/assets/.arcane/governance/spell-authoring-standards.md +19 -1
  23. package/dist/assets/.arcane/governance/testing-standards.md +1 -0
  24. package/dist/assets/.arcane/governance/threat-model.md +1 -0
  25. package/dist/assets/.arcane/governance/universal-agent-rules.md +1 -0
  26. package/dist/assets/.arcane/governance/web-discoverability-standards.md +1 -0
  27. package/dist/assets/.arcane/spells/spell-address-review.md +1 -0
  28. package/dist/assets/.arcane/spells/spell-adopt-docs.md +1 -0
  29. package/dist/assets/.arcane/spells/spell-arcane-version.md +1 -0
  30. package/dist/assets/.arcane/spells/spell-architect.md +1 -0
  31. package/dist/assets/.arcane/spells/spell-brainstorm.md +1 -0
  32. package/dist/assets/.arcane/spells/spell-bug.md +1 -0
  33. package/dist/assets/.arcane/spells/spell-bump.md +1 -0
  34. package/dist/assets/.arcane/spells/spell-check-drift.md +1 -0
  35. package/dist/assets/.arcane/spells/spell-close-session.md +1 -0
  36. package/dist/assets/.arcane/spells/spell-commit-work.md +1 -0
  37. package/dist/assets/.arcane/spells/spell-compliance.md +1 -0
  38. package/dist/assets/.arcane/spells/spell-create-pull-request.md +1 -0
  39. package/dist/assets/.arcane/spells/spell-document.md +1 -0
  40. package/dist/assets/.arcane/spells/spell-dotnet-expert.md +1 -0
  41. package/dist/assets/.arcane/spells/spell-eas-store-deploy.md +1 -0
  42. package/dist/assets/.arcane/spells/spell-enchant.md +1 -0
  43. package/dist/assets/.arcane/spells/spell-explain-concept.md +1 -0
  44. package/dist/assets/.arcane/spells/spell-feedback.md +1 -0
  45. package/dist/assets/.arcane/spells/spell-full-cycle.md +1 -0
  46. package/dist/assets/.arcane/spells/spell-generate-bot-icons.md +1 -0
  47. package/dist/assets/.arcane/spells/spell-implement.md +1 -0
  48. package/dist/assets/.arcane/spells/spell-make-discoverable.md +1 -0
  49. package/dist/assets/.arcane/spells/spell-manifest.md +1 -0
  50. package/dist/assets/.arcane/spells/spell-open-session.md +1 -0
  51. package/dist/assets/.arcane/spells/spell-plan.md +1 -0
  52. package/dist/assets/.arcane/spells/spell-present-arcane.md +1 -0
  53. package/dist/assets/.arcane/spells/spell-product-review.md +1 -0
  54. package/dist/assets/.arcane/spells/spell-review-batch.md +1 -0
  55. package/dist/assets/.arcane/spells/spell-review.md +1 -0
  56. package/dist/assets/.arcane/spells/spell-save-idea.md +1 -0
  57. package/dist/assets/.arcane/spells/spell-scope.md +1 -0
  58. package/dist/assets/.arcane/spells/spell-scry.md +1 -0
  59. package/dist/assets/.arcane/spells/spell-security-review.md +1 -0
  60. package/dist/assets/.arcane/spells/spell-ship.md +1 -0
  61. package/dist/assets/.arcane/spells/spell-status.md +1 -0
  62. package/dist/assets/.arcane/spells/spell-suggest-feature.md +1 -0
  63. package/dist/assets/.arcane/spells/spell-summon-venture.md +1 -0
  64. package/dist/assets/.arcane/spells/spell-sync-pull-request.md +1 -0
  65. package/dist/assets/.arcane/spells/spell-test.md +1 -0
  66. package/dist/assets/.arcane/spells/spell-todo.md +1 -0
  67. package/dist/assets/.arcane/spells/spell-verification-ledger.md +1 -0
  68. package/dist/assets/.github/prompts/spell-address-review.prompt.md +1 -0
  69. package/dist/assets/.github/prompts/spell-adopt-docs.prompt.md +1 -0
  70. package/dist/assets/.github/prompts/spell-arcane-version.prompt.md +1 -0
  71. package/dist/assets/.github/prompts/spell-architect.prompt.md +1 -0
  72. package/dist/assets/.github/prompts/spell-brainstorm.prompt.md +1 -0
  73. package/dist/assets/.github/prompts/spell-bug.prompt.md +1 -0
  74. package/dist/assets/.github/prompts/spell-bump.prompt.md +1 -0
  75. package/dist/assets/.github/prompts/spell-check-drift.prompt.md +1 -0
  76. package/dist/assets/.github/prompts/spell-close-session.prompt.md +1 -0
  77. package/dist/assets/.github/prompts/spell-commit-work.prompt.md +1 -0
  78. package/dist/assets/.github/prompts/spell-compliance.prompt.md +1 -0
  79. package/dist/assets/.github/prompts/spell-create-pull-request.prompt.md +1 -0
  80. package/dist/assets/.github/prompts/spell-document.prompt.md +1 -0
  81. package/dist/assets/.github/prompts/spell-dotnet-expert.prompt.md +1 -0
  82. package/dist/assets/.github/prompts/spell-eas-store-deploy.prompt.md +1 -0
  83. package/dist/assets/.github/prompts/spell-enchant.prompt.md +1 -0
  84. package/dist/assets/.github/prompts/spell-explain-concept.prompt.md +1 -0
  85. package/dist/assets/.github/prompts/spell-feedback.prompt.md +1 -0
  86. package/dist/assets/.github/prompts/spell-full-cycle.prompt.md +1 -0
  87. package/dist/assets/.github/prompts/spell-generate-bot-icons.prompt.md +1 -0
  88. package/dist/assets/.github/prompts/spell-implement.prompt.md +1 -0
  89. package/dist/assets/.github/prompts/spell-make-discoverable.prompt.md +1 -0
  90. package/dist/assets/.github/prompts/spell-manifest.prompt.md +1 -0
  91. package/dist/assets/.github/prompts/spell-open-session.prompt.md +1 -0
  92. package/dist/assets/.github/prompts/spell-plan.prompt.md +1 -0
  93. package/dist/assets/.github/prompts/spell-present-arcane.prompt.md +1 -0
  94. package/dist/assets/.github/prompts/spell-product-review.prompt.md +1 -0
  95. package/dist/assets/.github/prompts/spell-review-batch.prompt.md +1 -0
  96. package/dist/assets/.github/prompts/spell-review.prompt.md +1 -0
  97. package/dist/assets/.github/prompts/spell-save-idea.prompt.md +1 -0
  98. package/dist/assets/.github/prompts/spell-scope.prompt.md +1 -0
  99. package/dist/assets/.github/prompts/spell-scry.prompt.md +1 -0
  100. package/dist/assets/.github/prompts/spell-security-review.prompt.md +1 -0
  101. package/dist/assets/.github/prompts/spell-ship.prompt.md +1 -0
  102. package/dist/assets/.github/prompts/spell-status.prompt.md +1 -0
  103. package/dist/assets/.github/prompts/spell-suggest-feature.prompt.md +1 -0
  104. package/dist/assets/.github/prompts/spell-summon-venture.prompt.md +1 -0
  105. package/dist/assets/.github/prompts/spell-sync-pull-request.prompt.md +1 -0
  106. package/dist/assets/.github/prompts/spell-test.prompt.md +1 -0
  107. package/dist/assets/.github/prompts/spell-todo.prompt.md +1 -0
  108. package/dist/assets/.github/prompts/spell-verification-ledger.prompt.md +1 -0
  109. package/dist/index.js +353 -136
  110. package/dist/index.js.map +1 -1
  111. package/package.json +1 -1
package/README.md CHANGED
@@ -174,7 +174,7 @@ Every line says how it holds, because a rule nobody checks should not read like
174
174
 
175
175
  **What it does not do.**
176
176
  - It does not run your agents or call an AI model. The spells are instructions your AI client follows; the CLI installs them, keeps them current and checks the repository.
177
- - It does not intercept raw git. A commit you type by hand skips the spells' approval and test gates.
177
+ - It does not intercept raw git. A commit you type by hand skips the spells' approval and test gates; any hook it installed still runs.
178
178
  - The credential scan looks for known patterns: it can find a leak, never prove a commit is clean.
179
179
  - The push controls stop an accidental push, not a determined operator.
180
180
 
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Agent Approved Paths Registry
3
+ tagline: The registry of paths agents may touch
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: template
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Agent Policies
3
+ tagline: What agents may do — and must never do
3
4
  audience: both
4
5
  status: active
5
6
  distributable: true
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Agent Work Queue Model
3
+ tagline: How agents pick up, hand off, and finish work
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: draft
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Authentication Strategy
3
+ tagline: How identity and access work, end to end
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: CI/CD Standards
3
+ tagline: Build, verify, and release gates
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Compliance Standards
3
+ tagline: GDPR/CCPA/SOC 2/HIPAA, tiered by applicability
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Decision Documentation Standard
3
+ tagline: ADR format — every decision leaves a trace
3
4
  audience: both
4
5
  status: active
5
6
  distributable: true
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Development Methodology — The Spell Loop
3
+ tagline: The Spell Loop itself, as enforceable text
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: External Verification Standards
3
+ tagline: Confirm a write actually took effect out there
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Legacy Framework Decision Reference
3
+ tagline: Offline reference for legacy ADR citations
3
4
  audience: both
4
5
  status: active
5
6
  distributable: true
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Git Conventions — Commit Format and Branching Model
3
+ tagline: Branch names, commit format, merge rules
3
4
  audience: both
4
5
  status: active
5
6
  distributable: true
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Linux Security Hardening Checklist
3
+ tagline: The Linux hardening baseline, as a checklist
3
4
  audience: human
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Mobile Release Standards
3
+ tagline: App Store and Play Store release-track facts
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Naming Conventions
3
+ tagline: One vocabulary across code, docs, and agents
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: template
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: New Business Setup Guide
3
+ tagline: Stand up a new venture from zero
3
4
  audience: both
4
5
  status: draft
5
6
  distributable: true
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: POC Management Pattern
3
+ tagline: How proofs of concept graduate — or get killed
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Portable Bootstrap — Quick Context for Ad-Hoc AI Clients
3
+ tagline: Quick context to brief any ad-hoc AI client
3
4
  audience: ai
4
5
  status: active
5
6
  tags: [ai-context, bootstrap, multi-client, portable]
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Product Excellence Standards
3
+ tagline: The bar a feature must clear to ship
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Root Cause Analysis (RCA) Process Standard
3
+ tagline: Root cause, not blame, when things break
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Records Conventions
3
+ tagline: Supersession, tombstone, and retention rules
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Spell Authoring Standards
3
+ tagline: How to write a spell that holds up
3
4
  audience: contributor
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -40,10 +41,27 @@ this broader ≥ Silver gate is not fully verified by any coded scorer or workfl
40
41
 
41
42
  | Tier | Bar |
42
43
  | --- | --- |
43
- | Bronze | Front-matter complete: `name`, `description`, `argument-hint`, `agent`. Enforcement: explicitly advisory prose (ARC-023) — self-graded during spell audit; a CI check (`npm run check:spell-catalog`, running `scripts/spell-catalog.ts`) incidentally validates only the `name`/`description` fields as a side effect of catalog generation, not the full front-matter set this bar requires. |
44
+ | Bronze | Front-matter complete: `name`, `description`, `tagline`, `argument-hint`, `agent`. The `tagline` is one sentence of at most 60 characters with no trailing period — a marketing-quality one-liner a catalog consumer can show as-is (`Start a logged working session`), distinct from `description`, which tells the AI client when to invoke the spell. Enforcement: executable check for `name`, `description` and `tagline` (ARC-023) — `npm run check:spell-catalog` (`scripts/spell-catalog.ts`) fails CI when a spell or a distributed governance doc lacks one, or when a `tagline` is empty, longer than 60 characters, more than one sentence, or ends with a period; `argument-hint` and `agent` are explicitly advisory prose, self-graded during spell audit. |
44
45
  | Silver | + an accurate **Executive Summary** stating purpose, when to use it, and what it produces. |
45
46
  | Gold | + explicitly disambiguates itself from sibling spells a user might confuse it with. |
46
47
 
48
+ A new spell starts from this front-matter block, every field filled (the generated client shims copy
49
+ it verbatim, so there is no second place to fill it in):
50
+
51
+ ```yaml
52
+ ---
53
+ name: Spell — <Title Case Name>
54
+ description: <What the spell does and when the AI client should invoke it, in one or two sentences>
55
+ tagline: <One sentence, at most 60 characters, no trailing period>
56
+ claude_description: Use PROACTIVELY when <the situation that should trigger it, even unprompted>
57
+ argument-hint: <What the user passes, with an example>
58
+ agent: agent
59
+ ---
60
+ ```
61
+
62
+ Governance documents carry the same `tagline` field beside their `title`; `npm run check:spell-catalog`
63
+ holds both to the same rule.
64
+
47
65
  ### D2 — Distributability / no org-coupling **(HARD GATE ≥ Silver)**
48
66
 
49
67
  | Tier | Bar |
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Testing Standards
3
+ tagline: Coverage thresholds and what counts as tested
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Threat Model
3
+ tagline: Security posture, attack surfaces, mitigations
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: draft
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Universal Agent Rules — Single Source of Truth
3
+ tagline: The single source of truth every agent obeys
3
4
  audience: ai
4
5
  status: active
5
6
  tags: [rules, governance, ai-agents, multi-client]
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  title: Web Discoverability Standards
3
+ tagline: Search-engine and AI-assistant discoverability rules
3
4
  audience: both
4
5
  last_updated: YYYY-MM-DD
5
6
  status: active
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Address Review
3
3
  description: Respond to code-review feedback on a pull request — fetch comment threads, triage each, implement fixes or reply with rationale, and resolve every thread.
4
+ tagline: Resolve reviewer feedback systematically
4
5
  claude_description: Use PROACTIVELY whenever responding to PR review comments — fetch threads, triage, fix or reply, resolve.
5
6
  argument-hint: --pr <number> (required) [--fix-all] — the PR to address; --fix-all treats all suggestions/nitpicks as fix-now
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Adopt Docs
3
3
  description: Bring an existing document tree under Arcane governance without moving anything first — inventory, propose a mapping, get approval, then apply in reversible steps. Dry-run by default.
4
+ tagline: Bring an existing doc tree under governance
4
5
  claude_description: Use PROACTIVELY when bringing an existing, ungoverned doc tree under Arcane governance.
5
6
  argument-hint: Optional path to the tree to adopt (defaults to the repository root). Add `--apply` only after reviewing a dry run.
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Arcane Version
3
3
  description: Report the version of Arcane installed in this repository, the active profile, installed components, and whether an update is available.
4
+ tagline: What is installed, what is current
4
5
  claude_description: Use PROACTIVELY when asked about the installed Arcane version, profile, or whether an update is available.
5
6
  argument-hint: Optional flag — pass "components" to list all installed components in full detail
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Architect
3
3
  description: Generate architecture decisions and story breakdown from a PRD, producing architecture.md and stories.json
4
+ tagline: Break the plan into stories + criteria
4
5
  claude_description: Use PROACTIVELY once a PRD exists and needs architecture decisions and a story breakdown before implementation starts.
5
6
  argument-hint: Path to PRD.md or paste the PRD content
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Brainstorm
3
3
  description: Divergent ideation — explore multiple solutions to a problem space before committing to a plan
4
+ tagline: Structured divergent thinking
4
5
  claude_description: Use PROACTIVELY when exploring multiple solutions to a problem before committing to one.
5
6
  argument-hint: "Problem space or opportunity (e.g., 'How should we handle multi-tenant billing?')"
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Bug
3
3
  description: Document, diagnose, and fix a bug — files a tracker work item (per tracking_mode), traces root cause, implements fix, verifies, and commits
4
+ tagline: File a reproducible bug report
4
5
  claude_description: Use PROACTIVELY whenever diagnosing and fixing a bug, even if the user just describes broken behavior.
5
6
  argument-hint: Bug description (e.g., "Session detail dialog shows 404 when clicking a mock session")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Bump Version
3
3
  description: Determine the correct semver bump type for the current change and apply it to package.json
4
+ tagline: Version bump + changelog entry
4
5
  claude_description: Use PROACTIVELY before shipping any change that touches distributable content, to determine and apply the correct version bump.
5
6
  argument-hint: Optional context about the change (e.g., "new component", "bug fix", "breaking API change")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Check Doc Drift
3
3
  description: Detect contradictions and stale statements across core Arcane docs and report severity-graded findings (report-only by default; opt-in --fix applies safe mechanical fixes).
4
+ tagline: Detect divergence from the plan
4
5
  claude_description: Use PROACTIVELY to detect contradictions and stale statements across core docs, periodically or after major changes.
5
6
  argument-hint: Optional scope selector --scope all|journal|todos|decisions|git (default all); free-text hints also accepted. Add --fix to apply safe mechanical fixes.
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Close Session
3
3
  description: End a work session by logging outcomes in today's journal and pruning completed TODO items with verifiable evidence.
4
+ tagline: Wrap up; journal the session
4
5
  claude_description: Use PROACTIVELY at the end of any significant work session, even if the user just says 'wrap up' or 'done for now'.
5
6
  argument-hint: Optional session focus (e.g., a config change, a fix, infrastructure setup)
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Commit Work
3
3
  description: Generate Conventional Commits message with agent attribution and commit current work during an active session
4
+ tagline: Conventional commits, written for you
4
5
  claude_description: Use PROACTIVELY whenever committing work during a session, even if the user just says 'commit this'.
5
6
  argument-hint: Optional focus (e.g., security, prompts, agents, infrastructure)
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Compliance
3
3
  description: Run a regulatory compliance self-assessment against this repo (GDPR, CCPA, SOC 2, HIPAA) and produce a prioritized remediation checklist. Read-only — never drafts policies or fixes gaps automatically.
4
+ tagline: GDPR/CCPA/SOC 2/HIPAA, before you need it
4
5
  claude_description: Use PROACTIVELY before a launch, an enterprise sales cycle, or a security questionnaire that raises GDPR/CCPA/SOC 2/HIPAA questions.
5
6
  argument-hint: Optional focus (e.g., "GDPR only", "pre-launch check", "SOC 2 readiness")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Create Pull Request
3
3
  description: Open a pull request for the current branch with an auto-generated title and description from commit history. Provider-agnostic (GitHub or Azure DevOps).
4
+ tagline: Open a PR with full context
4
5
  claude_description: Use PROACTIVELY whenever opening a pull request for the current branch, even if the user just says 'open a PR'.
5
6
  argument-hint: '[--draft] [--reviewers <name,...>] [--target <branch>] [--docs-only]'
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Document
3
3
  description: Formalize valuable insights, analysis, or decisions from the current conversation into polished, permanent reference documents.
4
+ tagline: Write the docs that match the code
4
5
  claude_description: Use PROACTIVELY when conversation content (an analysis, a decision, an investigation) should become a permanent reference doc.
5
6
  argument-hint: Topics and output paths (e.g., "capability inventory → docs/capabilities.md")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — .NET Expert
3
3
  description: Load .NET best practices and patterns for any development agent working on .NET projects
4
+ tagline: Summon deep .NET expertise
4
5
  claude_description: Use PROACTIVELY when working on a .NET project and best-practice guidance is needed.
5
6
  argument-hint: Specific .NET topic or question (e.g., "Azure Functions isolated worker", "EF Core migrations")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — EAS Store Deploy
3
3
  description: Deploy an Expo app to the Apple App Store and Google Play via EAS Build + EAS Submit — one-time setup, repeat deployments, and the known pitfalls hit dogfooding both flows for real.
4
+ tagline: Ship an Expo app to the App Store or Play
4
5
  claude_description: Use PROACTIVELY when deploying an Expo app to the App Store or Google Play via EAS.
5
6
  argument-hint: Which store(s) to deploy to (ios, android, or both) and whether this is initial setup or a repeat deployment
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Enchant
3
3
  description: "Enchant a PRD from functional to exceptional — proactively enhance features, UX, accessibility, security, and performance using a research lens and a marketing/brand lens"
4
+ tagline: Harden a PRD — tighter scope, security, edge cases
4
5
  claude_description: Use PROACTIVELY when a PRD should be enhanced — UX, accessibility, security, performance — before implementation.
5
6
  argument-hint: "Path to PRD, pasted PRD content, or tracker work item ID (e.g., 'Enchant PRD.md for {BUSINESS_NAME} <feature> dashboard')"
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Explain Concept
3
3
  description: "Explain a technical concept, architecture, or system behavior in a balanced way: enough technical depth to be accurate, enough plain language to be accessible. Use when: confused about how something works, need to understand a system before making decisions, want a 'teach me' breakdown."
4
+ tagline: Explain any concept, in context
4
5
  claude_description: Use PROACTIVELY when the user needs a concept, architecture, or system behavior explained before deciding or building.
5
6
  argument-hint: "Concept or question to explain (e.g., 'how does our auth middleware inject tokens?', 'what is OAuth2 PKCE flow?', 'why can't {AGENT_NAME} see the config?')"
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Feedback
3
3
  description: Collect structured feedback on AI-assistance quality and workflow friction, and append it to FEEDBACK.md for continuous improvement. Framework-shaped items can route upstream to arcane's public GitHub issues.
4
+ tagline: Send feedback upstream to Arcane
4
5
  claude_description: Use PROACTIVELY when the user reports friction with AI assistance or the workflow itself, not the product being built.
5
6
  argument-hint: Optional focus area — e.g., "spell-implement loop", "review quality", "session handoff". Use `--flush` instead to re-offer any previously queued upstream items.
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Full Cycle
3
3
  description: End-to-end autonomous Spell Loop — chains plan, architect, implement, test, review, and ship into a single invocation with one human approval gate at merge time
4
+ tagline: Run the whole loop end-to-end
4
5
  claude_description: Use PROACTIVELY for an end-to-end feature request that should chain plan, architect, implement, test, review, and ship.
5
6
  argument-hint: "Feature description, optional work item ID, target repo (e.g., 'Add user auth to the mobile app, #507, {REPO_ORG}/{REPO_NAME}')"
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Generate Bot Icons
3
3
  description: Generate a bot avatar concept with an image-capable agent, then normalize it into Teams-ready color and outline icons.
4
+ tagline: Generate avatars for your roster
4
5
  claude_description: Use PROACTIVELY when a bot/agent needs a Teams-ready avatar and icon set generated.
5
6
  argument-hint: Bot concept (e.g., "{AGENT_NAME} for ecommerce ops, powerful + modern, flat vector")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Implement
3
3
  description: Autonomous implementation loop — pick a story from stories.json, build it, test it, commit it, repeat until all stories pass
4
+ tagline: Build against stories, never freestyle
4
5
  claude_description: Use PROACTIVELY to work through stories.json autonomously once architecture and stories exist.
5
6
  argument-hint: Path to stories.json or paste story context (optional - uses current directory stories.json by default)
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Make Discoverable
3
3
  description: Audit and fix a web property's search and AI-assistant discoverability — per-route share metadata, robots and sitemap policy, non-production noindexing, and search-engine registration. Read-only by default.
4
+ tagline: Audit a site's search/AI-assistant discoverability
4
5
  claude_description: Use PROACTIVELY when auditing a web property's search/AI-assistant discoverability (metadata, robots, sitemap, indexing).
5
6
  argument-hint: Optional path or origin of the property to audit (defaults to the repository root). Add --apply only after reviewing a dry run.
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Manifest
3
3
  description: Hub-gated interactive triage that promotes idea-book and todo-book entries downstream — to a consumer repo, a PRD scaffold, a tracker item, public disclosure, or another venture's book.
4
+ tagline: Triage idea and todo books across ventures
4
5
  claude_description: Use PROACTIVELY in a hub repo to triage idea-book/todo-book entries downstream.
5
6
  argument-hint: Optional --venture <slug> to restrict triage to one venture's books
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Open Session
3
3
  description: Open an Arcane session in a new chat by rebuilding context, identifying highest-priority unfinished work, and proposing concrete next actions.
4
+ tagline: Start a logged working session
4
5
  claude_description: Use PROACTIVELY at the start of any new session, even if the user just says 'let's start' or asks 'what's next'.
5
6
  argument-hint: Optional focus area (e.g., security hardening, a specific feature, infrastructure setup)
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Plan
3
3
  description: Generate a Product Requirements Document (PRD) from a feature description using structured planning
4
+ tagline: Turn intent into a reviewable PRD
4
5
  claude_description: Use PROACTIVELY when a feature description needs to become a PRD before architecture or implementation.
5
6
  argument-hint: Feature or initiative to plan (e.g., "user authentication for a mobile app")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Present Arcane
3
3
  description: Present Arcane in one of three modes — a full 1-hour talk (default), a live-state executive summary document, or a deck-builder meta-prompt sized to a slide count or duration.
4
+ tagline: Pitch Arcane to your team
4
5
  claude_description: Use PROACTIVELY when asked to present, demo, or explain Arcane itself to an audience.
5
6
  argument-hint: '[summary|deck] + optional audience/size — e.g., "for investors", "summary exec", "deck 10m", "deck 20 slides"'
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Product Review
3
3
  description: Build/Measure/Analyze/Decide cycle — evaluate feature performance and recommend next actions
4
+ tagline: Judge the product, not the diff
4
5
  claude_description: Use PROACTIVELY when evaluating a shipped feature's real-world performance and deciding next actions.
5
6
  argument-hint: Feature or product area to review (e.g., "{BUSINESS_NAME} storefront performance", "{BUSINESS_NAME} beta feedback")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Review Batch
3
3
  description: Adversarially review many pull requests in one run and emit per-PR verdicts plus a consolidated go/no-go readiness gate report. Provider-agnostic.
4
+ tagline: Review a stack of changes at once
4
5
  claude_description: Use PROACTIVELY when multiple open PRs need an adversarial review pass and a consolidated go/no-go verdict.
5
6
  argument-hint: '--prs <n,n,…> | --pr <n> | --file <path> | --query <q> [--repos <r,…>] [--html] [--title <t>]'
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Review
3
3
  description: Adversarial code review — must find issues, validate architecture compliance, and check security
4
+ tagline: Adversarial review before merge
4
5
  claude_description: Use PROACTIVELY before merging any nontrivial change, even if the user doesn't explicitly ask for review.
5
6
  argument-hint: PR number, branch name, or file paths to review
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Save Idea
3
3
  description: Quickly capture a fleeting idea into the repo's idea inbox so it is not lost. Low ceremony, no approval gate, optimized for voice and speed. In a hub repo, optionally target a venture's own idea book.
4
+ tagline: Bank an idea before it evaporates
4
5
  claude_description: Use PROACTIVELY to capture a fleeting idea immediately, even if the user just says 'note that' or 'don't forget'.
5
6
  argument-hint: The idea itself — a sentence to a couple of paragraphs (e.g., "add a dark-mode toggle to the settings page"), optionally "for <venture>" (hub only, e.g. "save this idea for ordo — …")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Scope
3
3
  description: Analyze a large PRD — scope it, split into epics, check architecture and security implications, estimate effort, and produce an execution plan with agent assignments
4
+ tagline: Cut the work down to shippable size
4
5
  claude_description: Use PROACTIVELY when a PRD is too large for one Spell Loop cycle and needs epic-splitting before architecture.
5
6
  argument-hint: "Path to PRD or paste PRD content (e.g., 'Analyze PRD.md for {BUSINESS_NAME} mobile app')"
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Scry
3
3
  description: Clear a candidate name before it ships — four outward checks (who coined it, estate still trading, same-audience giants, first-association salience) plus a mandatory inward repo-local collision pass. Use when naming anything new (a spell, a field, a product, an internal concept) before committing to it.
4
+ tagline: Clear a name before you commit to it
4
5
  claude_description: Use PROACTIVELY when naming anything new (a spell, a field, a product, an internal concept) before committing to it — clears a candidate name against both the outside world and this repository itself.
5
6
  argument-hint: '<candidate name or term>'
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Security Review
3
3
  description: OWASP Top 10 and AI/agent (LLM) security audit plus dependency vulnerability check for any project
4
+ tagline: Threat-model the change
4
5
  claude_description: Use PROACTIVELY before shipping any change that introduces new attack surface, handles sensitive data, or changes trust boundaries.
5
6
  argument-hint: Project path, PR, or specific security concern (e.g., "auth flow in the API")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Ship
3
3
  description: Pre-deploy checklist, merge approval workflow, and deployment gate verification
4
+ tagline: Merge, version, release
4
5
  claude_description: Use PROACTIVELY before any deploy, even if the user just says 'ship it'.
5
6
  argument-hint: Branch name or PR number to ship
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Status
3
3
  description: Show a fast, read-only snapshot of the current session — branch, git working state, open TODO count, decision count, and last journal date. Text or JSON.
4
+ tagline: Where the work stands, at a glance
4
5
  claude_description: Use PROACTIVELY when asked for a quick snapshot of session/repo state — branch, TODOs, decisions, last journal.
5
6
  argument-hint: Optional flags — e.g., --verbose --format json
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Suggest Feature
3
3
  description: Capture a feature suggestion from smoke testing or usage — assesses impact, files a tracker item (provider-aware), and adds to backlog
4
+ tagline: Propose the next thing worth building
4
5
  claude_description: Use PROACTIVELY when smoke testing or usage surfaces a feature gap worth tracking.
5
6
  argument-hint: Feature idea (e.g., "Settings page to change instance name and gateway URL")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Summon Venture
3
3
  description: Create a new venture in a hub repo — folder, overview/config/legal docs, idea and todo books, and a registry entry — in one hub-gated move.
4
+ tagline: Stand up a new venture from zero
4
5
  claude_description: Use PROACTIVELY in a hub repo when creating a new venture from scratch.
5
6
  argument-hint: Venture Name | Venture Type | One-line description
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Sync Pull Request
3
3
  description: Safely sync an open PR's branch with its target when it has fallen behind — recoverable pre-rebase ref, mechanical / regenerable / ambiguous conflict handling, force-with-lease push, provider-verified landing. Use when a PR needs rebasing onto a moved target, or was routed here from spell-create-pull-request/spell-ship's own conflict-stop points.
4
+ tagline: Rebase a stale PR, resolve conflicts safely
4
5
  claude_description: Use PROACTIVELY whenever an open PR has fallen behind its target branch and needs a safe rebase/sync, or when spell-create-pull-request/spell-ship stop on a conflict they route here.
5
6
  argument-hint: '[PR number or branch name]'
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Test
3
3
  description: Run tests, validate coverage thresholds, and generate test evidence for a completed story or feature
4
+ tagline: Prove it works; enforce thresholds
4
5
  claude_description: Use PROACTIVELY to validate a completed story or feature against coverage thresholds before marking it done.
5
6
  argument-hint: Story ID or test scope (e.g., "STORY-003" or "all")
6
7
  agent: agent
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  name: Spell — Todo
3
3
  description: Elaborate a raw idea into one or more well-scoped TODO items and place them in the right document(s). In a hub repo, optionally target a venture's own TODO book, or sweep every book's open-item counts.
4
+ tagline: Capture and track loose ends
4
5
  claude_description: Use PROACTIVELY whenever a raw idea needs to become one or more well-scoped TODO items, even if the user just says 'add a todo'.
5
6
  argument-hint: The raw idea to elaborate (e.g., "add spending limits doc", "automate ADR numbering", "build a dashboard for {AGENT_NAME}"), optionally "for <venture>" (hub only). `{AGENT_NAME}` resolves from `.arcane.json` / frontmatter; ask if unset. Use `--sweep` instead to report open-item counts across every book.
6
7
  agent: agent