The Epik plugin: manager-mode feature development on GitHub. Converge on a design in CoWork, author the feature's issue graph, and launch autonomous builds on Claude Code on the web — without leaving the thinking.
A feature is a unit of code implemented in one or more stories (issues).
epik-plugin/
.claude-plugin/
plugin.json # plugin manifest
marketplace.json # single-entry marketplace (this repo installs itself)
commands/
feature.md # orchestrate a feature (Agent Teams, dependency order)
issue.md # implement one issue end to end
hooks/
hooks.json # SessionStart Theory/Practice nudge
session-start.sh
.mcp.json # declares the EpikMCP server (does not contain it)
The plugin is policy; the MCP is mechanism. EpikMCP (separate repo) is the GitHub mechanism — it authors the issue graph and reads status. The plugin declares the server via .mcp.json; it never vendors its source. Installing the plugin brings the declared server along, including into Claude Code on the web.
- Claude Code up to date — type
/pluginand confirm the command exists. If it doesn't, update Claude Code. uvinstalled — the plugin launchesEpikMCPwithuvx. See https://docs.astral.sh/uv/.ghinstalled and authenticated — rungh auth login, verify withgh auth status.EpikMCPdelegates all GitHub auth togh.EpikMCPrepo reachable —.mcp.jsonfetches it fromgithub.com/wpm/EpikMCP. If that repo is private, make sure git can authenticate to it.
If you previously wired an EpikMCP server into the desktop app by hand, remove it first. The plugin registers an MCP server named EpikMCP, and two same-named servers in one client collide (duplicate mcp__EpikMCP__* tools).
- Edit
~/Library/Application Support/Claude/claude_desktop_config.jsonand delete theEpikMCPblock undermcpServers.
A manual entry is a plain MCP registration, not a plugin, so /plugin uninstall does not apply to it.
Fastest way to try it; loads the plugin for one session only:
claude --plugin-dir /path/to/epik-pluginIterate with /reload-plugins after edits. No marketplace or install step needed.
This repo is its own single-entry marketplace.
-
Add the marketplace — point at the plugin directory (it holds
.claude-plugin/marketplace.json):/plugin marketplace add /path/to/epik-plugin -
Install the plugin. The form is
plugin-name@marketplace-name; here both areepik:/plugin install epik@epik -
If it doesn't show up immediately, run
/reload-plugins.
After you commit later changes to the plugin, run /plugin marketplace update epik then /reload-plugins (or bump version in plugin.json) to pick them up.
/helplists the commands, namespaced:/epik:featureand/epik:issue.- The
EpikMCPtools (mcp__EpikMCP__*) are available — try a read, e.g. ask for the repo's open issues. - A fresh session prints the Theory/Practice "which mode are you in" nudge from the SessionStart hook.
A local-path marketplace isn't reachable from a cloud VM. To use Epik there, push epik-plugin to GitHub and declare it as a marketplace/plugin in the project repo's .claude/settings.json; the plugin and its MCP declaration then load at session start. The session's setup script must also apt install -y gh and provide a GH_TOKEN, since gh isn't pre-installed in the cloud.
Two commands, both namespaced under epik:
/epik:feature [feature issue number or GitHub URL] [feature branch]— implement a feature: the set of related issues a feature issue points to. It creates the feature branch, implements the issues in dependency order using Agent Teams (in parallel where the dependencies allow), opens a pull request per issue against the feature branch, and shepherds each through CI and review./epik:issue [issue number or GitHub URL] [target branch]— implement a single issue end to end: work in a git worktree, get tests passing, open a pull request, drive it through/reviewand CI, merge into the target branch, close the issue, and clean up.
The SessionStart hook prints a Theory/Practice nudge so you stay aware of which mode you're in: manager mode (delegated, autonomous feature builds) is safe only once the design has converged; while you're still discovering the design you're in theory-building mode and shouldn't delegate a build yet.
Skeleton (v0.1.0). Manifest, marketplace, and hook formats are starting points and may need adjustment against the current plugin schema.