Skip to content

Holocron v1.4.0

Choose a tag to compare

@github-actions github-actions released this 11 May 06:25
· 7 commits to main since this release

Polish release. Three independent fixes that surfaced during real-world use of v1.3.0.

1. Namespace shims for /holocron:adopt, /holocron:illustrate, /holocron:voice-act. These three skills shipped without a matching commands/X.md shim, so the slash-command picker showed them as bare /adopt, /illustrate, /voice-act instead of the namespaced /holocron: form every other command uses. The skills still worked, but the picker mismatch read as "this one is broken or different" — exactly the confusion the namespace exists to prevent. Adding a 6-line shim per command (mirroring commands/new.md) restores parity. commands/ and skills/ directory counts now match (26 ↔ 26).

2. Task tool added to wizard specialist agents. architect, character-developer, and world-builder all reference dispatching other agents in their bodies — architect consults lucas / karpyshyn / stover; character-developer consults traviss / karpyshyn / mandoa-linguistics-consultant / huttese-lexicon-specialist / sith-linguist-scholar; world-builder defers to lore-researcher. None of them had Task in their tools list, which meant those references were aspirational, not executable. Added Task to all three. outliner was audited and left alone (only reads files, doesn't dispatch).

3. Project-level notes infrastructure. /holocron:notes previously only handled the inline %%NOTE: …%% markers inside chapter prose. Writers had no first-class place for project-wide ideas, todos, world questions, or "remember to fix X" reminders that don't belong in a specific chapter. v1.4.0 adds a second tier: notes.md at the project root with four sections (Ideas / Todos / World Questions / Remember), four new flags on the existing skill (--add, --add-todo, --add-question, --add-remember) that each append a dated bullet under the right section, a --list flag that renders both tiers in one view, and a new Project Notes card on the dashboard's Workshop tab that mirrors the inline-notes card pattern.

The two tiers stay distinct: inline markers are about prose-level edits ("damp wool repeated in chapter 7"); project notes are about everything else ("Bao-Dur POV chapter midway through Act II"). The dashboard surfaces both side by side. The existing --process and --clear flows for inline markers are untouched; --clear does not touch notes.md (project notes are durable).

Added

  • commands/adopt.md — slash-command shim. 6 lines mirroring commands/new.md. Restores /holocron:adopt namespacing in the picker.
  • commands/illustrate.md — same pattern for /holocron:illustrate.
  • commands/voice-act.md — same pattern for /holocron:voice-act.
  • templates/standalone-story/notes.md — new project-level scratchpad scaffold. Four sections (Ideas / Todos / World Questions / Remember), each with an HTML comment explaining what belongs there. Top of file documents the four /holocron:notes --add* flags so the writer can discover them inline.
  • projectNotes field in templates/dashboard/data.schema.json — sibling to inlineNotes. Object with four string-array properties (ideas, todos, questions, remember).
  • Project Notes card in templates/dashboard/index.html — full-width card on the Workshop tab, rendered above the existing 2-column row that holds Inline Notes and Subagent Runs. Two-column inner grid for the four sections. Empty state ("No project notes yet. Use /holocron:notes --add "…" to add one.") when all sections are empty. Total-item count + notes.md source label in the card's action slot.

Changed

  • agents/architect.md — added Task to the tools list. Body already referenced consulting lucas for the mythic register check, karpyshyn for psychology, and stover for prose-level intensity; the dispatch was unrunnable until now.
  • agents/character-developer.md — added Task to the tools list. Body references consulting traviss, karpyshyn, mandoa-linguistics-consultant, huttese-lexicon-specialist, and sith-linguist-scholar for character-specific deep-dive work.
  • agents/world-builder.md — added Task to the tools list. Body says "defer to the lore-researcher agent" for canonical-fact resolution.
  • skills/notes/skill.md — extended for the two-tier system. Description rewritten to call out both inline markers and project notes. Argument hint expanded to cover the new flags. New "Tier 2 — Project Notes (notes.md)" section. Usage block lists every flag. Output format expanded with --list and --add* confirmation samples. Implementation section split into Inline-marker scan and Project-notes append/list. Workflow split between the two tiers. Existing --process and --clear semantics preserved verbatim — they still operate only on inline markers; --clear explicitly does not touch notes.md.
  • skills/dashboard/skill.md — files-read list now includes notes.md (parsed into the new projectNotes field). Workshop-tab description updated to call out the project-notes parsing and the inline-vs-project distinction.
  • agents/new-project.md — Phase 7 data.json synthesis bullet list adds projectNotes (parsed from notes.md into the four-section object). On first install, all four sections are empty; subsequent runs re-parse from the file.
  • .claude-plugin/plugin.json, .claude-plugin/marketplace.json — version bumped to 1.4.0.

Notes

  • Why three skills shipped without shims. Plugin auto-discovery scans skills/ and registers each one regardless of whether a matching commands/X.md exists; the shim is what controls the picker's display. The three affected skills were each added in different releases (adopt in v1.1.0, illustrate in v1.3.x, voice-act in v1.3.0) and none of those releases included the shim creation step in the release checklist. The fix is one-time; future skill additions should bundle the shim with the skill.
  • Why the Task gap matters. Without Task, an agent that references "consult lucas" in its body has no way to actually invoke lucas — the reference becomes aspirational documentation. The audit was scoped tight: only agents whose body explicitly references dispatching other agents got Task added; outliner was reviewed and intentionally left without it (its body only references files, not other agents).
  • Why project notes belong in their own file, not in a chapter. Inline %%markers%% are scoped to a specific line in a specific chapter — they're for prose-level edits. Project notes are scoped to the whole project — they're for ideas that aren't tied to a specific scene. Forcing project ideas into chapter files would require the writer to pick an arbitrary host chapter; keeping them in notes.md keeps the chapter files clean and gives the dashboard a clean parse surface.
  • Backwards compatibility. Existing v1.3.0 projects work without modification. notes.md is absent until either the writer runs /holocron:notes --add* (the skill creates the file from the template if missing) or runs /holocron:reconcile (which detects and offers to install missing scaffold files). Dashboard renders an empty Project Notes card in either case — no breakage.