Skip to content
Back to skills

Precedent Maintain

ASecurity

Check the decision graph for contradictions, tag drift and dead projects. Use when the user asks about the health of the graph, suspects duplicate tags, or wants to clean up recorded decisions.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 9, 2026
ai-agentsbashnode

Works with

  • cli

Security analysis

A100/100

Scanned October 9, 2026

npx -y skills add asm0dey/precedent --skill precedent-maintain --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Precedent Maintain?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Precedent Maintain
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/asm0dey-precedent-maintain/badge)](https://www.skillsdirectory.com/skills/asm0dey-precedent-maintain)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: precedent-maintain
description: Check the decision graph for contradictions, tag drift and dead projects. Use when the user asks about the health of the graph, suspects duplicate tags, or wants to clean up recorded decisions.
---

# Check the graph for problems

```bash
uv run <cli> maintain
```

`<cli>` is this package's `precedent.py`; the `precedent` skill says how to
locate it.

Report what it finds. Contradictions (one project, one topic, two live answers)
are for the user to resolve — record a new decision with `--supersedes <id>`
rather than editing history. Suspected duplicate tags are repaired with
`tag --merge <old> --into <new>`.

Projects with no portable identity are reported too. A `split across two nodes`
line means one repo has two Project nodes holding two separate decision
histories — surface it. `maintain` prints a `merge-project --from <id> --into <id>`
line for each. Show the user both sides' decisions and let them decide; run it
only on a yes. The same line appears under "projects whose path no longer
exists" when a live project shares the ghost's name, and under "one checkout,
two remotes" when a checkout's remote changed (a rename, a move to another
host) and the same directory now keys a second node. There the hint merges
into the remote the checkout reports now — but a fork and its upstream are
two projects, so the same rule applies: both sides first, then a yes.

Run `maintain --apply` only to delete orphan nodes; everything else is a
proposal that needs the user's judgment.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…