learning-curator
Skill0 starsChanged 13 days agoISCView on GitHub
Use when the user asks to process, curate, promote, or convert staged empirical learnings into skills or rulebook updates. Reads the shared machine-scoped inbox at ~/.agents/learnings/*.md, audits ~/.agents/skills/ and AGENTS.md, and proposes rulebook elevations, upgrades, splits of skills over 500 lines or multi-domain, or new skills. Never modifies or deletes staged entries, and never targets project-local skill directories outside ~/.agents/skills/.
In this repository18 other files it gives its agents.
- AGENTS.mdAGENTS.md
- apex-performance-auditorSkill
- checkSkill
- context7-mcpSkill
- design-craftSkill
- framework-engine-stacksSkill
- guardrailsSkill
- hypermedia-engine-stacksSkill
- okf-docsSkill
- pi-lens-ast-grepSkill
- pi-lens-lsp-navigationSkill
- pi-lens-write-ast-grep-ruleSkill
- pi-lens-write-tree-sitter-ruleSkill
- rust-systemsSkill
- scalabilitySkill
- select-modelSkill
- skill-authoring-visionSkill
- systems-auditorSkill
The file
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 3 are distinctive, and 8 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 26
Every staged learning entry (Situation & Blocker, Applied Solution, Prevention Rule) must be evaluated against AGENTS.md and …
- Very specific: line 42
Run the bundled deterministic audit script to inventory ~/.agents/learnings/*.md, ~/.agents/skills/, and ./AGENTS.md:
- Very specific: line 53
Read the full text of any candidate ~/.agents/skills/<skill>/SKILL.md flagged by the script before designing mutations.
- Distinctive: line 60
If the user asked for a dry run or proposal, present the Curation Triage Table and await confirmation.
- Distinctive: line 70
Place the rule in the matching chapter of AGENTS.md (e.g., Chapter 2 for operational guardrails, Chapter 6 for state/concurrency …
- Very specific: line 78
Pattern A (Vertical Reference Extraction): When the domain is cohesive but SKILL.md exceeds 450 lines, move OS-specific matrices, verbose …
- Very specific: line 79
Pattern B (Horizontal Sibling Split): When a skill straddles two distinct lifecycles or roles, mint …
- Very specific: line 81
Create ~/.agents/skills/<new-skill>/SKILL.md using a clean kebab-case directory name.
- Very specific: line 84
If AGENTS.md Chapter 4 (Skill Delegation & Discovery) lacks a routing row for the new domain capability, propose a surgical SEARCH/REPLACE …
- Very specific: line 96
Verify that ~/.agents/learnings/ remains completely untouched:
- Distinctive: line 106
Always emit the following structured Markdown summary when reporting curation analysis or execution results:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Learning Curator (learning-curator)
1. Purpose & Inviolable Constraints
Transform empirical development struggles staged in the shared machine-scoped inbox at ~/.agents/learnings/*.md into permanent procedural immunity across AGENTS.md and the global ~/.agents/skills/ catalog without duplicating guidance, bloating existing skills, or mutating the learning inbox.
Inviolable Operational Constraints
| Constraint Identifier | Enforcement Rule |
Read-Only Learning Inbox | Treat ~/.agents/learnings/*.md, the machine-scoped inbox every project appends to, strictly as immutable inputs. Never delete, move, rename, edit, or append status markers inside ~/.agents/learnings/*.md. |
Global Skill Scope Only | Inspect, create, upgrade, and split skills exclusively inside ~/.agents/skills/. Never scan or mutate workspace-local skill folders (.opencode/skills/, ./.agents/skills/). |
Surgical Mutations | Apply updates to AGENTS.md and existing ~/.agents/skills/*/SKILL.md files via targeted SEARCH/REPLACE deltas; never perform blind whole-file overwrites on existing artifacts. |
500-Line Holocron Ceiling | Every SKILL.md in ~/.agents/skills/ must remain strictly under 500 physical lines (wc -l). Skills reaching 450+ lines during an upgrade must undergo reference extraction or sibling splitting. |
Idempotent Re-Execution | Because ~/.agents/learnings/*.md remains untouched after curation, verify whether each learning's Prevention Rule is already codified in AGENTS.md or ~/.agents/skills/ before proposing mutations. |
2. Core Mental Model: The 5-Way Curation Routing Matrix
Every staged learning entry (Situation & Blocker, Applied Solution, Prevention Rule) must be evaluated against AGENTS.md and ~/.agents/skills/ and assigned to exactly one of five mutually exclusive routing actions:
| Routing Action | Qualification Criteria | Target Artifact Mutation |
NO-OP (Already Integrated) | The Prevention Rule invariant and its procedural remedy already exist in AGENTS.md or ~/.agents/skills/<skill>/ (>= 75% invariant token overlap or semantic equivalence). | None. Log exact file path and section where the rule is already enforced. |
ELEVATE (Propose AGENTS.md Update) | Learning expresses a universal, language-agnostic, repository-agnostic invariant applicable to 100% of tasks (e.g., git lock safety, command-chaining gates, universal verification hygiene) and fits a telegraphic OKF v0.2 factual triple (Subject -> Predicate -> Object). | Propose surgical SEARCH/REPLACE delta against ./AGENTS.md (plus global AGENTS.md if applicable). |
UPGRADE (Enhance Existing Global Skill) | Existing skill in ~/.agents/skills/<skill>/SKILL.md shares >= 60% domain, trigger, or toolchain affinity, and integrating the new workflow/gotcha keeps SKILL.md strictly under 450 lines. | Update ~/.agents/skills/<skill>/SKILL.md (and optional references/ or scripts/). |
SPLIT (Decompose Overloaded Global Skill) | Existing skill matches the domain (>= 60% affinity), but integrating the learning pushes SKILL.md to >= 450 physical lines (wc -l) or mixes distinct execution lifecycles/personas. | Extract deep lookup matrices into ~/.agents/skills/<skill>/references/ (Vertical Split) or partition into two sibling skills under ~/.agents/skills/ (Horizontal Split). |
CREATE (Mint New Global Skill) | Learning is situational or domain-specific (not a universal AGENTS.md invariant), and no existing skill in ~/.agents/skills/ reaches the 60% domain affinity threshold. | Create ~/.agents/skills/<new-skill>/SKILL.md (< 500 lines) with optional references/ and scripts/. |
3. Sequential Execution Workflow
Phase 1: Deterministic Intake & Catalog Inventory
- Run the bundled deterministic audit script to inventory
~/.agents/learnings/*.md,~/.agents/skills/, and./AGENTS.md:bun scripts/audit-catalog.ts \ --learnings-dir ~/.agents/learnings \ --skills-dir ~/.agents/skills \ --agents-md ./AGENTS.md \ --format markdown - Inspect the generated inventory for:
- Total parsed learning entries, their deterministic SHA-256
Prevention Rulefingerprints, and automatedNO-OP/ candidate skill affinity rankings. - Existing global skills in
~/.agents/skills/, their physical line counts (wc -l), frontmatter trigger descriptions, and anySPLIT_CANDIDATE(>= 450lines) flags.
- Total parsed learning entries, their deterministic SHA-256
- Read the full text of any candidate
~/.agents/skills/<skill>/SKILL.mdflagged by the script before designing mutations.
Phase 2: Semantic Deduplication & Triage Classification
- Consult
references/triage-and-split-rubric.mdto score domain affinity and transform each learning's components (Situation & Blocker,Applied Solution,Prevention Rule). - Group related learnings across
~/.agents/learnings/*.mdthat target the same destination skill so cohesive upgrades, reference extractions, or sibling splits occur in a single atomic pass. - Construct the Curation Triage Table (Section 4) mapping every learning entry to its chosen routing action (
NO-OP,ELEVATE,UPGRADE,SPLIT, orCREATE), target path, and structural transformation plan. - If the user asked for a dry run or proposal, present the Curation Triage Table and await confirmation. If the user requested direct execution, proceed immediately to Phase 3.
Phase 3: Artifact Mutation & Holocron Synthesis
Execute the approved routing actions strictly according to target tier rules:
- For
NO-OP:- Record the existing location in the triage report. Perform zero file writes.
- For
ELEVATE(AGENTS.md):- Format the
Prevention Ruleas a strict OKF v0.2 telegraphic bullet or table row (Subject -> Predicate -> Object, explicit entity names, zero conversational filler, zero LaTeX or ASCII diagrams). - Place the rule in the matching chapter of
AGENTS.md(e.g., Chapter 2 for operational guardrails, Chapter 6 for state/concurrency invariants, Chapter 7 for verification/testing gates, Chapter 9 for git/release hygiene). - Provide or apply the exact
SEARCH/REPLACEdelta.
- Format the
- For
UPGRADE(~/.agents/skills/<skill>/SKILL.md):- Map
Prevention Rule-> Mandatory Preconditions / Decision Gate section. - Map
Applied Solution-> Sequential Execution Workflow step (or extract reusable check logic intoscripts/). - Map
Situation & Blocker-> Gotchas & Edge Cases entry (symptom signature + deterministic fix). - Expand the YAML frontmatter
descriptiontrigger keywords only if the learning introduces a new failure symptom or tool trigger within the same domain.
- Map
- For
SPLIT(~/.agents/skills/<skill>/):- Pattern A (Vertical Reference Extraction): When the domain is cohesive but
SKILL.mdexceeds450lines, move OS-specific matrices, verbose config templates, or protocol tables into~/.agents/skills/<skill>/references/<topic>.mdand link them fromSKILL.md. - Pattern B (Horizontal Sibling Split): When a skill straddles two distinct lifecycles or roles, mint
~/.agents/skills/<sibling-skill>/SKILL.md, migrate the secondary domain sections, and add explicit negative boundaries (Never trigger for...) to both skills' YAML frontmatterdescriptionfields.
- Pattern A (Vertical Reference Extraction): When the domain is cohesive but
- For
CREATE(~/.agents/skills/<new-skill>/SKILL.md):- Create
~/.agents/skills/<new-skill>/SKILL.mdusing a clean kebab-case directory name. - Include valid YAML frontmatter (
name,descriptionwith explicit positive activation triggers and negative scope boundaries). - Structure the syllabus with: Purpose & Preconditions, Decision Matrix, Sequential Workflow, and Gotchas & Edge Cases.
- If
AGENTS.mdChapter 4 (Skill Delegation & Discovery) lacks a routing row for the new domain capability, propose a surgicalSEARCH/REPLACErow addition toAGENTS.md.
- Create
Phase 4: Post-Curation Verification Gate
- Execute the audit script in verification mode to confirm all global skills in
~/.agents/skills/have valid frontmatter and remain strictly under500physical lines:bun scripts/audit-catalog.ts \ --learnings-dir ~/.agents/learnings \ --skills-dir ~/.agents/skills \ --agents-md ./AGENTS.md \ --verify-skills - Verify that
~/.agents/learnings/remains completely untouched:
Output must be empty (git status --porcelain ~/.agents/learnings0modified, added, or deleted files in~/.agents/learnings/).
4. Curation Triage Report Template
Always emit the following structured Markdown summary when reporting curation analysis or execution results:
## Learning Curation Triage Matrix
| Learning Source & Date | Entry Title | Rule Fingerprint | Routing Action | Target Holocron / Artifact | Transformation Summary |
| :--- | :--- | :--- | :--- | :--- | :--- |
| `toolchain.md` (2026-10-25) | `<Title>` | `<8-char-sha>` | `UPGRADE` | `~/.agents/skills/<skill>/SKILL.md` | Add precondition gate + Windows `.cmd` gotcha |5. Gotchas & Edge Cases
- Host vs. Workspace Skill Path Drift:
- Symptom:
AGENTS.mdor a staged learning entry references.agents/skills/<domain>/SKILL.mdor.opencode/skills/<domain>/SKILL.mdas a workspace-relative path. - Remedy:
learning-curatoroperates exclusively on the host global catalog at~/.agents/skills/. Never create or modify skills inside workspace-local.agents/skills/or.opencode/skills/. When proposing Chapter 4 table updates toAGENTS.md, preserve the repository's established path convention inAGENTS.mdwhile storing the curated skill implementation in~/.agents/skills/.
- Symptom:
- Idempotent Re-Runs on Unmodified
~/.agents/learnings/:- Symptom: Running
learning-curatora second time appends duplicate bullets or duplicate gotcha sections to~/.agents/skills/<skill>/SKILL.mdbecause~/.agents/learnings/*.mdfiles are never deleted or marked inline. - Remedy: Always check both the
audit-catalog.tsoverlap flags and the target file's existing rules before mutating. If thePrevention Rulesemantics are already present, classify the entry asNO-OP (Already Integrated).
- Symptom: Running
- Over-Elevating Situational Rules to
AGENTS.md:- Symptom: Platform-specific or tool-specific workarounds (e.g., Windows
npm.cmdrequiringshell: truewithexecFile, ornpm publish0.0.0-stageregistry polling) get elevated intoAGENTS.md, bloating the universal rulebook. - Remedy: Apply the 4-Gate Elevation Filter in
references/triage-and-split-rubric.md. If a rule names a specific OS, package manager, framework, or runtime API (npm,Windows,execFile,opencode), route it to~/.agents/skills/(UPGRADE,SPLIT, orCREATE), neverAGENTS.md.
- Symptom: Platform-specific or tool-specific workarounds (e.g., Windows
- Orphaned References During
SPLIT:- Symptom: Extracting a section from
SKILL.mdintoreferences/<topic>.mdleaves no explicit pointer inSKILL.md, causing agents not to discover the reference file. - Remedy: Every file placed in
references/orscripts/must be explicitly cited with an activation condition inside the parentSKILL.mdworkflow.
- Symptom: Extracting a section from
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.

