AI-native Git workflow automation for Claude Code
This plugin is not yet in any themed marketplace. To install it, you'll need to add it from GitHub directly.
This plugin uses advanced features that require additional trust:
Only install plugins from repositories you trust. Review the source code before installation.
Choose your preferred installation method below
A marketplace is a collection of plugins. Every plugin gets an auto-generated marketplace JSON for individual installation, plus inclusion in category and themed collections. Add a marketplace once (step 1), then install any plugin from it (step 2).
One-time setup for access to all plugins
When to use: If you plan to install multiple plugins now or later
Step 1: Add the marketplace (one-time)
/plugin marketplace add https://claudepluginhub.com/marketplaces/all.json
Run this once to access all plugins
Step 2: Install this plugin
/plugin install devsolo-plugin@all
Use this plugin's auto-generated marketplace JSON for individual installation
When to use: If you only want to try this specific plugin
Step 1: Add this plugin's marketplace
/plugin marketplace add https://claudepluginhub.com/marketplaces/plugins/devsolo-plugin.json
Step 2: Install the plugin
/plugin install devsolo-plugin@devsolo-plugin
AI-native Git workflow automation via Model Context Protocol (MCP) and native slash commands for Claude Code
devsolo is a powerful Claude Code plugin that streamlines Git workflows while maintaining clean, linear commit history. It provides structured validation, automated PR management, and seamless integration with GitHub through native slash commands and specialized sub-agents.
/devsolo
commands in Claude CodeStatus: Coming soon - awaiting Claude Code marketplace
When the Claude Code marketplace becomes available, you'll be able to install with a single command:
/plugin install devsolo
This automatically:
For testing or development, see .
If you prefer manual control or are testing local changes:
Clone and build the devsolo repository:
git clone https://github.com/slamb2k/devsolo.git
cd devsolo
npm install
npm run build
Configure Claude Code to load the MCP server: Add to your Claude Code MCP configuration file:
{
"mcpServers": {
"devsolo": {
"command": "node",
"args": ["/path/to/devsolo/dist/mcp/devsolo-mcp-server.js"]
}
}
}
Restart Claude Code to load the MCP tools
Initialize in your project using natural language:
"Initialize devsolo in this project"
Claude will invoke the devsolo_init
tool automatically.
For detailed installation instructions, see the Installation Guide.
New to devsolo? Follow these steps to get started with Claude Code.
devsolo provides both native slash commands and direct MCP tool calls for maximum flexibility:
Option 1: Slash Commands (Recommended) 🎯
/devsolo:init - Initialize devsolo
/devsolo:launch - Start a new feature
/devsolo:commit - Commit changes
/devsolo:ship - Ship your changes (full workflow)
/devsolo:status - Check current status
Option 2: Natural Language (Direct MCP Tool Calls)
"Use devsolo_init to initialize devsolo in this project"
"Use devsolo_launch to start a new feature for authentication"
"Use devsolo_ship to commit, push, create PR, and merge"
Slash commands provide better integration, auto-completion, and coordinated workflows via specialized sub-agents (git-droid, docs-droid)!
Using slash command:
/devsolo:init
Or using natural language:
Use devsolo_init to initialize devsolo in this project
This creates a .devsolo
directory with configuration and session storage.
# Option A: GitHub CLI (easiest)
gh auth login
# Option B: Personal access token
export GITHUB_TOKEN=ghp_your_token_here
Using slash command:
/devsolo:launch
Or using natural language:
Use devsolo_launch to start a new feature for [your feature description]
This creates a new feature branch and starts tracking your workflow.
Work on your feature as normal. devsolo tracks your session automatically.
Check status:
/devsolo:status
Using slash command:
/devsolo:ship
Or using natural language:
Use devsolo_ship to commit, push, create PR, and merge this feature
That's it! This single MCP tool call:
Ready for your next feature! 🎉
For always-visible workflow status in Claude Code:
/devsolo:status-line
devsolo provides native Claude Code slash commands for all functionality. Type /devsolo
in Claude Code to see the full list.
Command | Description | Example |
---|---|---|
/devsolo:init | Initialize devsolo in your project | /devsolo:init |
/devsolo:launch | Start a new feature workflow | /devsolo:launch |
/devsolo:commit | Commit changes with a message | /devsolo:commit |
/devsolo:ship | Complete workflow (commit, push, PR, merge) | /devsolo:ship |
/devsolo:swap | Switch between workflow sessions | /devsolo:swap feature/other-branch |
/devsolo:abort | Abort current workflow session | /devsolo:abort |
/devsolo:sessions | List all workflow sessions | /devsolo:sessions |
/devsolo:status | Show current workflow status | /devsolo:status |
/devsolo:cleanup | Clean up expired sessions | /devsolo:cleanup |
/devsolo:hotfix | Create emergency hotfix workflow | /devsolo:hotfix |
/devsolo:status-line | Manage Claude Code status line | /devsolo:status-line |
/devsolo:prime | Prime understanding of codebase | /devsolo:prime |
/devsolo:docs | Manage documentation | /devsolo:docs |
When you use a slash command like /devsolo:launch
, Claude Code:
Benefits of slash commands:
/
menu with auto-completiondevsolo uses a plugin architecture with clear separation of concerns:
User → Slash Command → Sub-Agent → MCP Tools → Git/GitHub
↓ ↓ ↓
Orchestration Coordination Execution
devsolo includes specialized sub-agents for intelligent coordination:
git-droid 🤖 - Git workflow coordination and automation
docs-droid 📚 - Documentation management and validation
This architecture ensures maintainability, testability, and a great user experience.
All devsolo functionality is exposed through MCP tools that Claude Code can invoke.
devsolo_init
Initialize devsolo in your project. Creates configuration and session storage.
Input:
scope
(optional): Installation scope - "project" or "user" (default: "project")force
(optional): Force reinitialization (default: false)Returns: Structured result with success status and initialization details
devsolo_launch
Start a new feature workflow with automatic branch creation.
Input:
branchName
(optional): Specify branch name (auto-generated if omitted)description
(optional): Add description for the featureforce
(optional): Launch even with uncommitted changesstashRef
(optional): Git stash reference to restore after branch creationpopStash
(optional): Whether to pop the stash (default: true if stashRef provided)Returns: SessionToolResult with pre/post-flight check results
devsolo_commit
Commit changes to the current feature branch.
Input:
message
(optional): Commit message (generated if omitted)stagedOnly
(optional): If true, only commit staged files (default: false)Returns: SessionToolResult with commit details
devsolo_ship
COMPLETE WORKFLOW: Complete the entire workflow automatically in a single command!
Ship handles everything: push → PR → CI wait → merge → cleanup
What it does:
Input:
prDescription
(optional): PR description (required for new PRs)push
(optional): Push to remote (default: true)createPR
(optional): Create pull request (default: true)merge
(optional): Merge PR after CI passes (default: true)force
(optional): Override safety checksyes
(optional): Skip confirmationsstagedOnly
(optional): Only commit staged files when committing changesReturns: GitHubToolResult with PR number, URL, and merge status
devsolo_sessions
List and manage active workflow sessions.
Input:
all
(optional): Show all sessions including completedverbose
(optional): Detailed session informationcleanup
(optional): Remove expired sessionsReturns: QueryToolResult with session list
devsolo_swap
Switch between active workflow sessions.
Input:
branchName
: Branch to swap to (required)force
(optional): Force swap with uncommitted changesstash
(optional): Stash changes before swappingReturns: SessionToolResult with swap details
devsolo_abort
Cancel an active workflow session.
Input:
branchName
(optional): Specify branch to abort (current if omitted)deleteBranch
(optional): Delete the branch after abortingforce
(optional): Force abortyes
(optional): Skip confirmationReturns: SessionToolResult with abort details
devsolo_status
Show current workflow status and session information.
Input: None required
Returns: QueryToolResult with current status
devsolo_status_line
Manage Claude Code status line display.
Input:
action
: Action to perform - "enable", "disable", "update", or "show" (required)format
(optional): Custom format string (e.g., "{icon} {branch} {state}")showBranchInfo
(optional): Show branch name in status lineshowSessionInfo
(optional): Show session ID in status lineshowStateInfo
(optional): Show workflow state in status lineReturns: QueryToolResult with status line configuration
devsolo_hotfix
Create emergency hotfix workflow.
Input:
issue
(optional): Issue number or descriptionseverity
(optional): Severity level - "critical", "high", or "medium"force
(optional): Force operationsskipTests
(optional): Skip running testsskipReview
(optional): Skip code reviewautoMerge
(optional): Automatically merge when checks passyes
(optional): Skip confirmationsReturns: SessionToolResult with hotfix details
All MCP tools return structured JSON results for programmatic handling by Claude Code:
{
success: boolean;
branchName?: string;
state?: string;
preFlightChecks?: CheckResult[];
postFlightVerifications?: CheckResult[];
errors?: string[];
warnings?: string[];
nextSteps?: string[];
}
{
success: boolean;
prNumber?: number;
prUrl?: string;
merged?: boolean;
preFlightChecks?: CheckResult[];
postFlightVerifications?: CheckResult[];
errors?: string[];
warnings?: string[];
}
{
success: boolean;
data: Record<string, unknown>;
message?: string;
errors?: string[];
warnings?: string[];
}
Every MCP tool includes comprehensive validation with structured results:
Pre-Flight Checks (before execution):
force
flagPost-Flight Verifications (after execution):
Check Result Structure:
{
name: string;
passed: boolean;
message: string;
severity: 'error' | 'warning' | 'info';
details?: {
expected?: any;
actual?: any;
suggestion?: string;
};
}
See docs/guides/validation.md for complete documentation.
devsolo uses a deterministic state machine to manage workflows:
INIT → BRANCH_READY → CHANGES_COMMITTED → PUSHED →
PR_CREATED → WAITING_APPROVAL → MERGED → COMPLETE
Each state has specific allowed transitions and validations to ensure workflow integrity.
devsolo integrates with GitHub API for automated PR management.
Option 1: Use GitHub CLI (Recommended for local development)
gh auth login
Option 2: Set environment variable (For CI/CD)
export GITHUB_TOKEN=your_github_token
# or
export GH_TOKEN=your_github_token
devsolo automatically detects and uses gh
CLI authentication if available.
The status line provides at-a-glance workflow information directly in Claude Code:
[devsolo] 💻 0c2a20a7 | feature/my-feature | BRANCH_READY
Status Line Components:
Managing the Status Line:
Use devsolo_status_line with action "enable"
Use devsolo_status_line with action "disable"
Use devsolo_status_line with action "show"
Use devsolo_status_line with action "update" and showBranchInfo true
Sessions are stored in .devsolo/sessions/
with automatic persistence:
Configuration is stored in .devsolo/config.yaml
:
initialized: true
scope: project
gitPlatform:
type: github
owner: your-org
repo: your-repo
preferences:
defaultBranchPrefix: feature/
autoCleanup: true
prTemplate:
footer: "🤖 Generated with devsolo"
devsolo follows a pure MCP architecture:
┌─────────────────────────────────┐
│ Claude Code │
│ (MCP Client - AI Agent) │
└─────────────────────────────────┘
↓ JSON-RPC
┌─────────────────────────────────┐
│ MCP Server │
│ (DevSoloMCPServer) │
└─────────────────────────────────┘
↓
┌─────────────────────────────────┐
│ MCP Tools Layer │
│ (LaunchTool, ShipTool, etc.) │
└─────────────────────────────────┘
↓
┌─────────────────────────────────┐
│ Validation Services Layer │
│ (Pre/Post-Flight Checks) │
└─────────────────────────────────┘
↓
┌─────────────────────────────────┐
│ Core Services Layer │
│ (Git, GitHub, Sessions, Config) │
└─────────────────────────────────┘
↓
┌─────────────────────────────────┐
│ Persistence Layer │
│ (File System & Git Repo) │
└─────────────────────────────────┘
# Clone the repository
git clone https://github.com/slamb2k/devsolo.git
cd devsolo
# Install dependencies
npm install
# Build TypeScript
npm run build
# Run tests
npm test
# Run with coverage
npm run test:coverage
# Build MCP server
npm run build:mcp
# Start MCP server for testing
npm run mcp:start
# Run MCP tests
npm run test:mcp
devsolo includes comprehensive tests for all components:
# Run all tests
npm test
# Watch mode
npm run test:watch
# Coverage report
npm run test:coverage
# Unit tests only
npm run test:unit
# Integration tests only
npm run test:integration
# MCP server tests only
npm run test:mcp
Contributions are welcome! Please see our Contributing Guide for details.
MIT License - see LICENSE file for details
devsolo v2.0 - AI-native Git workflow automation for Claude Code 🤖
2.5.14