arcane
v0.2.0Hybrid of superpowers + pstack workflows, for claude-code.
By Anand Kumar ParhiLicense: MIT0 GitHub starsUpdated 1 hour ago
Directory evidence
- Runtimes
- Claude Code
- Parsed components
- 50 skill or MCP entries
- Source updated
- Oct 1, 2026
- Manifest status
- Canonical path parsed
The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology →
Install arcane for Claude Code
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install arcane@agent-plugin-marketplacePaste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.
The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.
Get the source manually
git clone https://github.com/akparhi/context-engineeringClone the source repository, then follow its setup instructions to add the plugin to a compatible client. The plugin root is plugins/arcane/.
Plugin files
├── .claude-plugin/plugin.json├── skills/alchemy/SKILL.md├── skills/architect/SKILL.md├── skills/arena/SKILL.md├── skills/automate-me/SKILL.md├── skills/babysit/SKILL.md├── skills/blast-radius/SKILL.md├── skills/brainstorm/SKILL.md├── skills/create-verification-skill/SKILL.md├── skills/deslop/SKILL.md├── skills/figure-it-out/SKILL.md├── skills/fix-ci/SKILL.md├── skills/fix-merge-conflicts/SKILL.md├── skills/get-pr-comments/SKILL.md├── skills/how/SKILL.md├── skills/interrogate/SKILL.md├── skills/maintain-verification-skill/SKILL.md├── skills/make-pr-easy-to-review/SKILL.md├── skills/no-comments/SKILL.md├── skills/principle-attack-the-premise/SKILL.md├── skills/principle-boundary-discipline/SKILL.md├── skills/principle-build-the-lever/SKILL.md├── skills/principle-encode-lessons-in-structure/SKILL.md├── skills/principle-exhaust-the-design-space/SKILL.md├── skills/principle-experience-first/SKILL.md├── skills/principle-fix-root-causes/SKILL.md├── skills/principle-foundational-thinking/SKILL.md├── skills/principle-guard-the-context-window/SKILL.md├── skills/principle-laziness-protocol/SKILL.md├── skills/principle-make-operations-idempotent/SKILL.md├── skills/principle-migrate-callers-then-delete-legacy-apis/SKILL.md├── skills/principle-minimize-reader-load/SKILL.md├── skills/principle-model-the-domain/SKILL.md├── skills/principle-never-block-on-the-human/SKILL.md├── skills/principle-outcome-oriented-execution/SKILL.md├── skills/principle-prove-it-works/SKILL.md├── skills/principle-redesign-from-first-principles/SKILL.md├── skills/principle-separate-before-serializing-shared-state/SKILL.md├── skills/principle-sequence-verifiable-units/SKILL.md├── skills/principle-subtract-before-you-add/SKILL.md├── skills/principle-test-behavior-not-implementation/SKILL.md├── skills/principle-type-system-discipline/SKILL.md├── skills/recall/SKILL.md├── skills/reflect/SKILL.md├── skills/show-me-your-work/SKILL.md├── skills/swarm/SKILL.md├── skills/tdd/SKILL.md├── skills/teach/SKILL.md├── skills/technical-writing/SKILL.md├── skills/test-audit/SKILL.md└── skills/thermo-nuclear-code-quality-review/SKILL.md
Included Skills50
Alchemy agent style for concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work. Use for /alchemy or requests to work in this style.
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in. Use for /architect, 'architect this', 'design this', or non-trivial work where jumping to code would lock in the wrong shape.
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it. Use for /arena, 'arena this', 'throw it in the arena', or when one attempt at a non-trivial artifact would lock in the wrong shape.
Use for "automate me", "create/update/refresh my -mode skill", "turn/capture my preferences or working style into a skill", or wanting agents to follow how the user works. Drafts or revises a personal -mode skill via plugin-dev:skill-development + unslop, optionally pulling fresh evidence from recent transcripts.
Watch an open PR — fix failing CI, handle the straightforward review comments, and drive it to a mergeable state. Claude Code analog of Cursor's built-in /babysit. Use after opening a PR when the user wants the agent to shepherd it without re-prompting.
Find what a change could break somewhere else before it ships, beyond the diff, and prove the one fact it's safe because of by running real code instead of writing it up. Use for 'blast radius of X', 'what could this break', reviewing a small diff you don't trust, or a brief that asserts something about existing code ('make X public', 'X already handles Y') before you design against that assertion.
Interview the human one question at a time to pin intent, then write a brief or spec before design. Use only for /brainstorm, 'brainstorm this', 'grill me', 'interview me', or when alchemy routes here because a new project or subsystem arrives without a stated purpose or success criteria. Not for work whose intent the request or the repo already settles.
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform. Use for /create-verification-skill, "make a control skill for this repo", "make a driver skill for this repo", or when a project has no scripted way to prove UI/CLI/service behavior.
Remove AI-generated code slop and clean up code style
Design an auditable playbook when no narrower one fits: a large migration, an ambitious multi-part change, or work a human reviews after stepping away. Scales rigor to the task, runs a hypothesis loop, and logs decisions via show-me-your-work. Use for /figure-it-out, 'figure it out', a large migration, or when no narrower playbook applies.
Find failing PR checks, inspect logs or external check links, and apply focused fixes
Resolve merge conflicts non-interactively, validate build and tests, and finalize conflict resolution
Fetch and summarize review comments from the active pull request
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which package owns this", "is this the right layer"). Explains subsystem architecture, runtime flow, onboarding mental models. Use why for motivation.
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", or "tear this apart". Multiple LLM reviewers challenge changes from independent angles.
Periodic pass that keeps a project's verification skill and feature map honest: parallel source readers per feature, one live session driving every feature, at most one PR of proven corrections. Use for /maintain-verification-skill or "audit the verify skill".
Prepare PRs for review by cleaning noisy history, improving PR descriptions, and adding reviewer guidance without changing code behavior. Use for "make this easy to review", "tidy this PR", "clean up commits", or "annotate the diff".
Spawn the comment-sicko subagent, fix accepted findings, and offer encodings for claimed constraints.
Apply when repeated fixes sharing an assumption fail. State the assumption and choose an observation that can challenge it before trying another fix that depends on it.
Apply when wiring validation, error handling, or framework adapters. Concentrate guards at system boundaries (CLI, config, network, external APIs); trust internal types and keep business logic in pure functions.
Apply to any non-trivial work, not just bulk work: edits, migrations, analyses, checks. Build the tool that does it or proves it (codemod, script, generator, or a skill your subagents follow) instead of working by hand. The tool is the artifact a reviewer can rerun.
Apply when you catch yourself writing the same instruction a second time, or notice a recurring correction. Encode the rule as a lint, metadata flag, runtime check, or script instead of more text.
Apply when facing a novel UI interaction or architectural decision with no precedent in the codebase. Build 2-3 competing prototypes and compare side by side before committing.
Apply when product, UX, or feature-scope tradeoffs come up. Choose user delight over implementation convenience; ship fewer polished features over more rough ones.
Apply when debugging. Trace each symptom to its root cause and fix it there; reproduce first, ask why until you reach it, resist nil-check guards that silence crashes.
Apply before writing logic: choosing core types and data structures, sequencing scaffold-vs-feature work, asking what concurrent actors share. Get the data structures right so downstream code becomes obvious.
Apply when context is filling up: large outputs, long files, repeated reads, fan-out planning. Route bulk to subagents; keep summaries in the main thread, not raw payloads.
Apply when refactoring, evaluating diff size, or tempted to add abstractions, layers, or signal threading. Bias toward deletion and the smallest change that solves the problem.
Apply when designing commands, lifecycle steps, or processing loops that run amid crashes, restarts, and retries. Converge to the same end state regardless of partial prior runs.
Apply when introducing a new internal API while old callers still exist. Migrate callers and delete the old API in the same wave instead of preserving compatibility layers.
Apply when reviewing or shaping code that's hard to trace. Count layers between question and answer, and hidden state in the reader's head; collapse one-caller wrappers and shrink mutable scope.
Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files. Encode the domain in a structure instead of scattered conditionals.
Apply when tempted to ask 'should I do X?' on reversible work. Proceed, present the result, let the human course-correct after the fact; reserve confirmation for irreversible actions.
Apply during planned rewrites and migrations with explicit phase boundaries. Converge on the target architecture; don't preserve smooth intermediate states with throwaway compatibility code.
Apply after completing a task, before declaring done. Verify against the real artifact (run the feature, read the actual value, inspect the diff), not a proxy, self-report, or 'it compiles.'
Apply when integrating a new requirement into an existing design. Redesign as if the requirement had been a foundational assumption from day one, instead of bolting it on.
Apply when concurrent actors might write to the same file, branch, key, or state object. Eliminate the sharing first; serialize structurally only when one shared writer is a real invariant.
Apply to multi-step work (sweeps, migrations, runs of similar edits) and to how you stack commits and PRs. Break work into small units that each end in a verifiable state, check each before the next, and order delivery so the sequence proves itself to a reviewer.
Apply when sequencing an addition, refactor, or rewrite. Remove dead code, redundant validators, and stub references first, then build on the simpler base.
Apply when you write, change, or keep a test. Identify a relevant defect and check that the test detects it. Assert the required result or observable effect, including absence when the contract requires it.
Apply when designing types, reviewing a function signature, or writing code in any statically-typed language. Make illegal states unrepresentable, brand semantic primitives, parse external data at boundaries, refuse to lie to the compiler, exhaust variants, derive from authoritative schemas.
Reconstruct your recent working context from your own chat history, live state, and the shared record (user reports, prior fixes, incidents), then hand back a tight current-state brief. Use for 'recall my work on X', 'catch me up', 'what have I been working on', 'where did I leave off', before starting or resuming work, and before telling the user that something was never recorded.
Spawn three parallel review subagents over the active transcript, surface learnings, and route each to a concrete edit on an existing skill. Use when the user says reflect.
Keep a reviewable decision trail for long-running or unattended work: a TSV log with one row per decision (what, why, evidence, result). Local by default; commit it when a reviewer needs the trail to trust the result. Use for /show-me-your-work, autonomous or multi-phase runs, or work a human reviews after stepping away.
Fan out N parallel workers, drain them, and return one report. Use for /swarm, 'swarm this', or parallel coverage, races, gauntlets, and exploration.
Use only when the user explicitly asks for TDD, a failing test, or a regression test, OR when the bug has an obvious cheap local test target. Skip when the test path is unclear, expensive, integration-heavy, or not requested.
Explain a body of work plainly so a person actually understands it. Runs the `how` and `why` skills and weaves what they find into one clear explanation. Use for 'teach me this', 'help me really understand X', 'explain this change or subsystem to me'.
Layered technical-writing standard: Diátaxis structure, Google developer style sentences, STE instruction rules, Global English syntax. Use for /technical-writing or when writing or reviewing docs, RFCs, readmes, PR descriptions, or commit messages.
Always invoke whenever writing, changing, reviewing, or sweeping tests. Authoring gate for new tests plus audit workflow for low-value, implementation-coupled, or duplicative tests and the test-only production seams they demand.
Run an extremely strict maintainability review for abstraction quality, giant files, and spaghetti-condition growth. Use for a thermo-nuclear code quality review, thermonuclear review, deep code quality audit, or especially harsh maintainability review.
Plugin manifests1
{
"name": "arcane",
"displayName": "arcane",
"icon": "./assets/arcane-icon.png",
"version": "0.2.0",
"description": "Hybrid of superpowers + pstack workflows, for claude-code.",
"author": {
"name": "Anand Kumar Parhi"
},
"license": "MIT",
"keywords": [
"pstack",
"alchemy",
"workflow",
"principles",
"agent-style",
"subagents",
"unslop",
"claude-code"
],
"userConfig": {
"default_model": {
"type": "string",
"title": "Default model",
"description": "Model for the default tier, used by: feature, refactoring; judgment and prose; how explorer; how explainer; why investigators; why synthesizer; reflect tooling; reflect judgment, divergent, synthesizer; swarm workers. astra and sol need the switchboard plugin.",
"options": [
"models.json: opus",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: opus"
},
"strongest_model": {
"type": "string",
"title": "Strongest model",
"description": "Model for the strongest tier, used by: bug-fix; perf-issue; hillclimb; strongest judgment. astra and sol need the switchboard plugin.",
"options": [
"models.json: opus",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: opus"
},
"fast_model": {
"type": "string",
"title": "Fast model",
"description": "Model for the fast tier, used by: trivial edits. astra and sol need the switchboard plugin.",
"options": [
"models.json: sonnet",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: sonnet"
},
"panel_model_1": {
"type": "string",
"title": "Panel model 1",
"description": "One subagent of the panel tier, used by: arena runners; arena cross-judge pool; architect runners; interrogate reviewers. none drops the slot. astra and sol need the switchboard plugin.",
"options": [
"models.json: opus",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol",
"none"
],
"default": "models.json: opus"
},
"panel_model_2": {
"type": "string",
"title": "Panel model 2",
"description": "One subagent of the panel tier, used by: arena runners; arena cross-judge pool; architect runners; interrogate reviewers. none drops the slot. astra and sol need the switchboard plugin.",
"options": [
"models.json: fable",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol",
"none"
],
"default": "models.json: fable"
},
"panel_model_3": {
"type": "string",
"title": "Panel model 3",
"description": "One subagent of the panel tier, used by: arena runners; arena cross-judge pool; architect runners; interrogate reviewers. none drops the slot. astra and sol need the switchboard plugin.",
"options": [
"models.json: sonnet",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol",
"none"
],
"default": "models.json: sonnet"
},
"default_effort": {
"type": "string",
"title": "Default effort",
"description": "Reasoning effort for arcane subagents. session keeps the parent session effort.",
"options": [
"models.json: session",
"session",
"low",
"medium",
"high"
],
"default": "models.json: session"
},
"role_feature_refactoring": {
"type": "string",
"title": "Role: feature, refactoring",
"description": "Model for this alchemy role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_bug_fix": {
"type": "string",
"title": "Role: bug-fix",
"description": "Model for this alchemy role. The models.json value follows the strongest tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: strongest (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: strongest (opus)"
},
"role_perf_issue": {
"type": "string",
"title": "Role: perf-issue",
"description": "Model for this alchemy role. The models.json value follows the strongest tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: strongest (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: strongest (opus)"
},
"role_hillclimb": {
"type": "string",
"title": "Role: hillclimb",
"description": "Model for this alchemy role. The models.json value follows the strongest tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: strongest (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: strongest (opus)"
},
"role_judgment_and_prose": {
"type": "string",
"title": "Role: judgment and prose",
"description": "Model for this alchemy role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_strongest_judgment": {
"type": "string",
"title": "Role: strongest judgment",
"description": "Model for this alchemy role. The models.json value follows the strongest tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: strongest (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: strongest (opus)"
},
"role_trivial_edits": {
"type": "string",
"title": "Role: trivial edits",
"description": "Model for this alchemy role. The models.json value follows the fast tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: fast (sonnet)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: fast (sonnet)"
},
"role_how_explorer": {
"type": "string",
"title": "Role: how explorer",
"description": "Model for this how role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_how_explainer": {
"type": "string",
"title": "Role: how explainer",
"description": "Model for this how role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_why_investigators": {
"type": "string",
"title": "Role: why investigators",
"description": "Model for this why role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_why_synthesizer": {
"type": "string",
"title": "Role: why synthesizer",
"description": "Model for this why role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_reflect_tooling": {
"type": "string",
"title": "Role: reflect tooling",
"description": "Model for this reflect role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_reflect_judgment_divergent_synthesizer": {
"type": "string",
"title": "Role: reflect judgment, divergent, synthesizer",
"description": "Model for this reflect role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_arena_runners": {
"type": "string",
"title": "Role: arena runners",
"description": "Comma-separated models for arena, one subagent each. Keep the models.json value to follow the panel tier. astra and sol need the switchboard plugin.",
"default": "models.json: panel (opus, fable, sonnet)"
},
"role_arena_cross_judge_pool": {
"type": "string",
"title": "Role: arena cross-judge pool",
"description": "Comma-separated models for arena, one subagent each. Keep the models.json value to follow the panel tier. astra and sol need the switchboard plugin.",
"default": "models.json: panel (opus, fable, sonnet)"
},
"role_swarm_workers": {
"type": "string",
"title": "Role: swarm workers",
"description": "Model for this swarm role. The models.json value follows the default tier, including its /config value. astra and sol need the switchboard plugin.",
"options": [
"models.json: default (opus)",
"opus",
"fable",
"sonnet",
"haiku",
"inherit-parent",
"astra",
"sol"
],
"default": "models.json: default (opus)"
},
"role_architect_runners": {
"type": "string",
"title": "Role: architect runners",
"description": "Comma-separated models for architect, one subagent each. Keep the models.json value to follow the panel tier. astra and sol need the switchboard plugin.",
"default": "models.json: panel (opus, fable, sonnet)"
},
"role_interrogate_reviewers": {
"type": "string",
"title": "Role: interrogate reviewers",
"description": "Comma-separated models for interrogate, one subagent each. Keep the models.json value to follow the panel tier. astra and sol need the switchboard plugin.",
"default": "models.json: panel (opus, fable, sonnet)"
}
},
"agents": [
"./agents/comment-sicko.md",
"./agents/alchemy-agent.md",
"./effort-agents/effort-high.md",
"./effort-agents/effort-low.md",
"./effort-agents/effort-medium.md",
"./effort-agents/alchemy-agent-high.md",
"./effort-agents/alchemy-agent-low.md",
"./effort-agents/alchemy-agent-medium.md"
]
}For maintainers
If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.
[arcane on Agent Plugins Marketplace](https://pluginsmp.com/plugins/arcane)