By gruckion
Persist Linear issue context across Claude Code sessions so you can continue marathon development tasks without restarting — automatic state management and progress tracking between sessions.
Implement the current feature following the implementation plan.
Completes an issue cycle - updates Linear, state file, and reports progress. Called at the end of verify-plan-code-test-qa loop.
Create Linear project and issues from specification. Used when starting a new marathon.
Create implementation plan for the current Linear issue. Reviews codebase and documents approach.
Create E2E tests for web features. Skips non-web projects.
SQLite database implementation using LibSQL client and Drizzle ORM. This skill covers local development, Turso cloud, and Cloudflare D1 deployments.
Autonomous long-running development from specifications. Use when user wants to build an application from a spec file, run continuous development, or automate feature implementation. Triggers on phrases like "marathon this", "build from spec", "autonomous development", "keep coding until done".
Detects project type, package manager, and monorepo structure. Returns correct commands for test/build/lint/dev. Run at project initialization and cache results in state. Use before running any build/test commands.
Configure Playwright for E2E testing. Use when setting up end-to-end tests, when no E2E framework is detected, or when the user asks to configure browser testing.
Configure Vitest for unit and integration testing. Use when setting up a test framework, when no test runner is detected, or when the user asks to configure testing.
External network access
Connects to servers outside your machine
Uses power tools
Uses Bash, Write, or Edit tools
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.

Give it a spec file. Get a tested, working application.
Marathon Ralph is a Claude Code plugin that autonomously builds applications from specification files. It creates a Linear project, breaks your spec into issues, and works through them one by one — writing code, tests, and E2E tests — until everything is done.
Building a full application requires managing dozens of tasks, maintaining quality across sessions, and ensuring every feature is tested. Marathon Ralph automates this entire workflow:
# Add the marketplace
claude plugin marketplace add gruckion/marathon-ralph
# Install the plugin
claude plugin install marathon-ralph
# 1. Start a marathon from your spec file
/marathon-ralph:run examples/todo_app_spec.md
# 2. Check progress anytime
/marathon-ralph:status
# 3. Stop if needed (preserves progress)
/marathon-ralph:cancel
That's it. The marathon runs autonomously until all issues are complete.
<project_specification>
<project_name>Simple Todo App</project_name>
<project_directory>simple-todo-app</project_directory>
<overview>
A minimal todo application with basic CRUD functionality.
</overview>
<technology_stack>
<frontend>Next.js 15, Tailwind CSS, shadcn/ui</frontend>
<backend>oRPC, Drizzle ORM, SQLite</backend>
</technology_stack>
<database_schema>
<todos_table>
- id: text (primary key)
- text: text (required)
- completed: integer (0 or 1)
</todos_table>
</database_schema>
<api_endpoints>
- todo.getAll: Get all todos
- todo.create: Create todo
- todo.delete: Delete todo
- todo.toggle: Toggle completion
</api_endpoints>
<implementation_steps>
<step number="1">Setup and Database</step>
<step number="2">API Routes</step>
<step number="3">UI Implementation</step>
</implementation_steps>
<success_criteria>
- Can add, toggle, delete todos
- Data persists in SQLite
- No TypeScript errors
</success_criteria>
</project_specification>
See examples/ for full spec files. Marathon Ralph reads the spec, creates Linear issues, and implements each one with full test coverage.
Marathon Ralph requires Linear MCP for project management.
# Add the Linear MCP server
claude mcp add --transport http linear https://mcp.linear.app/mcp
/mcp in Claude Code| Command | Description |
|---|---|
/marathon-ralph:run <spec-file> | Start new marathon from spec |
/marathon-ralph:run | Resume existing marathon |
/marathon-ralph:status | Show progress and current issue |
/marathon-ralph:cancel | Stop marathon (preserves Linear project) |
You can also use natural language:
For each issue, Marathon Ralph runs this loop:
VERIFY → PLAN → CODE → TEST → QA → DONE
If verification fails, a bug issue is automatically created and prioritized.
Marathon state is stored in .claude/marathon-ralph.json:
{
"active": true,
"phase": "coding",
"session_id": "8a718ed2-2856-435b-bd9a-63c5b8291b42",
"project": {
"language": "node",
"packageManager": "bun",
"monorepo": { "type": "turbo", "workspaces": ["apps/*"] },
"commands": {
"test": "turbo run test",
"testWorkspace": "bun run --filter={workspace} test"
}
},
"linear": {
"project_name": "My Todo App",
"total_issues": 18
},
"stats": {
"completed": 7,
"in_progress": 1,
"todo": 10
}
}
The project key caches detected project configuration (language, package manager, monorepo type, commands) so agents use the correct commands.
Add .claude/ to your .gitignore.
Marathon Ralph uses a Stop Hook to continue automatically. When Claude would normally exit, the hook checks for remaining issues and continues the loop.
npx claudepluginhub gruckion/marathon-ralphSchedule Claude Code to run tasks at future times using macOS launchd or Linux cron
Fixes the working directory tracking bug in Claude Code by notifying Claude when the CWD changes after cd commands
Specification-driven development workflow: specify → plan → tasks → implement
Spec-driven development for big features. When features get too big, plan mode gets too vague—leading to hallucinations during implementation. ShipSpec replaces vague plans with structured PRDs, technical designs, and ordered tasks that keep Claude grounded.
Linear issue tracking integration and workflow management
AI-powered cascading development framework with design document system and multi-agent collaboration. Breaks down projects into Features (Mega Plan), Features into Stories (Hybrid Ralph), with auto-generated technical design docs, dependency-driven batch execution, Git Worktree isolation, and support for multiple AI agents (Codex, Amp, Aider, etc.).
AI-Driven Engineering workflow commands for managing issues, tasks, implementation, and PRs.
Spec-driven development with task-by-task execution. Research, requirements, design, tasks, autonomous implementation, and epic triage for multi-spec feature decomposition.