2026-06-21·2 min read

Jubileus, part 2: the librarian works nights

field-notesjubileusclaude-code

The part of Jubileus I use most isn’t a feature I invoke. It’s a set of jobs that run on Windows Task Scheduler: a daily digest, a morning briefing, a librarian that keeps the inbox from rotting, project summaries, entity pages. Each job is a markdown prompt file in the repo, launched as a headless claude -p "read jobs/<job>.md and follow it exactly" with a scoped tool allowlist. The prompts are versioned like code, because they are code.

The conservative merge

The scariest design question in the whole project: how does an autonomous agent edit your notes without ever destroying what you wrote?

The answer became a pattern I now reuse everywhere. Every AI-maintained document has a strict section-ownership split. On a project page, the AI owns the summary and the highlights; I own “next steps.” On an entity page, the AI owns the profile; I own the notes section. The writer code structurally cannot touch the human-owned sections. If the librarian wants to suggest something, it appends under a marker labelled as a suggestion. I promote or delete.

That’s it. No diffs to review, no versioned conflict UI. Ownership boundaries instead of trust.

Watching the other projects

One job distills my other repos’ docs and git history into per-project progress notes inside the vault. So the second brain holds a devlog of the novel, the wedding app, the authoring tool, written by an agent reading their commits. Half of the research for this very series of posts came out of those notes.

The audit habit

Twice during the build I pointed several read-only agents at the codebase in parallel with one instruction: find security problems, then have every finding verified by hand. They found real ones. A header-injection hole in the mail feature (since deleted along with the feature), a path traversal in the date-based tools, and a command-gate bypass using & on cmd.exe that survived an earlier fix for &&. The lesson I keep relearning: agents are good at attacking code agents wrote, as long as a human adjudicates the findings.

The dev log also caught its own documentation drift. A status block from June 17 listed four features as “deferred” that had in fact shipped. The fix was rereading the code instead of trusting the log. Field note to self: the log is also a program, and it also has bugs.

Part 3 is about the hub’s strangest growth: the night it became a place to write code.