skill-tuning
Skill0 starsChanged 2 months agoMITView on GitHub
Monthly pass (cron on the 1st at 09:00, or on demand) that reviews accumulated corrections, review answers, and retired link candidates, then proposes concrete SKILL.md wording changes for the user to review. Read-only: writes nothing to the vault and edits no skill file itself. NOT for: correcting a skill in the moment, nightly connection work (nightly-consolidation), or day-to-day vault writes (the specialized skills).
4 other projects use a version of this.
Adopted by
Most recently taken up by
- blueprint-conformance/bcetheir own version, first seen Oct 20, 2026
- catlog22/Maestro-Flowtheir own version, first seen Oct 9, 2026
- catlog22/maestro-flowtheir own version, first seen Sep 4, 2026
- zhao-wuyan/ccw-command-explorertheir own version, first seen May 8, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- catlog22/maestro-flow★ 571same name
- catlog22/Maestro-Flow★ 571same name
- zhao-wuyan/ccw-command-explorer★ 45same name
- blueprint-conformance/bce★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- daily-journalSkill
- goalsSkill
- idea-pipelineSkill
- knowledge-baseSkill
- meeting-notesSkill
- nightly-consolidationSkill
- people-notesSkill
- project-trackingSkill
- resurfacingSkill
- second-brainSkill
- shopping-listSkill
- standupSkill
- task-trackingSkill
- vault-recallSkill
- weekly-reviewSkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 2 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 4 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 17
Use second-brain for the shared tool surface and conventions.
- Very specific: line 21
Start with obsidian__vault_signals since="<first day of last month>" — one read-only call, no shell needed, that returns four measurements …
- Very specific: line 35
Call vault_signals, then read the Reviews folder and (when a cluster needs exact wording) the full Corrections table.
- Very specific: line 52
Never edits a SKILL.md, a cron prompt, or any vault note — every source above is read through obsidian__vault_signals, …
- Distinctive: line 53
Never proposes a change with no evidence, and never more than three proposals in one pass.
- Very specific: line 54
Never applies its own proposals.
- Distinctive: line 59
If a tool fails for a reason other than "the note does not exist yet," report the error plainly — its message names the fix — rather than …
“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Skill Tuning
The self-improvement loop's monthly half: turn a month of friction into a short list of specific, evidenced proposals. The measurement is the deliverable — not the edit. This skill never rewrites a SKILL.md, a cron prompt, or any vault note. It reads, clusters, and proposes; the user decides whether a proposal becomes a change.
Use second-brain for the shared tool surface and conventions.
Data Sources
Start with obsidian__vault_signals since="<first day of last month>" — one read-only call, no shell needed, that returns four measurements for that window in one shot:
reject_rate— added/rejected/rate for machine commits, broken down by line kind (wikilink insertion, Related bullet, synthesis note line, task line, other) and by top file.reject_rate: nullwithreject_rate_unavailablenaming the fix (git disabled, or the vault is not a git repo) is a normal, reportable outcome for this one section — the other three still populate.calibration— similarity pair counts, the current threshold, how many pairs sit at or above it, the gap between the threshold and the highest score that stays under it, and the highest-scoring pair's own texts. A proposal to moveSIMILARITY_THRESHOLDmust cite this gap.corrections— the same shape asobsidian__corrections_summary: counts grouped by skill and rule, plus the most recent rows. Zero means no correction has been logged yet.ignored_links— rows added toIgnored Links.mdon or aftersince.
Two more sources aren't in vault_signals and still need their own read, both read-only, through obsidian__* tools; a missing note is a normal outcome for either — report it as "nothing recorded yet," not as a failure:
- Corrections log, full wording —
obsidian__vault_read note="Corrections"has the full table (| Date | Skill | What happened | What was wanted | Rule |) when a cluster needs a row's exact wording that the summary counts don't carry. - Recent reviews —
obsidian__vault_list folder="Reviews". Results are sorted the way everyvault_listcall is: date-named notes come back oldest first, so the last four entries in the returned list are the four most recent. An empty result means no review notes exist yet.
Workflow
- Call
vault_signals, then read the Reviews folder and (when a cluster needs exact wording) the full Corrections table. Treat each missing, empty, or unavailable signal as a normal, reportable outcome and move on — do not stop the pass because one is absent. - Cluster the Corrections rows by
SkillandRule. A rule that recurs against the same skill — worded the same way or differently — is a candidate; a single correction, however sharp, is not enough on its own. Read the Reviews entries, the reject rate by line kind, and the recent Ignored Links rows for the same shape of pattern (a review that keeps asking "why did it do that," a line kind with a high reject rate, or the same kind of name retired more than once) and count that as supporting evidence for a cluster that already has a correction behind it. - For each cluster that clears that bar, open the named skill file and find the exact current wording the corrections are pushing against. A proposal must point at real, quoted text — do not propose a rewrite of a paragraph you have not read in the file.
- Reply with at most three proposals, the ones with the most and clearest evidence first. If nothing repeats, say so in one line and stop; do not invent a third proposal to fill the slot.
Proposal Format
Each proposal, in the reply, carries exactly these parts:
- Skill file: the path, e.g.
nightly-consolidation/SKILL.md. - Current wording: the exact text quoted from the file today.
- Proposed wording: the exact replacement text.
- Evidence: quote the number behind the proposal — a reject rate for a line kind, a calibration gap, or a corrections count — alongside the corrections or review answers it came with, each with its date. E.g. "38% reject rate on Related bullets since 2026-07-01 (
vault_signals), plus Corrections 2026-07-14 and 2026-08-02, both logged against nightly-consolidation's Related-links step." A proposal to moveSIMILARITY_THRESHOLDmust cite the calibration gap specifically, not just that pairs exist above or below it. - Does not change: one line naming what is deliberately left alone, so the scope of the proposal is visible at a glance.
What This Pass Never Does
- Never edits a SKILL.md, a cron prompt, or any vault note — every source above is read through
obsidian__vault_signals,obsidian__vault_read, orobsidian__vault_list, nothing more. - Never proposes a change with no evidence, and never more than three proposals in one pass.
- Never applies its own proposals. Proposals are applied by the user, through a pull request that keeps
npm testand the behavioral evals green — never by this agent, and never as a direct edit to a running skill.
Safety
- Corrections and review content can carry private wording; quote only as much as the evidence line needs.
- If a tool fails for a reason other than "the note does not exist yet," report the error plainly — its message names the fix — rather than retrying blind or working around it.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

