An AI-agentic SDLC harness you can bootstrap around any software project — new or existing, any stack, single-repo or multi-repo. AI agents do the work; hooks make sure they can't ship without you.
AI coding agents are good at writing code and bad at process discipline. se-harness wraps
a full software-engineering lifecycle around them: it learns your project (scan +
interview), builds a memory of your code and domain, staffs it with 11 specialized
agents, and runs each goal through
requirement → stories → implementation → tests → PR → deploy — pausing at three
human-approval gates that are enforced by hooks, not prompts. The agent literally cannot
open the PR, push, or deploy until you flip status: approved.
One repo serves both ecosystems: Claude Code and GitHub Copilot CLI read the same plugin marketplace.
- Bootstrap, not boilerplate —
/harness-initscans existing repos first (stack + org-convention detection, evidence-based, you confirm) and interviews you only for what it can't detect. Output:AGENTS.md+CLAUDE.mdinside idempotent generated-block markers (your hand edits survive re-runs), a committed.harness/profile, and a gitignored.env.harnessfor secrets. - A goal loop with real gates —
/harness-goal "Add CSV export"grills you until the requirement is unambiguous, writes.harness/requirements/REQ-001.md, then drives stories → design → parallel implementation in isolated worktrees → unit/integration/e2e tests → PR → deploy. Three gates (requirement, PR evidence, deploy) are blocked by aPreToolUsehook until you approve — exit-2 block on Claude Code,permissionDecisiondeny on Copilot. - An 11-agent SDLC roster — architect, story-writer, backend/frontend implementers, db-engineer, unit + integration testers, e2e planner/generator/healer, release-manager. Each agent gets only the tools its job needs.
- 3-tier memory — committed project profile, append-only daily/topic logs with typed causal links, and a provenance-tracked domain wiki (ingest/query/lint skills).
- Multi-repo aware — declare products in
workspace.yamlwith a contracts registry;contract-check.shblocks pushes that change a provided contract and names the consumer repos that would break. - Drift-aware sync —
/harness-syncdetects drift on four axes (profile, recommendations, templates, memory health), shows the diff first, and refreshes only generated blocks. - Exportable —
/harness-exportcompiles the agents and hooks for Copilot and Cursor (Codex readsAGENTS.mdnatively). - No telemetry, ever — see PRIVACY.md.
Claude Code (inside a session):
/plugin marketplace add rbhattarai/se-harness
/plugin install se-harness
GitHub Copilot CLI:
copilot plugin marketplace add rbhattarai/se-harness
copilot plugin install se-harness-copilot@se-harnessPlugin installs restricted in your org? Both setup guides cover the alternatives — internal GitHub Enterprise import (preferred, updates stay pullable) and offline zip → local-path marketplace, plus a no-plugin prompt-driven fallback: Claude §1.2 · Copilot §1.2–1.3.
Single repo — in your project, run /harness-init (Claude) or copilot harness-init
(Copilot CLI). Existing repos get scanned first; you're interviewed only for what can't be
detected. Then /harness-bootstrap for opt-in companion tooling, and your first goal:
/harness-goal "Add CSV export to the reports page"
It writes .harness/requirements/REQ-001.md and the gate hook blocks PR/push/deploy until
you flip status: approved.
Multi-repo product — clone all repos side-by-side, add a workspace.yaml (from
templates/workspace.yaml: units, shared org context, and a
contracts: registry), then run the same init per code repo.
Want to try it without risking your own repo? The companion demo repo
demo-loan-app is a live two-app loan
product — loan-webapp + lending-webapp syncing in real time over a shared data
store — with a ready-made workspace.yaml and contract registry. Clone it,
docker compose up --build, then follow the
multi-unit walkthrough:
init per unit, watch contract-check name the consumer that a schema change would break,
and run a cross-unit goal end to end.
| Command | What it does |
|---|---|
/harness-init |
Intake interview (+ scan for existing repos) → generates all per-project artifacts |
/harness-scan |
Brownfield detection: evidence collector → confirm → merge into profile |
/harness-bootstrap |
Recommends companion plugins/CLIs/MCP servers from your profile; opt-in install + lockfile |
/harness-goal |
The goal loop: supervisor over the agent roster, 3 hook-enforced approval gates |
/harness-sync |
Four-axis drift detection → diff-first report → confirmed refresh of generated blocks |
/harness-export |
Compile agents + hooks for Copilot / Cursor (Codex reads AGENTS.md natively) |
- Claude Code setup guide — install (+ restricted-org alternatives), single-repo and multi-repo worked examples, extending and publishing
- GitHub Copilot setup guide — CLI plugin, coding agent, VS Code, enterprise rollout, same examples
- Interop matrix — component × platform support, plus
verified platform schema notes in
docs/claude/anddocs/copilot/ - Demo walkthroughs — over the companion demo-loan-app repo: multi-unit init, contract checking, cross-unit goal (and the README GIF recording guide)
v1 is complete: all six commands, the 11-agent roster, the memory tiers, the hooks, and
the Copilot export are implemented and script-tested (123-test suite in CI). On the roadmap:
a workspace-level goal loop over a federated service graph, a web profile-builder, and
real-world hardening. Details: development history ·
plan and research log in brainstorm.md.
.claude-plugin/marketplace.json # this repo IS a marketplace — read by Claude Code AND Copilot CLI
.github/plugin/marketplace.json # GENERATED mirror (Copilot canonical location) — never edit
plugins/se-harness/ # the harness plugin (source of truth)
commands/ # the six /harness-* commands
agents/ # 11-agent SDLC roster (narrow tools per agent)
skills/ # context-injector, stack-detector, memory-keeper, wiki-*
hooks/hooks.json + scripts/ # gate-check, org-validate, memory-log, contract-check, splicer
plugins/se-harness-copilot/ # Copilot CLI variant — GENERATED by build-copilot-plugin.sh
registry/recommendations.json # profile → plugin mappings (recommender data; honest gaps)
templates/ # profile/env/requirement/AGENTS/CLAUDE/mcp/workspace + memory seeds
docs/ # setup guides, interop matrix, platform schema notes, demo guide
tests/ # 123-test suite run in CI
Edit only plugins/se-harness/ (the Claude-first source of truth); regenerate the Copilot
variant and marketplace mirror with bash plugins/se-harness/scripts/build-copilot-plugin.sh.
Full update/extension and marketplace-publishing instructions:
Claude guide Parts 5–6 ·
Copilot guide Parts 10–11.
Note: the Claude Code and Copilot plugin/hook schemas evolve quickly — verify manifests against the Claude plugin docs and Copilot plugin docs before releasing.
