agentsclimarketplace

Fix

Skill odere-pro/claude-wiki-pages-plugin/skills/fix

A Claude Code plugin for Obsidian — Karpathy's LLM Wiki shipped as a four-layer, hook-enforced agent stack with multi-agent orchestration.

Install
npx -y skills add odere-pro/claude-wiki-pages-plugin --skill fix

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Auto-repair what /claude-wiki-pages:lint reports. Idempotent — running twice on a clean tree produces no diff. Trigger when the user says "fix the lint errors", "repair the wiki", "auto-fix", or invokes /claude-wiki-pages:fix directly. Expects a fresh lint report in context, or runs its own lint pass internally.

SKILL.md

5.1 KB, as published. Nobody here has run it

LLM Wiki — Fix

Apply the repairs /claude-wiki-pages:lint identified.

When to invoke

  • The user has just run lint and asks to fix what it found.
  • The claude-wiki-pages-curator-agent agent is orchestrating the lint → fix → lint cycle.
  • The user is confident enough to fix without a prior lint pass (in which case this skill runs lint internally first).

Inputs

One of:

  • A recent lint report in conversation context.
  • A fresh lint pass run internally (no report in context).

In both cases, the schema (vault/CLAUDE.md) is read first.

Reading contract

  • vault/CLAUDE.md — the schema.
  • vault/wiki/**/*.md — every wiki page that a lint rule flagged.
  • The lint report, when provided.

Writing contract

Writes are confined to what the specific lint finding authorizes:

FindingRepair
Missing required frontmatterBackfill with the schema default. If no sane default exists, escalate to the user.
Dangling wikilinkReplace with the nearest matching alias; or comment out with <!-- unresolved: ... --> and flag as a remaining warning.
Plain-string sources: entryConvert to [[wikilink]] if the matching source page exists; otherwise leave and flag.
Missing parent / pathDerive from file location under wiki/.
MOC missing memberAdd the page or subfolder to children: / child_indexes: of its per-folder MOC (the folder note <folder>/<folder>.md, or legacy _index.md if present), as quoted "[[wikilink]]" entries.
Missing per-folder MOCCreate the folder note at its canonical name <folder>/<folder>.md (type: index). Never create a new _index.md.
Legacy index filename (legacy-index-filename WARN)Leave in place — this skill never renames an existing _index.md; the rename is engine.sh migrate --write's job. Reconcile its fields like any folder note.
Banned legacy valueRewrite: type: moctype: index; _MOC.md → the folder-note name; child_mocs:child_indexes:.
Strict-tree drift (non-spine / cross-tree edge / cycle, tree-lint ADR-0036)Run bash scripts/strict-tree-reduce.sh --target <vault> --apply (git-checkpointed) — it demotes every non-spine [[wikilink]] to prose and adds topic/<tree> de-cycle tags so the graph draws only the parent: spine. A deterministic graph-shape repair, not a per-page edit; never hand-rewrite links to fake conformance. Detect first with bash scripts/tree-lint.sh --target <vault>.
Vault MOC driftEscalate to /claude-wiki-pages:index; do not edit wiki/index.md directly.

Always append one log entry:

## [YYYY-MM-DD] fix | repaired <N>, deferred <M>

This skill MUST NOT:

  • Repair contradictions (warning-severity; needs human judgment).
  • Invent a sources: entry when none exists.
  • Delete a page because it is orphaned. Orphans are warnings, not garbage.

Idempotency

Every repair this skill applies must be safe to run twice. After a fix pass:

  • Re-running lint shows strictly fewer or equal errors.
  • Re-running fix on the result produces zero file modifications.

If a repair is not idempotent, mark it as deferred and list it in the completion summary with an explanation.

Workflow

  1. Schema. Read vault/CLAUDE.md.
  2. Load findings. Consume the provided lint report, or run lint inline.
  3. Group. Bucket findings by rule.
  4. Apply. Walk each bucket; apply the authorized repair; let PreToolUse hooks enforce the schema on every write.
  5. Escalate. For findings not authorized above (contradictions, fabricated sources, vault-MOC rebuilds), surface with a one-line explanation.
  6. Re-lint. Invoke lint internally; confirm the error count is strictly lower.
  7. Log. Append the fix entry to wiki/log.md.

Hook enforcement

Every write passes through PreToolUse: frontmatter, wikilinks, raw immutability, attachments. A failing hook means the proposed repair is wrong; do not retry the same content — adjust it.

When this skill is invoked inside the claude-wiki-pages-curator-agent agent, SubagentStop runs a final lint gate. The agent blocks completion if that gate returns a non-zero exit.

Completion signal

READY: repaired <N>, deferred <M>. Re-lint: <K> errors (was <E>).

If K >= E, print:

FAILED: fix pass did not reduce error count. Inspect deferred items.

and exit non-zero.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.