livespec-prune-history

Prunes old vNNN snapshots from a livespec specification history directory.

Updated Aug 15, 2026
One-click install
npx skills add https://github.com/thewoolleyman/livespec-driver-pi --skill livespec-prune-history-thewoolleyman
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: livespec-prune-history
Source: https://github.com/thewoolleyman/livespec-driver-pi/tree/main/skills/livespec-prune-history
Command: npx skills add https://github.com/thewoolleyman/livespec-driver-pi --skill livespec-prune-history-thewoolleyman

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Livespec-governed projects accumulate versioned vNNN/ snapshots under the spec history directory, which grows unbounded over time. This Skill destructively removes old snapshots to bound history size, while guarding against accidental or model-initiated invocation. ## Core Features & Use Cases - Destructive history pruning: Runs the config-named prune_history CLI from livespec core to delete old vNNN/ snapshots under the spec root's history directory. - Explicit-invocation-only safety: Model-driven invocation is disabled via frontmatter, so only an explicit /skill:livespec-prune-history call or direct user request triggers it. - Guarded mutation: Requires the Driver's footgun-guard extension to be loaded before any mutating operation proceeds, and surfaces core-root resolution diagnostics verbatim. - Use Case: After many propose-change/revise cycles, a project's spec history holds dozens of stale snapshots; invoke this Skill to prune them down and keep the repository size manageable. ## Quick Start Ask the agent to prune the livespec history by explicitly invoking /skill:livespec-prune-history in the pi session.

Frequently Asked Questions about livespec-prune-history

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prune old livespec spec history snapshots?▼

Explicitly invoke /skill:livespec-prune-history in the pi session or directly ask to prune the livespec history. The skill resolves the livespec core root, reads core's prune-history prose, and runs the prune_history CLI named in the project's .livespec.jsonc config.

Why doesn't the prune-history skill activate automatically?▼

Model-driven invocation is disabled via the disable-model-invocation frontmatter, so pi hides the skill from the system prompt. Only an explicit /skill:livespec-prune-history invocation or a direct user request to prune history triggers it, never a generic mention of history.

Can I customize which prune_history CLI the skill runs?▼

Yes. The governed project's .livespec.jsonc names the CLI under spec_clis.prune_history as an argv array. If absent, the skill falls back to core's reference default: python3 <core-root>/scripts/bin/prune_history.py.

Why does prune-history fail under a non-interactive pi run?▼

Pi's project-trust gate silently ignores project-local packages in non-interactive mode until a trust decision exists, so core-root resolution fails. The skill stops and surfaces the resolver's diagnostic verbatim rather than improvising a path or running installs.

What safety guard is required before pruning livespec history?▼

The Driver's tool_call footgun-guard extension (extensions/livespec-footgun-guard.ts) must be loaded before any mutating operation. If pi reports the package's extensions are not loaded, the skill stops instead of proceeding unguarded.