mcpField
S
salvage

salvage

github.com/open-horizon-labsAgent workflows3105 installsUpdated 12w ago
Repository

About salvage

salvage is an agent skill for extracting useful learning when an approach is drifting or being restarted. It packages findings, constraints, context, and reusable work into a restart report rather than routine reflection.

Key features

  1. 01Signals for when to salvage work
  2. 02Structured learning and constraint extraction
  3. 03Restart kit for a fresh attempt
  4. 04Persistence of non-obvious lessons
  5. 05Session handoff report format

Use cases

  1. 01Capture lessons before abandoning a stalled approach
  2. 02Record constraints discovered during implementation
  3. 03Pass context and reusable fragments to a new session

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/open-horizon-labs/skills --skill salvage

After installing, type/salvagein Claude Code to confirm it loaded.

Bundled filesagents/openai.yamlreferences/extraction.md

Details

From the project README

/salvage

Extract learning before restarting. Code is cheap; learning is the asset.

When to Use

Invoke /salvage when work is drifting, approach reversed multiple times, scope keeps expanding, the finish line keeps moving, or starting over feels right.

Do not use when: Work is on track. Salvage is extraction before restart, not routine reflection.

JIT References

Load references/extraction.md only when a salvage needs deeper learning extraction than the core report.

The Salvage Process

Step 1: Acknowledge the State

"This session/approach is being salvaged because [reason]. The original aim was [aim]. What happened was [reality]."

Step 2: Extract What Matters

Extract only what is present; do not pad empty categories.

Core categories:

  • Learnings: what changed your understanding?
  • Frame shifts: what story stopped explaining reality?
  • Guardrails: what constraint was discovered the hard way?
  • Missing context: what should have been found or asked earlier?
  • Ownership / coordination: what authority, owner, handoff, review, dissent, or verification boundary blurred?
  • Reusable fragments: what code, pattern, or partial approach is worth keeping?

If RNA/OH tools are available, check existing metis/guardrails before writing new ones. Update or strengthen existing entries rather than creating near-duplicates.

Step 3: Package for Fresh Start

Synthesize a restart kit: original aim, why salvaged, key learnings, frame shift, new guardrails, ownership/coordination breakdown, context for restart, and reusable fragments.

Step 4: Persist Learning

Persist metis, not noise. Record only non-obvious constraints, anomalies, trade-offs, and local patterns that would change a later decision. Generic best-practice advice adds context cost without local leverage.

If repeated salvages surface the same learning, run /distill; the corpus has knowledge but it is not being consulted.

Output Format

## Salvage

### Salvage Report

**Salvaged:** [date/session identifier]
**Reason:** [why this work is being salvaged]
**Original Aim:** [what we were trying to do]

### Learnings
[Numbered list of key insights]

### Frame Shifts
[Old frame → new frame, with evidence]

### New Guardrails
[Explicit constraints with reason and trigger]

### Missing Context
[What would have helped]

### Ownership / Coordination Breakdowns
[Authority boundary, missing owner, or handoff rule]

### Reusable Fragments
[Code or patterns worth keeping]

### Fresh Start Recommendation
[How to approach this next time]

Session Handoff

If a session file is in use, read prior phase sections, then replace or append ## Salvage. Later attempts use the salvage report as restart context, not as a mandate to preserve failed code.

Comments

Markdown supported