Skip to content
/

Shep

shep-cli · shep-ai/cli · ★ 194 · last commit 2026-05-26

Runs multiple AI coding agents in parallel, each in its own git worktree, handling commits, PRs, and CI monitoring automatically.

Best whenThe bottleneck in multi-agent development is not the coding but the surrounding workflow (branches, commits, PRs, CI) — automate that and agents can truly sc…
Skip ifManual branch management when running parallel agent sessions, Blocking on permission prompts in non-interactive agent runs
vs seeds
claude-flowis the closest seed (parallel multi-agent, git worktree isolation), but Shep is a zero-configuration CLI tool (one comma…
Primitive shape 29 total
Skills 18 Subagents 10 Hooks 1
00

Summary

Shep — Summary

Shep is a parallel AI agent orchestration platform that gives each feature its own isolated git worktree, branch, and agent session, then handles the surrounding automation: automatic commits, push, PR creation, CI watching, and failure fixing. The primary CLI binary shep launches via npm i -g @shepai/cli, and a web dashboard at localhost:4050 (or cloud at app.shep.bot) provides visual management of parallel feature sessions. Shep is agent-agnostic — it works with Claude Code, Cursor CLI, Gemini CLI, and any agent that runs in a terminal. The framework ships an extensive set of internal skills (18 skills in .claude/skills/ for its own SDLC development, 10 agents in .claude/agents/) and a spec-driven workflow for contributors, but these are for developing Shep itself, not for end users. The end-user value is the shep feat new "<description>" --push --pr command: one invocation that creates an isolated worktree, runs the configured agent, commits, pushes, and opens a PR.

Among the seeds, Shep most closely resembles claude-flow in providing parallel multi-agent orchestration with git worktree isolation, but Shep's emphasis is on simplicity of invocation (one CLI command per feature) and dashboard observability rather than programmatic orchestration APIs. Shep also resembles Asynkor in its multi-agent coordination concern, but uses worktree isolation (branch-level) rather than file-lease isolation (file-level).

01

Overview

Shep — Overview

Origin

Shep is published by the shep-ai organization (GitHub: shep-ai/cli). Version 1.206.1 as of analysis date. 194 stars, 7 contributors, last push 2026-05-26. Available on npm as @shepai/cli. MIT license.

Philosophy

"Shep gives each feature its own isolated world — a git worktree, a branch, an agent session — and handles the boring parts: committing, pushing, opening PRs, watching CI, and fixing failures."

The core belief is that AI coding agents are capable of writing code, but the process around coding (branch management, PR creation, CI monitoring) creates unnecessary friction for running multiple agents in parallel.

Key Value Props (from README)

"One agent session is fine. Five is chaos." "Agent-Agnostic: Use Claude Code, Cursor CLI, or Gemini CLI. Swap per feature, per repo, anytime." "Full audit trail: Every action and state transition is logged."

Local-First, Cloud-Optional

Shep is designed local-first. The CLI runs everything locally with full control. The cloud option (app.shep.bot) provides zero-setup browser access.

Trust & Safety Model

Shep runs agents non-interactively with permission-bypass flags (--dangerously-skip-permissions for Claude Code) because it cannot pause mid-pipeline for permission prompts. The user retains full control: shep agent stop <id> stops immediately, and the worktree is preserved for manual takeover.

02

Architecture

Shep — Architecture

Distribution

  • npm: npm i -g @shepai/cli or npx @shepai/cli
  • Cloud: app.shep.bot (no install, browser access)
  • Docker: Dockerfile available

Required Runtime

  • Node.js 22+
  • Git + GitHub CLI (gh)
  • An AI coding agent (Claude Code, Cursor CLI, or Gemini CLI)

Repository Structure (monorepo, pnpm workspaces)

shep-cli/
├── .claude/
│   ├── skills/               # 18 SDLC skills (for developing Shep itself)
│   │   ├── shep-kit-new-feature/
│   │   ├── shep-kit-implement/
│   │   ├── shep-kit-plan/
│   │   ├── shep-kit-research/
│   │   ├── shep-kit-status/
│   │   ├── shep-kit-commit-pr/
│   │   ├── shep-kit-fast-loop/
│   │   ├── shep-kit-merged/
│   │   ├── shep-kit-parallel-task/
│   │   ├── shep-kit-new-feature-fast/
│   │   ├── architecture-reviewer/
│   │   ├── cross-validate-artifacts/
│   │   ├── mermaid-diagrams/
│   │   ├── react-flow/
│   │   ├── shadcn-ui/
│   │   ├── shep-ui-component/
│   │   ├── tsp-model/
│   │   └── vercel-react-best-practices/
│   ├── agents/               # 10 agent definitions
│   ├── hooks/
│   │   └── format-tsp.sh     # PostToolUse hook for TypeSpec formatting
│   ├── rules/
│   └── settings.json         # Hooks + enabled plugins
├── packages/                 # Monorepo packages
├── src/
├── specs/                    # Feature specifications (YAML-based)
│   └── [NNN-feature-name]/
│       ├── spec.yaml
│       ├── research.yaml
│       ├── plan.yaml
│       └── tasks.yaml
├── prompts/                  # LLM prompt templates
├── mempalace.yaml            # Memory palace configuration
├── example-spec.yaml         # Spec format example
├── skills-lock.json          # Skills version lock
└── tsp/                      # TypeSpec API definitions

Internal Spec Format (YAML)

Shep uses YAML spec files for its own development workflow:

# Phase lifecycle: Requirements → Research → Planning → Implementation → Complete
spec.yaml → research.yaml → plan.yaml → tasks.yaml

CLI Binary

shep (npm bin: ./dist/src/presentation/cli/index.js)

03

Components

Shep — Components

CLI Subcommands (primary user interface)

Command Purpose
shep feat new "<desc>" [--push] [--pr] [--no-fast] [--repo] Create new feature: worktree + branch + agent + optional push/PR
shep feat list List all features and their status
shep feat logs <id> View full audit trail for a feature
shep agent stop <id> Stop an agent immediately (worktree preserved)
shep (no args) Open web dashboard at localhost:4050

Internal Skills (18, for Shep's own SDLC)

Skill Purpose
shep-kit:new-feature Create spec branch + scaffold specification directory with YAML phases
shep-kit:implement Validate specs and execute implementation tasks from tasks.yaml
shep-kit:plan Generate plan.yaml + tasks.yaml from spec.yaml + research.yaml
shep-kit:research Research phase: produce research.yaml
shep-kit:status Check current phase status
shep-kit:commit-pr Commit changes and create/update PR
shep-kit:fast-loop Fast iteration without full spec cycle
shep-kit:merged Post-merge cleanup
shep-kit:parallel-task Execute tasks in parallel
shep-kit:new-feature-fast Abbreviated new feature flow
architecture-reviewer Review architecture decisions
cross-validate-artifacts Validate spec artifacts for consistency
mermaid-diagrams Generate Mermaid diagrams from code
react-flow React Flow diagram generation
shadcn-ui shadcn/ui component patterns
shep-ui-component Shep UI component creation
tsp-model TypeSpec model creation
vercel-react-best-practices Vercel + React conventions

Internal Agents (10)

Named agent definitions for Shep's own development (e.g., shep-clean-arch-auditor, shep-cli-command-creator, shep-file-relocator, shep-migration-creator, shep-port-creator, shep-port-extractor, shep-storybook-story-creator, shep-tsp-field-adder, shep-use-case-creator, shep-web-route-creator).

Hooks (1)

Hook Event Purpose
format-tsp.sh PostToolUse (Edit|Write) Auto-format TypeSpec files after edits

Web Dashboard (localhost:4050)

Visual interface for creating features, monitoring parallel agent sessions, viewing logs, and managing multiple repos.

05

Prompts

Shep — Prompts

Shep's skills are for its own development workflow, not for end users. Two key prompts follow.

Excerpt 1 — shep-kit:new-feature SKILL.md

---
name: shep-kit:new-feature
description: Use when starting any new feature, functionality, or enhancement. Triggers include 
"new feature", "start developing", "add functionality", "implement X", or explicit 
/shep-kit:new-feature invocation. Creates spec branch and scaffolds specification directory. 
Part of the Shep autonomous SDLC platform — https://shep.bot
metadata:
  version: '1.0.0'
  author: Shep AI (https://shep.bot)
  homepage: https://shep.bot
  repository: https://github.com/shep-ai/shep
---

# Create New Feature Specification

Start spec-driven development by creating a feature branch and specification directory.

**Full workflow guide:** [docs/development/spec-driven-workflow.md](...)

## Phase Lifecycle

Requirements → Research → Planning → Implementation → Complete ↓ ↓ ↓ ↓ ↓ spec.yaml research.yaml plan.yaml tasks.yaml all files ↓ ↓ ↓ ↓ ↓ spec.md research.md plan.md tasks.md (auto-generated)


**CRITICAL:** Each phase MUST update the `Phase` status field before proceeding.
**IMPORTANT:** Edit YAML files, not Markdown.

## Workflow

### 1. Gather Minimal Input

Ask the user for:
- **Feature name** (kebab-case, e.g., `user-authentication`)
- **One-liner description** (brief summary)

### 2. Create Branch

```bash
NEXT_NUM=$(ls -d specs/[0-9][0-9][0-9]-* 2>/dev/null | ...)

**Prompting technique**: YAML-primary instruction with Markdown as auto-generated mirror. The skill explicitly instructs "Edit YAML files, not Markdown" — the YAML is the source of truth, Markdown is generated from it. This creates a single-source-of-truth for spec data separate from human-readable presentation.

## Excerpt 2 — shep-kit:implement SKILL.md

```markdown
---
name: shep-kit:implement
description: Validate specs and autonomously execute implementation tasks with status tracking. 
Use after /shep-kit:plan when ready to start implementation.
---

## What This Skill Does

1. **Pre-Implementation Validation** - Comprehensive quality gates
2. **Autonomous Task Execution** - Executes all tasks from tasks.yaml sequentially
3. **Real-Time Status Tracking** - Updates feature.yaml throughout execution
4. **Smart Error Handling** - Retry with debugging (max 3 attempts per task)
5. **Session Resumption** - Automatically continues from last task on re-run

Prompting technique: Numbered responsibility list as operational spec. The skill declares its 5 responsibilities explicitly, allowing the agent to self-verify that it is executing all of them. The "max 3 attempts per task" bounded retry is the same pattern as flokay's 3-cycle PR fix limit.

Excerpt 3 — CLAUDE.md Trust & Safety

Shep runs agents non-interactively with --dangerously-skip-permissions for Claude Code 
(equivalent flags for other agents). The worktree is preserved on stop — 
resume or take over manually at any point.

Prompting technique: Explicit permission bypass with escape hatch documentation. By stating that Shep passes --dangerously-skip-permissions and immediately noting the escape hatch (shep agent stop + worktree preserved), the documentation both explains the risk and its mitigation in the same breath.

09

Uniqueness

Shep — Uniqueness

Differs from Seeds

Shep is the most complete parallel agent orchestration CLI in the corpus. Claude-flow is the closest seed (parallel multi-agent, git worktree isolation, automatic commits), but Shep differs architecturally: claude-flow is an SDK/command-pack that requires writing code against its API, while Shep is a zero-configuration orchestration CLI — shep feat new "add payments" --push --pr runs the full lifecycle with one command and no configuration file. Shep's agent-agnosticism (Claude Code / Cursor CLI / Gemini CLI per feature, user's choice) is also absent from claude-flow. The --dangerously-skip-permissions flag documentation is the most explicit handling of the non-interactive agent permission problem found in any framework — it names the flag, explains why it is used, and immediately provides the safety escape hatch. The internal shep-kit SDLC workflow (YAML spec phases, mempalace, 18 skills, 10 agents) represents Shep eating its own dog food — using itself to develop itself — which is a strong signal of production maturity.

Positioning

Shep is an "agent fleet manager" comparable to Asynkor, but at the branch level rather than the file level. Where Asynkor prevents conflicts by leasing individual files, Shep prevents conflicts by giving each feature its own worktree. Shep is most suitable for teams running truly independent features (no shared files between features); Asynkor is more suitable for agents that share files.

Observable Failure Modes

  1. Non-interactive permission bypass: --dangerously-skip-permissions is required for agents to run unattended. This removes a safety layer; agents can make destructive changes without human review.
  2. No cross-feature coordination: If two features touch the same file in different worktrees, conflicts emerge at PR merge time, not at edit time. Asynkor handles this; Shep does not.
  3. Agent process reliability: If a terminal-based agent crashes silently, Shep may not detect the failure and can report the feature as in-progress indefinitely.
  4. Cloud dependency for dashboard: The cloud option at app.shep.bot requires an external service; local-only users are limited to the CLI and localhost dashboard.
04

Workflow

Shep — Workflow

Standard Automated Flow (end user)

You describe a feature  →  Agent codes in worktree  →  Shep commits  →  Shep pushes  →  Shep opens PR
Step CLI Flag Behavior
1. Create shep feat new "<desc>" Creates git worktree, branch, starts agent
2. Implement (auto) Agent runs non-interactively
3. Commit (auto) Shep commits when agent completes
4. Push --push Pushes branch to remote
5. PR --pr Creates GitHub PR

Approval Gate Mode (--no-fast)

Adding --no-fast adds explicit approval pauses:

  1. After spec/plan is drafted — user reviews before implementation
  2. After implementation — user reviews code before commit/push

Parallel Feature Flow

shep feat new "add stripe payments" --push --pr
shep feat new "add dark mode toggle" --push --pr
shep feat new "refactor auth middleware" --push --pr
# All three run simultaneously, each in its own worktree

Cross-Repo Flow

shep feat new "add payments" --repo ~/projects/backend --push --pr
shep feat new "add checkout UI" --repo ~/projects/frontend --push --pr

Internal Development Workflow (for contributing to Shep)

Uses shep-kit skills with YAML spec phases:

Phase Skill Artifact
Requirements shep-kit:new-feature spec.yaml + spec.md
Research shep-kit:research research.yaml + research.md
Planning shep-kit:plan plan.yaml + plan.md + tasks.yaml
Implementation shep-kit:implement Code changes
PR shep-kit:commit-pr Pull request
06

Memory Context

Shep — Memory & Context

State Storage

State Type Storage Persistence
Feature state JSONL logs (shep internal) Project
Audit trail shep feat logs <id> JSONL Project
Spec artifacts (internal dev) YAML files in specs/[NNN-feature]/ Project
Worktrees Git (local) Project
Memory palace mempalace.yaml Project

Internal Spec Memory (for Shep contributors)

The shep-kit workflow uses YAML spec files with an explicit Phase status field:

# spec.yaml tracks phase: Requirements | Research | Planning | Implementation | Complete
Phase: Requirements

Each phase transition requires updating this field before proceeding — the YAML file is both a spec and a state machine.

mempalace.yaml

Shep ships a mempalace.yaml file (memory palace configuration). This appears to define persistent context/knowledge for the agent, but the exact schema is not publicly documented in the README.

Audit Trail

Every action and state transition in a feature's lifecycle is logged. Access via shep feat logs <id>. This is a structured audit log per feature.

Cross-Session Handoff

Yes — worktrees persist between CLI sessions. If an agent is stopped, the worktree + branch + code are all preserved. Another session (human or agent) can resume from where the agent stopped.

Memory Type

file-based — YAML spec files, JSONL logs, mempalace.yaml. No external database.

07

Orchestration

Shep — Orchestration

Multi-Agent

Yes. Shep is specifically designed for running multiple agents in parallel — "10 features at once."

Orchestration Pattern

parallel-fan-out — each feature spawns an independent agent session. There is no central coordinator agent directing the workers; the shep CLI is the orchestrator, not an agent.

Isolation Mechanism

git-worktree — each feature runs in its own git worktree and branch. This is the primary isolation mechanism. Two agents editing different features never share the same worktree.

Execution Mode

continuous-ralph — Shep runs as a persistent service (dashboard at localhost:4050). Individual features can be started, stopped, and monitored independently.

Max Concurrent Agents

Unknown upper limit. README mentions "10 features at once" as a typical use case.

Multi-Model

Yes — agent-agnostic. Each feature can use a different agent type: Claude Code, Cursor CLI, Gemini CLI. This is not role-based model routing (critic/planner/etc.) but rather per-feature agent type selection.

Consensus Mechanism

None. Features are independent; there is no coordination between their agents.

Prompt Chaining

Yes (internal shep-kit workflow): spec.yaml → research.yaml → plan.yaml → tasks.yaml. Each phase's output is the next phase's input.

Approval Gates

Optional — --no-fast flag adds review pauses before implementation and before push. Without it, the flow is fully automated.

CI Integration

Shep watches CI for PRs it creates and can trigger fix cycles. This is non-agent CI integration (GitHub Actions status polling).

Cross-Tool Portability

High — Shep orchestrates any terminal-runnable agent.

08

Ui Cli Surface

Shep — UI & CLI Surface

Dedicated CLI Binary

Yes. Binary: shep. npm package: @shepai/cli. Not a thin wrapper — it is a full orchestration runtime.

Known subcommands:

  • shep feat new "<desc>" [--push] [--pr] [--no-fast] [--repo <path>]
  • shep feat list
  • shep feat logs <id>
  • shep agent stop <id>
  • shep (opens dashboard)
# Install
npm i -g @shepai/cli

# Or use without install
npx @shepai/cli

Local Web Dashboard

Yes — at localhost:4050. Opens automatically with shep (no args).

Dashboard features:

  • Create features (describe + configure automation)
  • Monitor parallel agent sessions (live status)
  • View feature logs (full audit trail)
  • Multi-repo management
  • Local dev server per feature
  • Chat with Shep (questions, HTML previews)
  • One-click open in IDE/terminal/file manager

Cloud Option

app.shep.bot — cloud-hosted version with zero install. Connect repo, configure agent, start a feature in browser.

Tech Stack

TypeScript monorepo (pnpm). Tauri not used — this is a web dashboard with a CLI orchestrator.

Observability

  • Full audit trail per feature: shep feat logs <id>
  • Dashboard live status for all parallel sessions
  • CI status monitoring via GitHub API

Related frameworks

same archetype · same primary tool · same memory type

claude-mem (thedotmack) ★ 78k

Background worker service captures every tool call as an observation, AI-compresses sessions, and auto-injects relevant past…

pi (badlogic/earendil) ★ 55k

A minimal, hackable, multi-provider terminal coding agent that adapts to your workflows via npm-installable TypeScript Extensions…

Agent Skills (Addy Osmani) ★ 46k

Encodes senior-engineer software development lifecycle as 23 auto-routed skills and 7 slash commands for any AI coding agent.

wshobson/agents Plugin Marketplace ★ 36k

Single Markdown source for 83 domain-specialized plugins that auto-generates idiomatic artifacts for five AI coding harnesses.

TabbyML/Tabby ★ 34k

Self-hosted AI coding assistant server (alternative to GitHub Copilot) with admin dashboard, RAG-based completions, and multi-IDE…

Compound Engineering ★ 17k

Make each unit of engineering work compound into easier future work via brainstorm→plan→execute→review→learn cycles.