agentleFS
maroffomaroffo/claude-forge/skills/knowledge-sync/SKILL.md

knowledge-sync

Skill17 starsChanged 50 days agoMITView on GitHub

Sync vault knowledge patterns to skills. Scans Second Brain for strong signals, proposes skill updates. Use when user says knowledge sync, sync skills, update skills from vault, or promote patterns.

3 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 5 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    FILTER: only strong signals; skip rows where signal = applied or pattern already exists in target skill

    line 41
  2. Distinctive:

    After human approval for each candidate:

    line 49
  3. Very specific:

    Add source backlink as HTML comment: <!-- vault: [[Second Brain - Development#Pattern Name]] -->

    line 52
  4. Very specific:

    Update the Skill Candidates table: change signal from strong to applied

    line 53
  5. Distinctive:

    Read the target skill file before proposing additions (avoid duplicates)

    line 98
  6. Distinctive:

    Never auto-apply: Always present proposals and wait for approval.

    line 102
  7. Distinctive:

    One skill at a time: Don't batch across skills without per-skill approval.

    line 103
  8. Distinctive:

    Backlinks are mandatory: Every applied pattern traces back to its vault source.

    line 105

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

ABOUTME: Vault-to-skills sync, promotes recurring patterns from Second Brain to skill files

ABOUTME: Scan/filter/group/propose/approve/apply cycle with signal strength tracking

Knowledge Sync

Promotes recurring patterns from vault Second Brain notes into skill files. The APPLY step runs on human approval only, never autonomously. The scan-and-propose phase MAY run on a schedule (see Scheduled Mode).

Signal Strength

SignalCriteriaAction
weak1 project or 1 sourceTrack, don't propose
strong3+ projects OR 2+ independent sourcesPropose to human
appliedAlready synced to skillSkip

Annotation Schema

Second Brain notes use a ## Skill Candidates table:

## Skill Candidates
<!-- Updated by learning-docs during retrospectives -->

| Pattern | Target Skill | Seen In | First Seen | Signal |
|---------|-------------|---------|------------|--------|
| Go error wrapping with %w | golang | feed-brain, bbp | 2026-01-15 | weak |
| Token bucket rate limiting | cloud-infrastructure | feed-brain, nur, clawdbot | 2026-01-10 | strong |

Table-based: easy to append via CLI, readable in Obsidian, parseable by Claude.

Process

  1. SCAN: obsidian search query="## Skill Candidates" path="Second Brain" matches
  2. FILTER: only strong signals; skip rows where signal = applied or pattern already exists in target skill
  3. GROUP: candidates by target skill with vault source citations
  4. PROPOSE: draft exact text to add to each skill file (show diff-style)
  5. APPROVE: human gate (always RED in decision framework)
  6. APPLY: edit skill file + add backlink + update signal

Apply Step Details

After human approval for each candidate:

  1. Edit target skill file with the proposed addition
  2. Add source backlink as HTML comment: <!-- vault: [[Second Brain - Development#Pattern Name]] -->
  3. Update the Skill Candidates table: change signal from strong to applied

The Obsidian CLI only appends or prepends, so it cannot change a table row in place. Read the note with obsidian read, then change the row's signal with the Edit tool on the note's file under the vault root (path in ../_OBSIDIAN.md, Path fallback).

Presentation Format

## Knowledge Sync Report

### Candidates Found: N strong, M weak (skipped)

#### golang (2 candidates)

**1. Go error wrapping with %w**
- Source: [[Second Brain - Development#Go Error Handling]]
- Seen in: feed-brain, bbp
- Proposed addition to `skills/golang/SKILL.md`:

[exact text to add]

- [ ] Approve  [ ] Skip  [ ] Modify

#### cloud-infrastructure (1 candidate)
...

Scheduled Mode (propose-only)

The scan half of this skill may run unattended; the APPLY gate never does. A scheduled run executes SCAN → FILTER → GROUP → PROPOSE, writes the report to quality_reports/knowledge_sync/report-YYYY-MM-DD.md in the forge repo, and STOPS. Max reviews the report later and triggers APPLY interactively.

Runner: a user crontab entry (1st of the month, 09:23 local). The human installs it manually: persisting a headless autonomous run is a user-authorized action, Claude only documents the line (crontab -l to inspect, crontab -r or edit to remove). Replace <forge-repo> and <claude-bin> with your paths (which claude), and mkdir -p ~/.claude/logs first (cron fails silently on a missing redirect target):

23 9 1 * * cd <forge-repo> && <claude-bin> -p "Run the knowledge-sync skill in Scheduled Mode: SCAN, FILTER, GROUP, PROPOSE only. Write the report to quality_reports/knowledge_sync/report-$(date +\%Y-\%m-\%d).md. Do NOT apply any skill changes." >> ~/.claude/logs/knowledge-sync-cron.log 2>&1

Caveats:

  • cron does not catch up on runs missed while the machine sleeps: if the report is missing after the 1st, kick the same prompt manually.
  • The headless run depends on the settings.json allowlist covering the obsidian CLI; a permission denial shows up in the log file, not on screen.
  • The report lands on whatever branch is currently checked out in the forge repo. Reports are tracked in git (review history), not gitignored.
  • CronCreate (in-session scheduler) is NOT suitable here: its jobs are session-only and expire within 7 days.

Quality Notes

  • Read the target skill file before proposing additions (avoid duplicates)

Rules

  • Never auto-apply. Always present proposals and wait for approval.
  • One skill at a time. Don't batch across skills without per-skill approval.
  • Preserve existing content. Additions only, never modify existing skill text.
  • Backlinks are mandatory. Every applied pattern traces back to its vault source.
  • Cadence: monthly or after major project milestones. Not after every session.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.