Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
shepherd
command
|
|
|
internal
|
|
|
agent
Package agent launches the `claude` CLI inside a worktree, either interactively (inheriting the terminal) or headlessly (`claude -p`, capturing output).
|
Package agent launches the `claude` CLI inside a worktree, either interactively (inheriting the terminal) or headlessly (`claude -p`, capturing output). |
|
app
Package app is the composition root: it resolves the repo, paths, and config into the concrete managers (worktree, session backend, agent launcher, forge) that the CLI commands consume.
|
Package app is the composition root: it resolves the repo, paths, and config into the concrete managers (worktree, session backend, agent launcher, forge) that the CLI commands consume. |
|
babysit
Package babysit watches a PR's checks, auto-fixes safe failures by re-invoking claude in the PR's local worktree, and notifies on anything it cannot fix.
|
Package babysit watches a PR's checks, auto-fixes safe failures by re-invoking claude in the PR's local worktree, and notifies on anything it cannot fix. |
|
cli
Package cli wires the cobra command tree, loads configuration, and renders results/errors via internal/output (machine output on stdout, logs on stderr).
|
Package cli wires the cobra command tree, loads configuration, and renders results/errors via internal/output (machine output on stdout, logs on stderr). |
|
config
Package config loads and validates Shepherd configuration.
|
Package config loads and validates Shepherd configuration. |
|
crew
Package crew decomposes a task description into parallel subtasks, creates one worktree per subtask, launches an agent in each via the session backend, and monitors them to completion.
|
Package crew decomposes a task description into parallel subtasks, creates one worktree per subtask, launches an agent in each via the session backend, and monitors them to completion. |
|
domain
Package domain defines Shepherd's core entities and sentinel errors.
|
Package domain defines Shepherd's core entities and sentinel errors. |
|
forge
Package forge abstracts over git hosting providers (GitHub via the gh CLI, Bitbucket via REST).
|
Package forge abstracts over git hosting providers (GitHub via the gh CLI, Bitbucket via REST). |
|
forge/bitbucket
Package bitbucket implements the forge operations over the Bitbucket Cloud REST API v2.
|
Package bitbucket implements the forge operations over the Bitbucket Cloud REST API v2. |
|
forge/github
Package github implements the forge operations over the gh CLI.
|
Package github implements the forge operations over the gh CLI. |
|
gitutil
Package gitutil provides small read-only helpers over the git CLI for repository metadata (root, current/default branch, cleanliness).
|
Package gitutil provides small read-only helpers over the git CLI for repository metadata (root, current/default branch, cleanliness). |
|
logging
Package logging configures the process-wide zerolog logger.
|
Package logging configures the process-wide zerolog logger. |
|
notify
Package notify delivers events to the terminal, a webhook, and/or an arbitrary command, selected by configuration.
|
Package notify delivers events to the terminal, a webhook, and/or an arbitrary command, selected by configuration. |
|
output
Package output renders command results to stdout, choosing human text or JSON based on the --json flag.
|
Package output renders command results to stdout, choosing human text or JSON based on the --json flag. |
|
paths
Package paths resolves the on-disk locations Shepherd uses for a repository: the runtime state directory (.shepherd), native session logs, the session registry file, and the worktrees root (which may live outside the repo).
|
Package paths resolves the on-disk locations Shepherd uses for a repository: the runtime state directory (.shepherd), native session logs, the session registry file, and the worktrees root (which may live outside the repo). |
|
pipeline
Package pipeline runs the configurable validation steps inside a worktree and implements the "clean push gate": a push is allowed only when every required step passes.
|
Package pipeline runs the configurable validation steps inside a worktree and implements the "clean push gate": a push is allowed only when every required step passes. |
|
session
Package session hosts agent processes behind a pluggable SessionBackend.
|
Package session hosts agent processes behind a pluggable SessionBackend. |
|
ship
Package ship implements the validate -> push -> open-PR flow with an optional bounded auto-fix loop.
|
Package ship implements the validate -> push -> open-PR flow with an optional bounded auto-fix loop. |
|
tui
Package tui is the interactive Bubble Tea dashboard: a polled list of worktrees/agents and a live log viewer that tails a session's output.
|
Package tui is the interactive Bubble Tea dashboard: a polled list of worktrees/agents and a live log viewer that tails a session's output. |
|
updater
Package updater implements `shepherd update`: it checks the latest GitHub release, downloads the matching release archive, verifies its checksum, and atomically replaces the running executable.
|
Package updater implements `shepherd update`: it checks the latest GitHub release, downloads the matching release archive, verifies its checksum, and atomically replaces the running executable. |
|
worktree
Package worktree manages isolated git worktrees by shelling out to `git worktree`.
|
Package worktree manages isolated git worktrees by shelling out to `git worktree`. |
Click to show internal directories.
Click to hide internal directories.