harness-updatelisted
Install: claude install-skill ryan75195/dotnet-agent-harness
# Harness Update
Pull the latest agent-harness template changes into this project. Scripts do the deterministic work; you do the judgment. Updates touch ONLY harness-owned files (declared in the template's harness-manifest.json) — never the user's app code.
## Flow
### 1. Read the stamp
Read `.harness.json` in the project root.
**Missing stamp → backfill:** ask which template the project came from (cli / etl-api / expo-app) and roughly when it was scaffolded. Resolve the repo (step 2), find a plausible commit (`git -C $repo log --format='%H %ad' --date=short -- <templateDir>` around that date; when unsure use the OLDEST plausible commit — too-old means more files flagged for manual merge, which is safe; too-new silently skips updates). Then write the stamp with the plugin's write-stamp script pointed at that commit:
```powershell
git -C $repo checkout <commit> --quiet
& "${CLAUDE_PLUGIN_ROOT}/scripts/write-stamp.ps1" -ProjectDir . -Template <template> -ProjectName <name from the project's .sln/app.json> -RepoPath $repo
git -C $repo checkout main --quiet
```
For expo projects pass `-BundleId` read from `app.config.js`/`app.json`. Confirm the rename map in the written stamp matches reality (search the project for the renamed values).
### 2. Compute the update manifest
```powershell
$manifestPath = Join-Path $env:TEMP 'harness-update-manifest.json'
& "${CLAUDE_PLUGIN_ROOT}/scripts/get-update.ps1" -OutFile $manifestPath
```
Read the manifest. If `files` is empty, report "a