By mikeydotio
AI-native project management for coding agents. Proactive story tracking, session handoffs, and dependency-aware task selection via the storyhook CLI.
Use at session start or whenever you need to understand project state -- open stories, priorities, blockers, and next recommended task. Shows project overview and surfaces the most important work.
Use when ending a work session or switching contexts. Generates a comprehensive handoff document showing what was accomplished, what changed, and what remains. Also runs automatically when sessions end via the stop hook.
Use when the storyhook 'story' CLI is missing (command not found) and an operation needs it, or when explicitly asked to install the storyhook CLI. Installs the story binary via the official installer or cargo, then verifies. Useful after installing the plugin via the Claude Code marketplace, which does not include the CLI.
Use when breaking down a feature, spec, or requirement into structured stories with dependencies and priorities. Accepts a file path (markdown or YAML spec) or inline description. Creates stories in storyhook with relationships.
Use when setting up storyhook in a new project, when the 'story' command is not found, or when asked to configure storyhook integration. Detects CLI availability, installs if missing, initializes project, and configures plugin behavior.
Executes bash commands
Hook triggers when Bash tool is used
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
story is a CLI-first story and issue tracker built for local repositories, scripting, and AI coding agents.
It keeps active work in project-local JSON event logs, archives closed work into SQLite, and favors short commands that are easy to type, pipe, and automate.
story/.storyhook so it can travel with the repository.--json output, and explicit exit codes.story <id> "comment"OPEN or CLOSEDawaiting blockersstory next)ancestor-of and descendent-of family relationships on show outputCLOSED statestory context)story handoff)story doctor and best-effort repair with story doctor --fixcurl -fsSL https://raw.githubusercontent.com/mikeydotio/storyhook/main/install.sh | sh
This detects your platform and architecture, downloads the latest release binary, and installs it to ~/.local/bin/story.
To install to a different location:
STORYHOOK_INSTALL_DIR=/usr/local/bin curl -fsSL https://raw.githubusercontent.com/mikeydotio/storyhook/main/install.sh | sh
To install a specific version:
STORYHOOK_VERSION=v0.2.0 curl -fsSL https://raw.githubusercontent.com/mikeydotio/storyhook/main/install.sh | sh
cargo install storyhook
Or from a local checkout:
cargo install --path .
Download a release archive from the releases page and extract the story binary to a directory in your PATH.
Available targets:
story-x86_64-unknown-linux-gnu.tar.gz — Linux x86_64story-aarch64-unknown-linux-gnu.tar.gz — Linux ARM64story-x86_64-apple-darwin.tar.gz — macOS Intelstory-aarch64-apple-darwin.tar.gz — macOS Apple Siliconstoryhook ships a Claude Code plugin (plugin/claude-code/) that adds workflow skills
(/storyhook:storyhook-context, /storyhook:storyhook-work, …) and session hooks. There
are two ways to install it; both register it properly so Claude Code loads the
/storyhook:* commands.
CLI-first — if you already installed the story CLI (above):
story plugin install claude-code
This registers mikeydotio/storyhook as a marketplace and installs the plugin through the
claude CLI. It requires the claude CLI on your PATH.
Marketplace-first — if you prefer to install the plugin before the CLI:
/plugin marketplace add mikeydotio/storyhook
/plugin install storyhook@storyhook
The marketplace route installs the plugin but not the story CLI. Once the plugin loads,
run /storyhook:storyhook-install and the plugin will install and verify the CLI for you.
After installing the plugin (either route), start a new Claude Code session so the
/storyhook:*commands load.
If installed via the install script or manual download:
rm ~/.local/bin/story
If installed via Cargo:
cargo uninstall storyhook
To remove the Claude Code plugin:
story plugin uninstall claude-code
This unregisters the plugin via the claude CLI, cleans up project-local config, and
removes any legacy plugin directory left by older versions.
Initialize a project inside the repository you want to track:
story init
Create a story:
story new "Build CLI parser"
Add collaborators:
story member add "Mikey Ward <[email protected]>"
story member add -g mikeyward
Work the story:
story SH-1 assign mikey
story SH-1 "Parser skeleton is in place"
story SH-1 awaits "waiting on command grammar decision"
story SH-1 awaits --clear
story SH-1 is in-progress "Hooked up argument routing"
story SH-1 is done "Merged and verified"
Relate stories:
story SH-1 parent-of SH-2
story SH-2 precedes SH-3
story SH-4 conflicts-with SH-5
story SH-2 parent-of SH-3 --remove
Prioritize, label, and triage:
npx claudepluginhub mikeydotio/storyhook --plugin storyhookFeature development with code-architect/explorer/reviewer agents, CLAUDE.md audit and session learnings, and Agent Skills creation with eval benchmarking from Anthropic.
Production-grade engineering skills for AI coding agents — covering the full software development lifecycle from spec to ship.
Permanent coding companion for Claude Code — survives any update. MCP-based terminal pet with ASCII art, stats, reactions, and personality.
Claude harness - A harness for solo developers (Vibecoders) to handle full-cycle contract development.
Complete Claude Code configs for mobile development - Android, iOS, and Kotlin Multiplatform