<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rulesets/scripts/systemd, branch main</title>
<subtitle>Claude Code skills, rules, and language bundles
</subtitle>
<id>https://git.cjennings.net/rulesets/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/rulesets/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/rulesets/'/>
<updated>2026-06-10T23:21:15+00:00</updated>
<entry>
<title>feat(kb): monthly hygiene report for agent KB nodes</title>
<updated>2026-06-10T23:21:15+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-10T23:21:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/rulesets/commit/?id=b0140951ebe0f0c2d33a868a2d1cda2eafd29044'/>
<id>urn:sha1:b0140951ebe0f0c2d33a868a2d1cda2eafd29044</id>
<content type='text'>
Phase 4 of the agent KB spec. kb-hygiene.sh inventories :agent: nodes, flags orphans (no id: link anywhere in the KB points at them), duplicate titles, and stray conflict files, then writes an org report into the rulesets inbox for the normal inbox flow to propose dispositions. Read-only by design — it never deletes. A monthly systemd user timer (Persistent=true) runs it; bats covers the counts, orphan detection, duplicates, conflict tally, and the missing-KB error path.
</content>
</entry>
<entry>
<title>feat(kb): roam-sync script + timer units, old roam path repointed</title>
<updated>2026-06-10T23:13:03+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-10T23:13:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/rulesets/commit/?id=fcf554a6be8b02aeb9c521ea5d7b7d86465aea0f'/>
<id>urn:sha1:fcf554a6be8b02aeb9c521ea5d7b7d86465aea0f</id>
<content type='text'>
Phase 0 of the agent KB spec: the org-roam KB now lives at ~/org/roam as a git repo on cjennings.net. roam-sync.sh (bats-tested: commit, rebase, push, conflict-abort) runs from a 15-minute systemd user timer; canonical unit files live in scripts/systemd/. Live references to the old ~/sync/org/roam path (the task-list pointer, the journal workflow, the notes template) repoint to ~/org/roam, and a transition symlink at the old location covers stragglers.
</content>
</entry>
</feed>
