Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,7 @@ Claude Plugins are extensions that enhance Claude Code with custom slash command
- [codebase-graph](https://github.com/Phoenixrr2113/codebase-graph) - Code intelligence MCP server that builds knowledge graphs from source code with 42-language tree-sitter AST parsing and FalkorDB.
- [agntk](https://github.com/Phoenixrr2113/agntk) - Zero-config AI agent CLI with persistent named agents, 20+ built-in tools, and hardware-aware local model selection.
- [backlog](https://github.com/backloghq/backlog) - Persistent, cross-session task management. 24 MCP tools for tasks, projects, tags, dependencies, and docs. 7 skills for planning, standups, and handoffs. Event-sourced storage, agent coordination, pure TypeScript. ([Website](https://backloghq.io))
- [solopilot](./solopilot) - PM-driven autonomous engineering for solo builders. One command bootstraps spec-truth `PRD.md` + 3-agent (Coordinator/Implementor/Verifier) + drift detection + append-only learnings. Bundles `/autopilot`, `/cpp` (commit·push·PR), `/grill` (adversarial review), `/learn` (compound from PR).

### Companion & Personality

Expand Down
40 changes: 40 additions & 0 deletions solopilot/.claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"$schema": "https://raw.githubusercontent.com/hesreallyhim/claude-code-json-schema/main/schemas/marketplace.schema.json",
"name": "solopilot",
"description": "PM-driven autonomous engineering for solo builders.",
"version": "0.1.0",
"owner": {
"name": "flow"
},
"plugins": [
{
"name": "solopilot",
"source": "./",
"description": "PM-driven autonomous engineering for solo builders. Spec-truth, 3-agent (Coordinator/Implementor/Verifier), drift-resistant, self-improving. One command bootstraps the whole system.",
"version": "0.1.0",
"author": {
"name": "flow"
},
"homepage": "https://github.com/Mrbaeksang/solopilot",
"repository": "https://github.com/Mrbaeksang/solopilot",
"license": "MIT",
"category": "developer-tools",
"tags": [
"autonomous-agents",
"pm-driven",
"spec-driven",
"compound-engineering",
"agent-harness",
"solo-developer"
],
"keywords": [
"claude-code",
"claude-code-plugin",
"autonomous-agents",
"pm-driven",
"spec-driven",
"compound-engineering"
]
}
]
}
23 changes: 23 additions & 0 deletions solopilot/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"$schema": "https://raw.githubusercontent.com/hesreallyhim/claude-code-json-schema/main/schemas/plugin.schema.json",
"name": "solopilot",
"version": "0.1.0",
"description": "PM-driven autonomous engineering for solo builders. Spec-truth, 3-agent (Coordinator/Implementor/Verifier), drift-resistant, self-improving. One command bootstraps the whole system.",
"author": {
"name": "flow"
},
"homepage": "https://github.com/Mrbaeksang/solopilot",
"repository": "https://github.com/Mrbaeksang/solopilot",
"license": "MIT",
"keywords": [
"claude-code",
"claude-code-plugin",
"autonomous-agents",
"pm-driven",
"spec-driven",
"compound-engineering",
"agent-harness",
"solo-developer",
"drift-detection"
]
}
44 changes: 44 additions & 0 deletions solopilot/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# OS
.DS_Store
Thumbs.db

# Editors
.idea/
.vscode/
*.swp
*.swo
*~

# Node
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Python
__pycache__/
*.py[cod]
.venv/
venv/

# Logs / temp
*.log
*.tmp
.solopilot/grill/*.md

# Secrets — never commit
.env
.env.local
.env.*.local
*.pem
*.key
credentials.json

# Build artifacts
dist/
build/
*.tsbuildinfo

# Caches
.npm/
.cache/
33 changes: 33 additions & 0 deletions solopilot/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Changelog

All notable changes to **solopilot** will be documented here.

The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Planned for 0.2
- Interactive PRD interview during `/autopilot` (replaces empty PRD template)
- Pre-built routine bundles (`/autopilot --routines daily,weekly,on-pr`)

## [0.1.0] - 2026-04-27

Initial release. PM-driven autonomous engineering for solo builders.

### Added
- `/autopilot` — one-shot bootstrap of the full system: stack detection (11 manifest types), `CLAUDE.md` merge-only generator, `specs/PRD.md` template, 3-agent setup (Coordinator/Implementor/Verifier), `.claude/settings.json` with PostToolUse hooks, `LEARNINGS.md` append-only knowledge base, `/schedule` block printer.
- `/cpp` — Conventional Commits message generator + commit + push + draft PR via `gh`. Refuses on secret patterns. Never `--amend`. Never `git add -A`.
- `/grill` — staff-engineer adversarial review with 5 parallel passes (security / types / concurrency / edge cases / scope drift). Severity tags. Verdict: SHIP / FIX-FIRST / REWRITE.
- `/learn` — extract patterns and anti-patterns from a PR or session, append to `LEARNINGS.md` (append-only) and the most generalizable to `CLAUDE.md`'s `## 학습` section.
- `--autoloop` mode for `/autopilot` — self-paced PM cycle (verify → work → compound) with stop conditions.
- Marketplace manifest for direct install via `/plugin marketplace add` and `/plugin install`.
- MIT license.

### Safety defaults
- All file generators are merge-only or append-only — never overwrite user content.
- `permissions.deny[]` includes `git push --force`, `git reset --hard`, `rm -rf /`, `npm publish`, `cargo publish`, `gem push`, `pypi upload`.
- `--dangerously-skip-permissions` is never enabled.
- `/schedule` is never invoked directly — copy-paste strings are printed instead.

[Unreleased]: https://github.com/Mrbaeksang/solopilot/compare/v0.1.0...HEAD
[0.1.0]: https://github.com/Mrbaeksang/solopilot/releases/tag/v0.1.0
21 changes: 21 additions & 0 deletions solopilot/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2026 flow

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
202 changes: 202 additions & 0 deletions solopilot/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
<div align="center">

# 🛩️ solopilot

**PM-driven autonomous engineering for solo builders.**

One command. Full team. Coordinator + Implementor + Verifier work the spec, you sleep.

[![Stars](https://img.shields.io/github/stars/Mrbaeksang/solopilot?style=flat-square&logo=github&color=yellow)](https://github.com/Mrbaeksang/solopilot/stargazers)
[![License: MIT](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](LICENSE)
[![Claude Code](https://img.shields.io/badge/Claude%20Code-plugin-orange?style=flat-square)](https://code.claude.com)
[![Version](https://img.shields.io/badge/version-0.1.0-green?style=flat-square)](CHANGELOG.md)
[![PRs welcome](https://img.shields.io/badge/PRs-welcome-brightgreen?style=flat-square)](#contributing)

[Install](#install) · [Quick start](#quick-start) · [Commands](#commands) · [How it works](#how-it-works) · [Why](#why-solopilot)

</div>

---

> **TL;DR** — Run `/autopilot` in any repo. It detects your stack, writes `CLAUDE.md`, sets up a Coordinator (PM) / Implementor (engineer) / Verifier (QA) trio with `specs/PRD.md` as immutable truth, wires hooks for formatter/typecheck, drops in `/cpp` / `/grill` / `/learn` for the daily loop, and prints the exact `/schedule` strings to put it on autopilot. Compound engineering + context-driven development + agent harness, in one slash.

---

## Install

```sh
# 1. Add the marketplace
/plugin marketplace add Mrbaeksang/solopilot

# 2. Install the plugin
/plugin install solopilot@solopilot
```

That's it. Four commands now available globally:

| Command | Purpose |
|---|---|
| `/autopilot` | One-shot bootstrap of the full PM-driven system in any repo |
| `/cpp` | Commit · Push · PR — git diff → conventional commit → draft PR |
| `/grill` | Staff-engineer adversarial review of current branch |
| `/learn` | Extract patterns from a PR, append to `CLAUDE.md` + `LEARNINGS.md` |

## Quick start

```sh
# Inside your project
cd my-project
/autopilot # interactive setup — answers go into specs/PRD.md
/autopilot --autoloop # setup + immediately start the PM cycle
```

Daily loop after setup:

```sh
/plan "<feature>" # Coordinator drafts specs/plans/<feature>.md
/work # Implementor picks next task, runs in worktree
/grill # Adversarial review before merge
/cpp # Commit · Push · draft PR
/learn 123 # Compound learnings from PR #123
```

## How it works

**4 layers**, each maps to a real engineering team role:

```
┌─────────────────────────────────────────────────────────┐
│ Layer 0: specs/PRD.md is truth, immutable to agents │
├─────────────────────────────────────────────────────────┤
│ Layer 1: Coordinator → Implementor → Verifier │
│ (PM) (Engineer) (QA) │
├─────────────────────────────────────────────────────────┤
│ Layer 2: Quality gates — build → test → spec compliance │
├─────────────────────────────────────────────────────────┤
│ Layer 3: LEARNINGS.md (append-only) + CLAUDE.md "## 학습"│
│ ↑ compound engineering — system gets smarter │
└─────────────────────────────────────────────────────────┘
```

`/autopilot` writes:

```
your-project/
├── CLAUDE.md # auto-generated, merge-only
├── LEARNINGS.md # append-only knowledge base
├── specs/
│ └── PRD.md # source of truth, agent read-only
├── .claude/
│ ├── agents/
│ │ ├── coordinator.md
│ │ ├── implementor.md
│ │ └── verifier.md
│ ├── commands/ # project-scoped /plan /work /verify /compound /drift
│ └── settings.json # PostToolUse hooks + permissions
```

Then prints `/schedule` strings for daily standup, weekly drift audit, and on-PR verification.

## Why solopilot

**The problem.** AI coding agents drift. They lose track of the spec, build past it, accumulate technical debt, and never learn from yesterday's mistakes. Solo developers feel this most — no PM, no QA, no review pressure.

**The fix.** Treat the spec as truth. Split agent responsibilities so no single agent both decides and verifies. Make every PR teach the system something durable. Run it on schedule so the work continues while you sleep.

solopilot codifies the patterns from:

- **Compound Engineering** ([Every / Kieran Klaassen](https://every.to/guides/compound-engineering)) — the 4-step Plan→Work→Review→Compound loop
- **Spec-Driven Development** — PRD as immutable truth, drift detection
- **Agent Harness Engineering** — OODA loops, recovery ladders, quality gates ([ECC](https://github.com/affaan-m/everything-claude-code))
- **Ralph Wiggum** ([Geoffrey Huntley](https://ghuntley.com/ralph/)) — fresh-context, codebase-as-memory loops
- **Anthropic best practices** — Boris Cherny's plan-mode-first workflow, parallel sessions

If you've used context-mode and felt the difference, you'll feel this.

## Commands in detail

<details>
<summary><b>/autopilot</b> — bootstrap</summary>

Detects your stack (`package.json`, `go.mod`, `Cargo.toml`, `pyproject.toml`, `Gemfile`, `composer.json`, `pubspec.yaml`, `build.gradle.kts`, `pom.xml`, `Makefile`), generates `CLAUDE.md` and `specs/PRD.md`, sets up the 3-agent system, configures PostToolUse hooks for formatter/typecheck, prints `/schedule` strings for routines.

Idempotent — re-running merges, never overwrites your edits.

```
/autopilot # full setup
/autopilot --autoloop # setup + start PM cycle loop
/autopilot --update # sync drift only
/autopilot --dry-run # preview without writing
```
</details>

<details>
<summary><b>/cpp</b> — commit · push · PR</summary>

Analyzes uncommitted changes, classifies them (Conventional Commits), generates a message that explains *why* not *what*, commits with explicit file list (no `git add -A`), pushes (with upstream auto-detect), opens a draft PR via `gh`.

```
/cpp # auto
/cpp --type feat # force type
/cpp "fix(auth): close timing leak" # custom message
```

Refuses to commit if it sees a secret pattern. Never `--amend`. Never `git add -A`.
</details>

<details>
<summary><b>/grill</b> — adversarial review</summary>

5 parallel passes (security, types, concurrency, edge cases, scope drift) with severity tags (🔴/🟠/🟡/🟢). Optionally runs santa-method dual-review for convergence on top findings. Outputs to `.solopilot/grill/<run-id>.md` with verdict: SHIP / FIX-FIRST / REWRITE.

```
/grill # branch vs default base
/grill --pr 123 # remote PR
/grill --severity high # filter
/grill --quick # single-pass
```
</details>

<details>
<summary><b>/learn</b> — compound from a PR</summary>

Extracts 5 categories (patterns, anti-patterns, decisions, constraints, spec gaps) from a PR or current session, filters by quality (no duplicates, no triviality, must cite source), appends to `LEARNINGS.md` (append-only) and the most generalizable 1-3 to `CLAUDE.md`'s `## 학습` section.

```
/learn 123 # PR #123
/learn session # current conversation
/learn 123 --pr-comment # also post to PR
```
</details>

## Prerequisites

- [Claude Code](https://code.claude.com) installed
- `gh` (GitHub CLI) authenticated, for `/cpp` and `/learn`
- A project with `git init` already run

Pairs well with: [`context-mode`](https://github.com/context-mode/context-mode), [`everything-claude-code`](https://github.com/affaan-m/everything-claude-code), [`compound-engineering-plugin`](https://github.com/EveryInc/compound-engineering-plugin).

## Roadmap

- [x] v0.1.0 — `/autopilot`, `/cpp`, `/grill`, `/learn`
- [ ] v0.2 — interactive PRD interview during `/autopilot`
- [ ] v0.3 — pre-built routines (`/autopilot --routines daily,weekly,on-pr`)
- [ ] v0.4 — drift dashboard (`solopilot status`)
- [ ] v0.5 — multi-repo coordinator mode

## Contributing

PRs welcome. Run `/grill --pr <your-pr>` before requesting review — meta-dogfooding.

## License

[MIT](LICENSE)

---

<div align="center">

**If solopilot saved you a sprint, ⭐ the repo.**

</div>
Loading