setup
/setup
Initialize, upgrade, or migrate the claude-harness plugin in a project. Use for first-time setup, plugin installation, version migration, memory directory configuration, legacy file cleanup, and project harness initialization.
- Author
- panayiotism ↗
- Repository
- claude-harness ↗
- Licence
- MIT
- Last repository change
- 17.07.2026
Assessment and security
- Files in this package
- 1
- Scripts
- 0
- HTML comments
- 0
- URLs in SKILL.md
- 0
No signals detected. Repository changed on 17.07.2026, without references to retired models or APIs.
MIT, open: use and modify while retaining author attribution.
What it does and when to use it
Initialize, upgrade, or migrate the claude-harness plugin in a project. Use for first-time setup, plugin installation, version migration, memory directory configuration, legacy file cleanup, and project harness initialization.
Original author description
Initialize, upgrade, or migrate the claude-harness plugin in a project. Use for first-time setup, plugin installation, version migration, memory directory configuration, legacy file cleanup, and project harness initialization.
How it works
- Auto-Detection
- Phase 0: Run setup.sh (Handles ALL Cases)
- Phase 3: Update Project .gitignore (FALLBACK -- only if setup.sh unavailable)
- File Schemas
- After Setup
SKILL.md preview
---
name: setup
description: Initialize, upgrade, or migrate the claude-harness plugin in a project. Use for first-time setup, plugin installation, version migration, memory directory configuration, legacy file cleanup, and project harness initialization.
disable-model-invocation: true
---
# Setup - Initialize or Upgrade Claude Harness
Initialize or upgrade claude-harness in the current project directory.
## Auto-Detection
This command automatically detects what needs to be done:
- **Fresh install**: Creates v3.0 structure from scratch
- **v2.x upgrade**: Migrates existing files to v3.0 memory architecture
- **Cleanup**: Removes legacy command copies from `.claude/commands/` (commands are now served from plugin cache)
**Note**: Commands and hooks are served from the plugin cache. `setup.sh` only initializes project-level state (memory directories, CLAUDE.md, .gitignore, migrations).
## Phase 0: Run setup.sh (Handles ALL Cases)
`setup.sh` handles fresh installs, v2.x migrations, and cleanup in a single script. **Always run it.**
**Steps:**
1. Find the plugin root path from the session context (look for "Plugin Root:" in the session start context)
2. Run: `bash {plugin-root}/setup.sh`
- **Fresh install**: Creates v3.0 structure, `.gitignore` patterns, CLAUDE.md
- **v2.x migration**: Detects legacy files, migrates to v3.0 structure, then creates missing files
- **Cleanup**: Removes stale command copies from `.claude/commands/` and legacy hooks
- Existing project files are **NEVER overwritten** (skipped automatically)
- `.gitignore` patterns are added if missing
3. Report what was created vs what was skipped
4. **Skip Phase 3** -- `setup.sh` handles it
**Fallback**: If the plugin root path is not available in the session context, fall through to Phase 1 -> Phase 4 (manual setup).
**Plugin updates**: Run `claude plugin update claude-harness` to update the plugin itself.
## Phase 3: Update Project .gitignore (FALLBACK -- only if setup.sh unavailable)
**CRITICAL**: You MUST update the project's `.gitignore` to exclude harness ephemeral files. This prevents uncommitted file clutter after `/checkpoint`.
**Execute these steps:**
1. Read the current `.gitignore` file (create if missing)
2. Check if `.claude-harness/sessions/` pattern exists in the file
3. If the pattern is NOT present, append these lines to `.gitignore`:
```
# Claude Harness - Ephemeral/Per-Session State
.claude-harness/sessions/
.claude-harness/memory/compaction-backups/
# Claude Code - Local settings
.claude/settings.local.json
```
4. Use the Edit tool to append these patterns to `.gitignore`
5. Report: "Updated .gitignore with harness ephemeral patterns"
**DO NOT SKIP THIS PHASE** - it is required for proper harness operation.
## File Schemas
Canonical schemas are defined in the plugin's `schemas/` directory (JSON Schema format). Key state files:
| File | Schema | Created By |
|------|--------|------------|
| `sessions/{id}/context.json` | `schemas/context.schema.json` (v3) | Phase 1 context compilation |
| `sessions/{id}/loop-state.json` | `schemas/loop-state.schema.json` (v9) | Phase 4 implementation |
| `sessions/{id}/autonomous-state.json` | `schemas/autonomous-state.schema.json` (v4) | `--autonomous` mode |
| `features/active.json` | `schemas/active-features.schema.json` (v3) | Phase 2 feature creation |
Memory knowledge layers (`memory/decisions/`, `failures/`, `successes/`, `patterns/`, `rules/`) are an **OKF v0.1 bundle** -- markdown concept files with YAML frontmatter, not JSON. Their conformance rules are documented in `schemas/okf-memory.md` and checked by `scripts/check-okf.py`; `setup.sh` migrates legacy JSON memory files to the bundle automatically (stamp-gated). Semantic memory (`memory/semantic/*.json`) and runtime state stay JSON with v3 schemas as created by `setup.sh`.
## After Setup
Report:
- What was done (fresh install / migration / version update)
- Files created or migrated
- Current plugin version
- Next steps:
1. Run `/claude-harness:start` to compile context and sync GitHub
2. For new projects: Run `/claude-harness:prd-breakdown @./prd.md` to analyze PRD and extract features
3. Use `/claude-harness:flow "description"` for end-to-end automated workflow (recommended)
4. Use `/claude-harness:flow --no-merge "description"` for step-by-step control
5. Use `/claude-harness:flow --fix feature-XXX "bug"` to create bug fixes
Versions
| Repository | Score | Licence |
|---|---|---|
| This page · panayiotism/claude-harness | 100 | MIT |
| HwangSlater/harness-fit | 100 | MIT |
| nesquikm/dev-process-toolkit | 100 | MIT |
| userKael/rastro | 100 | MIT |
| als-apg/osprey | 100 | BSD-3-Clause |
| dedujeong/gemba | 100 | Apache-2.0 |
| eigenwise/eigenwise-toolshed | 100 | MIT |
| awrshift/agent-memory-kit | 100 | MIT |
| lifecycle-innovations-limited/claude-ops | 100 | MIT |
Database snapshot: 13.11.2026 · package version 5c44b8cdd3d4 (SHA-256 digest of the entire package)
Downloads in the last 30 days: 0 · ranking
Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.
Similar skills
- 90harness-setup
Use when initializing or upgrading Oh My Harness configuration for a Codex project. - 100harness-setup
Initializes and configures Harness in a project — CI, memory, duo workflow, Codex. Use when setting up a new project or adding Harness configuration. - 90Project Scaffolding
This skill should be used when the user wants to set up Claude for a project, create a CLAUDE.md file, scaffold the .claude directory, initialize an AI workflow, configure a project for Claude, set up dev intelligence, initialize a new project, or do a new project setup.… - 95harness-docs
Harness Kit documentation — installation, plugin catalog, creating plugins, cross-harness setup, architecture, and FAQ. Use when working with or configuring harness-kit plugins, understanding the plugin/skill system, installing slash commands, setting up AI coding tool… - 100setup-project
Scaffolds a project with the Claude Agent Pack structure: copies CLAUDE.md (the consumer block, from docs/CLAUDE.template.md), docs/CONVENTIONS.md (from template), docs/MEMORY-WRITING.md, and creates the memory/ subdirectories. Runs scripts/setup-project.sh and guides the user… - 100harness
Stage map and operating rules for building or improving a Claude Code harness (skills, agents, commands, hooks, CLAUDE.md, scripts) with research, evals against a no-harness baseline, and cost optimization. Use at the start of any harness-building session, when the user asks to…