Unicron
Guide Changelog Download
← Unicron

Changelog

Every release, newest first.

0.19.0

2026-07-24

Added

  • Ask became Chat, and Chat can act. The read-only Ask tab is now a real conversation that reads and changes your vault. Edit a note, triage the inbox, create a project, whatever you ask. It works the way the review layer set up in 0.18.0: it does the work and shows you what changed in a card you can revert, instead of gating each edit behind a prompt. The rule still holds. It can read anything, it can't change anything without you seeing it.
  • Answers stream in. Chat types its reply as it generates instead of dropping the whole thing at the end, with a blinking caret while it's still going.
  • Steer while it works. The composer stays live during a turn. Type a follow-up and it queues, then sends when the current reply finishes. It's the type-ahead move from the terminal, so you can redirect without waiting for it to stop.

Changed

  • Capture is a conversation now. The quick-capture modal (⌘N) keeps its fast structured form, but under the hood it runs the same session Chat does. When it needs something it asks in plain language and you answer in a reply box, instead of the old one-shot run that could never ask. That let me delete a pile of "do not ask me questions" prompt hacks and the machine-readable trailer that used to fake follow-up questions.
  • Triage shows one quiet line. Inbox triage used to print a scrolling terminal log of every command it ran. Now it's a single friendly line, the same as Chat's thinking line.
  • Claude asks before editing your profile. The vault keeps a self-model at me/profile.md, and Claude used to update it silently whenever a meeting or capture revealed a pattern about you. Now it proposes the specific change, waits for your yes, and writes only what you approved. In an unattended run (auto-triage or the daily brief) it leaves the profile alone and notes the candidate in its summary instead.
  • Stop means stop the action, not end the chat. Stopping a Chat turn kills the work in flight but keeps the conversation, so your next message picks up where you were. Chat and Triage can also run at the same time now without cancelling each other.

Fixed

  • The review card's count matches what it shows. A run that moved files behind the scenes used to say "7 notes changed" above a card listing 3. Both read the reviewable count now, and Revert all still puts everything back.
  • Resizing a modal no longer closes it. Dragging the panel's corner past its edge used to register as a click on the backdrop and dismiss the whole thing, taking the review card with it.
  • A long review list scrolls inside its card instead of shoving the reply box off the bottom of the modal.

0.18.0

2026-07-23

Added

  • See what Claude changed, and take it back. Triage, Capture, and the Daily Brief all run Claude over your vault, and until now they did it out of sight: the run finished, said "done," and whatever it wrote to your notes was just there. Now every run ends with a review — one quiet line per note it touched (Updated onboarding-redesign.md · +9 −2), the diff a click away, and Revert on each row plus Revert all for the whole run. The rule is one sentence: it can read anything, but it can't change anything without you seeing it.
  • The review tracks the whole run, not just the parts worth showing. A triage moves your capture from raw/inbox/ to raw/processed/; that's bookkeeping, so it doesn't get a row — but Revert all puts it back too, or you'd be left with the notes undone and the captures still marked processed. Same for the generated Today.md: regenerating is how you change a brief, so reverting one is meaningless, and it stays out of your way. What the brief writes into notes you authored — it appends a task to the note it cites when none backs a priority — does show.
  • A run's undo doesn't expire. Closing the dialog used to take the only way back with it, so the snackbar now waits until you dismiss it.

Changed

  • Undo restores a note exactly, instead of stamping today's date into its updated: field on the way back. Putting a note back isn't editing it.

Added

  • The learning layer: topics and sources. Capture what you're learning — and what you've already written — as part of the vault. A source is one distilled note per podcast episode, book, article, video, talk, or course, at sources/; a topic is a living synthesis of a subject at topics/, rewritten to absorb each new source rather than kept as a log. A source names its topics in frontmatter (many-to-many — one episode can feed several subjects), which draws dashed about edges in the graph; topics cluster on a hub anchored to Me, like Journal. Your own published work is a source too, marked author: self, so feeding in your articles and book builds a library of your positions the vault can draw on.
  • The /source command. Paste a transcript, an article, or your notes — Add ▸ Source in the app, or /source in a terminal — and it distills the material (key ideas in its own words, quotes verbatim-only), files it under existing topics before inventing new ones, and updates each topic's synthesis. The same date, no-invention, and update-the-profile rules as /meeting.
  • A Topics view (View ▸ Topics): each topic with the sources that fed it — editable kind pill, publish date, a link out when the source has a URL, a "yours" badge on your own work — plus an Unfiled section for sources whose topics don't resolve. The vault check flags a source with no topics, a topic slug that doesn't exist, and an unknown kind.
  • Topic and source rows in the ontology, managed templates for both folders, and a coaching rule in new vaults' CLAUDE.md: when advising on a decision or project, consult topics/ and cite the position it drew on.

Changed

  • Waiting on and Threads stopped being tasks. Only your own items are tasks now — the ones you actually act on. Before, an item owned by someone else (a task with a name in front, like Jane — send the contract, or anything open in a person note) and ambient client-area context were first-class to-dos: a checkbox to tick, a count against your load, a row in the same list as your own work. That quietly made you the project manager of other people's commitments, maintaining upkeep for things that were never yours to do. Now Waiting on and Threads are passive reference — read-only bullets you scan to see who owes you what, with no checkbox and no count. Your task counts finally read as what's on you: a project's Open tasks count is yours alone, with a quiet "Waiting on" list beneath it, and inside a note someone else's - [ ] shows as a plain bullet instead of a checkbox. Nothing in the vault changes — the split is derived from how each task is written, so you keep writing them exactly as before.
  • The Add dialog's type selector, regrouped. Eight kinds had become an undifferentiated row. They now sit in one quiet card split into two labelled halves — Capture (Meeting, Task, Journal, Source: things that happened) and Create (Project, Decision, Person, Area: structure you stand up) — each kind with a small icon. Nothing hidden, nothing reordered; arrow keys still walk all eight.
  • Attaching a transcript now accepts .vtt files, and the button says "Attach a transcript or text file" instead of pretending only .md works. /meeting and /source strip WebVTT timestamps by content, not filename.
  • Removed the Roadmap category from the Field Guide. With everything shipped it was a build tracker with nothing left to track; the guide is now Concepts, Your schema, and Using it.

Fixed

  • The Field Guide's quick-fix for a decision's status wrote a literal decisionStatus: frontmatter key instead of status:. It writes the real key now.

0.17.0

2026-07-23

Added

  • The learning layer: topics and sources. Capture what you're learning — and what you've already written — as part of the vault. A source is one distilled note per podcast episode, book, article, video, talk, or course, at sources/; a topic is a living synthesis of a subject at topics/, rewritten to absorb each new source rather than kept as a log. A source names its topics in frontmatter (many-to-many — one episode can feed several subjects), which draws dashed about edges in the graph; topics cluster on a hub anchored to Me, like Journal. Your own published work is a source too, marked author: self, so feeding in your articles and book builds a library of your positions the vault can draw on.
  • The /source command. Paste a transcript, an article, or your notes — Add ▸ Source in the app, or /source in a terminal — and it distills the material (key ideas in its own words, quotes verbatim-only), files it under existing topics before inventing new ones, and updates each topic's synthesis. The same date, no-invention, and update-the-profile rules as /meeting.
  • A Topics view (View ▸ Topics): each topic with the sources that fed it — editable kind pill, publish date, a link out when the source has a URL, a "yours" badge on your own work — plus an Unfiled section for sources whose topics don't resolve. The vault check flags a source with no topics, a topic slug that doesn't exist, and an unknown kind.
  • Topic and source rows in the ontology, managed templates for both folders, and a coaching rule in new vaults' CLAUDE.md: when advising on a decision or project, consult topics/ and cite the position it drew on.

Changed

  • Waiting on and Threads stopped being tasks. Only your own items are tasks now — the ones you actually act on. Before, an item owned by someone else (a task with a name in front, like Jane — send the contract, or anything open in a person note) and ambient client-area context were first-class to-dos: a checkbox to tick, a count against your load, a row in the same list as your own work. That quietly made you the project manager of other people's commitments, maintaining upkeep for things that were never yours to do. Now Waiting on and Threads are passive reference — read-only bullets you scan to see who owes you what, with no checkbox and no count. Your task counts finally read as what's on you: a project's Open tasks count is yours alone, with a quiet "Waiting on" list beneath it, and inside a note someone else's - [ ] shows as a plain bullet instead of a checkbox. Nothing in the vault changes — the split is derived from how each task is written, so you keep writing them exactly as before.
  • The Add dialog's type selector, regrouped. Eight kinds had become an undifferentiated row. They now sit in one quiet card split into two labelled halves — Capture (Meeting, Task, Journal, Source: things that happened) and Create (Project, Decision, Person, Area: structure you stand up) — each kind with a small icon. Nothing hidden, nothing reordered; arrow keys still walk all eight.
  • Attaching a transcript now accepts .vtt files, and the button says "Attach a transcript or text file" instead of pretending only .md works. /meeting and /source strip WebVTT timestamps by content, not filename.
  • Removed the Roadmap category from the Field Guide. With everything shipped it was a build tracker with nothing left to track; the guide is now Concepts, Your schema, and Using it.

Fixed

  • The Field Guide's quick-fix for a decision's status wrote a literal decisionStatus: frontmatter key instead of status:. It writes the real key now.

0.15.0

2026-07-12

Added

  • Practical how-to docs in the Field Guide. The "Using it" category now opens with short documentation sections for what you actually do — Capturing (Add / ⌘N, the kinds, pasting a transcript), The inbox (raw captures and Triage), Getting around (the five views, the rail filters, ⇧⌘J and /), Writing a note (⌘E, @-mentions, the slash menu, tables), and Tasks — ahead of the existing graph, inference, and decisions sections.
  • "Your plans, formalized" in the Field Guide. A new Concepts section that frames the aim: sketch how anything gets done — an actor, its steps, the things they touch, the result — and it maps almost one-to-one onto PROV-O (Agent / Activity / Entity / Outcome). Every edge is a plain fact you can assert except the causal one; that leadsTo stays proposed until you confirm it. Illustrated with a clean PROV-O diagram in the same drawn-not-described style as the loop.

Changed

  • Dropped the "Unicron Field Guide" eyebrow from the top of the help — the page title carries it.
  • A loop diagram in the Field Guide. The neuro-symbolic loop — Neuro → Symbolic → You verify → Confirmed, and back — is now drawn as a clean diagram in the "Keeping it honest" section instead of living only in prose: hairline rings, numbered stages, uppercase labels, monospace data tags, and directed arcs. Colour encodes the stage; everything else is ink and hairline. Theme-aware.

0.14.0

2026-07-11

Added

  • Decisions. Record a decision — ⌘N ▸ Decision — as a note under its area, with its steps as tasks, who decided it, and the outcome it leads to. A new Decisions view (View ▸ Decisions) groups them by area and shows each one's steps and outcome. The honesty part: a decision's *leads-to* outcome is a claim, so it draws dotted in the graph until you confirm it in the view, when it becomes dashed — the app never asserts on its own that one thing caused another. Adds decision and outcome note types and the decidedBy / leadsTo predicates to the ontology, so the graph, the Field Guide, and the vault check all understand them.
  • A Decisions bucket in the graph. Decisions now cluster under a collapsible Decisions bucket on their area — like Projects and Meetings — so a busy area doesn't spray decision nodes. It shows in the collapsed graph view; turn the Decisions filter on to see them branch directly instead.
  • Record an outcome from a decision. A Record outcome button — on each decision in the Decisions view, and in the decision note's header — creates the outcome note and wires the decision's leadsTo to it in one move, so you never hand-author the file or the slug. The dialog takes a title and an optional one-line "how it turned out." A decision that already names a missing outcome gets a Create it button that fills that exact slug. The new link lands as a proposal (dotted) and drops straight into the existing Confirm flow. It's a plain file write, not a Claude run, so it's instant — but it isn't undoable; delete the outcome from its ⋮ menu to back out.
  • Send feedback from the Field Guide. A link pinned below the sidebar categories opens the contact page, so it's always a click away while you're in the help view.
  • Last-modified time on every note. load_vault now returns each file's mtime and it rides along on the Note as modified. The date in the note header is a toggle: it shows the authored timestamp (Created) by default, and clicking swaps to the last edit (Modified) — valid time vs. transaction time, the two clocks a knowledge graph wants to keep. Free to switch, since both load up front.
  • Decision lifecycle at a glance in the rail. A decision row in the list now carries a small status dot at its right edge — open (blue), made (green), revisited (amber) — plus a check once the loop is closed (an outcome recorded and confirmed). The left type dot is untouched, so you still read "decision" and its state in one look. Only decisions get this; other types are unchanged.
  • Move a decision through its lifecycle. A decision's status (open → made → revisited) is now an editable picker, not a read-only chip — in the note header (the same control projects have for active/parked/done) and in the Decisions view, where it's a quiet outline pill so a column of them stays calm. No more hand-editing YAML to settle a decision. The options come straight from DECISION_STATUS, so the picker can't drift from what the vault check accepts.
  • Durable updated: stamp. Every in-app save now writes an updated: date into the note's frontmatter — a portable transaction time that travels with the file, unlike the mtime (which a move or a Dropbox re-sync can reset). The header's "Modified" reads this stamp, and falls back to the mtime when it's newer, so edits made outside Unicron still register. Raw captures with no frontmatter are left untouched.

Changed

  • Field Guide refresh. Named the vault as a knowledge graph in "What Unicron is," and explained why the types and schema are what make it one. Rewrote "Using Decisions" for the full shipped loop (status lifecycle, Record outcome, Confirm, the rail indicators) and marked it and the decision roadmap entry Shipped. Spelled out T-Box (terminological) and A-Box (assertional). Ran a light voice pass over the concept sections to vary the rhythm and cut the AI tics, and fixed the "two graphs" section, which still called decisions the next module. Shipped sections no longer show a status badge or TOC dot — the badge is reserved for what's still Building or Planned, so the guide flags only the unfinished. And swapped a real client name out of the fix example for a generic one.
  • Redesigned the note header controls into one pill system. The metadata row under the title is now a single height with two families: neutral floating pills for controls (the area picker, which combines the label and value into one pill where the name jumps and the chevron edits; and Record outcome), and outline badges for the type and status, which carry their colour in the ring and text on a plain fill instead of a colour block. The status control (active/parked/done) floats like the other pills. Bigger text, more separation, and documented in DESIGN.md so it stays consistent. The date, file path, and tags moved out of the header into a "Metadata" strip at the foot of the note — each led by its own icon (calendar, file, tag), just above Linked mentions. The date is still a click-to-toggle between created and last modified.
  • Every area-scoped note shows its area under the title. Decisions and outcomes now show Area: <link> in the header the way projects and meetings already did, so the area a note belongs to always lives in one consistent place. Capture no longer restates the area as a link in the note body — it's redundant with the frontmatter and the header. Also fixed the area picker's change control, which was rendering the native grey button box instead of a clean chevron.
  • Clearer type colors in the graph. Retuned the node palette so neighbors stop reading as the same color: projects are now yellow (were green, too close to areas), journals a light pink (were red, too close to outcomes), people a lighter blue, and prep grape (was cyan, too close to areas and people).
  • The Field Guide is grouped into categories. It reads as a few short pages — Concepts, Your schema, Using it, Roadmap — one at a time, instead of one long scroll, so it's easier to scan and find. Pick a category in the sidebar and it shows just that category's sections. Includes a plain-language "Using Decisions" how-to.

0.13.0

2026-07-11

Fixed

  • A project's people now show under its area. An area's People list was built from the area note and its meetings only, so someone linked from a project — but not from a meeting or the area note — was missing from the area. A project belongs to one area, so its people now roll up to that area, matching the graph and the archive check, which already treated them as the area's people.

Added

  • @-mention linking in the editor. In edit mode, type @ and a name to drop in a markdown link to a person — the path is computed for you, so no more typing ../../people/… by hand. It's a second completion source beside the / slash menu and only fires at a word boundary, so an email address won't open it. It inserts plain markdown, so the link works everywhere the app already reads links (the graph, backlinks, an area's People list). People for now; other note types later.

0.12.0

2026-07-11

Added

  • ontology.md ships in the starter vault. A plain-markdown schema note — the vault describing its own shape: the note types, the typed relationships between them (a project *belongs to* an area, a meeting *involves* a person), and a set of advisory rules. It's the first written form of a structure the app had only ever kept in code. Advisory, never enforced, and yours to edit. New vaults are seeded with it, and existing vaults get it added on their next load — the app manages it like a starter-kit file, so a copy you haven't touched stays current while one you've edited is left alone.
  • The graph shows its own reasoning. Edges now read as two kinds. A solid line is a link you wrote in a note. A dashed line is one the app worked out on its own — a project belonging to its area, a meeting to its project — from frontmatter and folder layout, without anyone writing the link. A new Edges toggle in the graph toolbar flips between the two: *Written* shows only what you typed by hand, *All* adds back everything Unicron inferred. It's the structural spine of the vault, finally visible without expanding anything. And which relationships it infers is declared in ontology.md — remove a predicate there and those dashed edges stop drawing, so the graph and the Field Guide read the same schema and can't drift apart.
  • Edges show where they came from. Hover any edge in the graph for its origin — a link you wrote (written link), or the predicate that inferred it (belongsTo · inferred). Under the hood each edge now carries its provenance (authored / inferred / proposed) and a confidence — the groundwork the decision module builds on.
  • A Field Guide, inside the app. Help ▸ Unicron Field Guide opens a living explanation of what the vault is, how its graph reasons, and where it's headed — with a status badge on every capability, so it's honest about what's shipped, what's being built, and what's still just planned. Its note-type legend, predicates table, and rules are read live from the vault's own ontology.md, so it shows your actual schema, not a description of it — edit the ontology and the guide follows. It doubles as onboarding and as a roadmap, and the prose is data in a single file, so the guide grows a section at a time as the app does.
  • The Field Guide checks your vault against its schema. A "How your vault checks out" section measures every note against the ontology's rules and flags what's drifted — a project: or area: slug pointing at a note that doesn't exist (red), or a project with no area, an unfamiliar kind or status (amber). Advisory only, like /triage: it never blocks or edits. It stays in step with the graph, too — remove a predicate from ontology.md and both stop drawing and checking it.
  • Edit frontmatter in the app, and fix schema issues in place. A project's preview header now has a status control — click the pill for active / parked / done — and its area, still linked so you can jump to it but editable from the same spot; meetings show their area too. The same picker powers the vault check: every flagged issue carries a quick-fix, so you pick a valid area, status, kind, or project right on the issue and it writes the frontmatter and re-checks — no leaving the app (or click the issue to open the note). When a bad value near-matches a real one (Acme Analytics → acme), that option is marked *suggested*.
  • Archiving an area asks about its people. People aren't tied to one area, so archiving an area never hides or archives them on its own. But if someone belonged *only* to that area — every area that links them is now archived — the archive dialog lists them and lets you archive them along with it in one click, or keep them. Shared people (linked to any active area) and people tied to no area are never listed. One Undo restores the area and everyone archived with it.

Changed

  • Vault guidance stops telling you to hand-link containment. New vaults' CLAUDE.md now explains that the app infers a note's area and project from frontmatter and folders, so written links are reserved for cross-cutting connections rather than wiring the graph by hand. The Field Guide gains a plain-language "You don't have to wire the graph" section saying the same, and marks the ontology's first phase shipped.
  • New project notes don't repeat their area and status in the body. The preview header shows both from frontmatter now, so the project template dropped its *Area:* / *Status:* lines — no more line that drifts out of sync with the real value (the way the header can't).
  • Graph layouts are down to Force and Tree. Cluster and Radial are gone. They arranged nodes by shape rather than by relationship, which hid the very connections the graph is for. Force (physics) and Tree (hierarchy) are the two that actually carry meaning; a saved Cluster or Radial preference now falls back to Force.

Fixed

  • The Archive panel fits its list. It was borrowing the capture window's fixed height, so a short list of archived items left a big empty space below. It now sizes to its content.

0.11.0

2026-07-09

Added

  • Tables read the same in edit and preview. Cells now render their inline markdown while you're not editing them, so a link shows as its text instead of the raw URL — which is what was blowing out column widths in edit mode. Click into a cell and the raw markdown comes back for editing; click out and it renders again. Bold, italic, code, and strikethrough render too, and the grid's type and spacing now match the reading view, so columns land where preview puts them.
  • Resizable table columns. Drag a column's edge to set its width; double-click the edge to go back to natural sizing. Widths are saved in the note itself, as a small HTML comment under the table that never renders anywhere, and apply identically in edit and preview. A table pinned wider than the reading column scales down proportionally instead of overflowing the page.
  • Table columns are first-class now too. The same grip as rows, at the top of the hovered column: click to select, then insert left or right, cut, copy, paste, or delete from the floating toolbar or the keyboard (⌘X / ⌘C / ⌘V, ⌫, ←/→ to move the selection, Esc to clear). Drag the grip to reorder. Column copy is one cell per line, header first, so a column pastes into a spreadsheet as a column and back. Alignment and any pinned width travel with their column through every insert, delete, paste, and move.

Changed

  • Deleting a table column is now select-then-delete too, matching rows — the hover × is gone; delete lives in the column toolbar with everything else.

Fixed

  • Tables no longer flash their own scrollbars while the page scrolls in edit mode.

0.10.0

2026-07-08

Added

  • Favorites. Star any note — an area, a project, a person, a meeting — from the top of its ⋮ menu. A star tab appears in the top bar next to your profile icon once you have favorites (and hides when you don't); it lists them grouped by type, click to open or hit the star to remove. Stars are saved as starred: true in the note's frontmatter, so favorites live in the vault itself and sync with it. Undo works, same as archive.
  • Linked mentions (backlinks). Below every note's body, a collapsible section lists the notes that link to it — each with the actual line that mentions it, cleaned up and clickable. Computed live from the links already in your notes; nothing is written to your files. The vault convention has always asked for links to run both ways, and now you can see the reverse direction without opening the graph.
  • Jump to a note (⇧⌘J). A quick switcher — View ▸ Jump to Note… — that fuzzy-filters your notes by title and opens the pick: areas, projects, people, meetings, anything loaded. With nothing typed it lists your recently visited notes, so ⇧⌘J-Return bounces back to where you just were. It's jump-to-note, not full-text search; / in the Library still does that.
  • Clear out-of-quota errors. When a run dies because you've hit your Claude subscription limit, the app now says so. The CLI's own message ("You've hit your session limit · resets 3:45pm") shows in place in Ask, capture, triage, and the daily brief, plus a bottom toast that outlives a dismissed dialog. Other Claude failures surface their real error message too, instead of just an exit code.
  • Table rows are now first-class. Hover a row and a grip handle (⋮⋮) shows in the left gutter. Click it to select the row, then use the floating toolbar or the keyboard: insert a row above or below, cut (⌘X), copy (⌘C), paste below (⌘V), delete (⌫), move the selection with ↑/↓, Esc to clear. Drag the grip to reorder rows. Copy keeps the row in an in-app buffer and also writes a tab-separated line to the system clipboard, so a row pastes cleanly into Numbers or Sheets. Pasting multi-cell text into a cell — a copied row, or cells from a spreadsheet — spreads it across the row starting at that cell instead of dumping everything into one.

Changed

  • Ask moved to ⌘' (was ⇧⌘A), and the Graph menu item now shows its ⌘; shortcut. Today stays on ⌘J.
  • Deleting a table row is now select-then-delete (grip, then ⌫ or the Delete button) instead of the hover ×. Columns keep their one-click × for now.

Fixed

  • Tables deep in a long note could render as raw pipe syntax instead of a grid. Long documents parse lazily, and the table renderer only rebuilt on edits, so tables past the initially-parsed region never got picked up. It now rebuilds as the parser advances.

0.9.1

2026-07-07

Fixed

  • Onboarding could get stuck on "Install Claude Code" even when it was installed. The app looked for the claude CLI through a bash login shell, but macOS defaults to zsh and the installer adds ~/.local/bin to ~/.zshrc — which bash never reads — so a claude that works in Terminal was invisible to the app, with no way past the screen. The app now resolves claude by checking known install locations and your real login shell, and uses that path everywhere it runs claude. If it still can't find it, the install step has a "locate it manually" escape hatch to point the app at the binary.

0.9.0

2026-07-06

Added

  • Model picker. Pick the model the brain runs on — Default, Fable, Opus, Sonnet, or Haiku — from Settings ▸ Assistant. The Ask chat, slash-command runs (triage, capture), and the scheduled daily brief all honor it. Each named option tracks the latest version of that model; Default follows your own claude CLI default, so it depends on your setup. Opus runs at its 1M-token context. The choice is saved per machine.
  • Settings dialog. A tabbed Settings window (App menu ▸ Settings…, ⌘,) gathers Appearance (theme, width, text size), Assistant (the model), and read-only Vault info (name, path, Reveal in Finder). It replaces the top-bar overflow menu, which had grown into a catch-all.

Changed

  • Top bar trimmed to Add plus an Inbox badge that shows only when the inbox has items. Refresh from Disk moved into the File menu under Open Recent, next to the vault actions.

0.8.0

2026-07-02

Added

  • A visual markdown editor. Editing a note opens an in-page editor that styles the markdown live as you type — headings size up, bold and italic render inline, and the #/* markers fade off the line you're not editing. It carries a formatting toolbar (headings, lists, bold, italic, link, table), Obsidian-style tables you edit as a grid, and a / menu for inserting blocks. Edits autosave; ⌘S or the ✓ button saves and returns to preview, Esc just exits. Frontmatter stays out of the way while editing — the body's own H1 is the title, and editing it syncs back. Built on CodeMirror 6, ported from Unigraph.
  • Skill sync (copy-if-unmodified). Vaults now pick up starter-kit skill updates on open instead of staying frozen at whatever version created them. A build-time manifest (resources/skill-manifest.json, generated by build.rs) records the hash of every version of every managed file ever shipped; on vault load, a file matching any shipped hash was never user-edited and silently updates (with a one-generation backup in .claude/.kit-backup/), new skills get copied in, and customized files are never touched — they're listed in .claude/kit-state.json for a future review UI. Managed: .claude/commands/*.md and the note templates. Deliberately not managed: CLAUDE.md, README.md, me/profile.md. Plan and rationale in docs/SKILL-SYNC-PLAN.md.
  • Project creation links both ways. The Add ▸ Project prompt now also adds the new project to the ## Projects list on its area note, so the area page and the graph stay complete without a manual fix-up.

0.7.0

2026-07-01

Added

  • Find in page (⌘F). It highlights matches in whatever you're reading — a note, the Daily Brief, an area or project — and ⌘G / ⇧⌘G step through them. It lives in the Edit menu, and it paints matches with the browser's native highlight so they survive re-renders instead of fighting the markdown. ⌘G is no longer bound to Graph (that's ⌘; now), since ⌘G is conventionally Find Next.
  • Dismiss a Top 3 item. A "not needed" action on a brief priority marks it won't-do, so it drops off today's brief and doesn't come back on the next rebuild.
  • Won't-do tasks read as won't-do in a note preview. A - [-] item now renders as a struck line with an x-square icon instead of the raw [-] text — GFM doesn't treat [-] as a checkbox, so the app fills that in.

Changed

  • The Daily Brief's Top 3 are real tasks now. When a priority isn't already tied to an open checkbox, /focus writes one into the note it cited and links to it — with a hard dedup rule so it reuses an existing task instead of piling up duplicates, and skips anything already done or won't-do. Every Top 3 row ends up checkable, deferrable, and dismissable.
  • One task menu everywhere. Defer and won't-do moved into a single ⋮ overflow menu pinned to the end of the row — in the Tasks list and the Today brief both — faint until you hover or focus the row, so every place that shows tasks reads the same.
  • The Keyboard Shortcuts dialog is balanced into two packed columns. A tall group like Navigation no longer leaves a gap beside a short one, and the find shortcuts get their own "Search & find" group.

0.6.0

2026-06-30

Added

  • Ask, a read-only chat with Claude about your vault. A new destination (⇧⌘A) for asking questions and getting answers pulled straight from your notes, without opening a terminal. Each turn runs Claude Code in plan mode, so it can read the vault but never edits anything, and the conversation carries context from one turn to the next. Your question pins to the top of the view as the answer streams in below. Starter-question pills seed it (with a Shuffle for more), and answers link back to the areas, projects, and people they drew from. For anything that would write, Ask points you to the terminal.
  • The Inbox opens even when it's empty (renamed from "Triage inbox"). An empty inbox now shows a blank slate that explains what the inbox is, how captures land there (⌘N, the Raycast script, or the Apple Shortcut, all into raw/inbox), and what triage does with them.

Changed

  • Controls share a raised look. Buttons, pills, dropdown triggers, the segmented capsules, menus, and the graph legend now use one surface style: a near-white fill, a white rim, and a soft drop shadow. They read as one family instead of flat gray outlines, and neutral controls fill with a light gray on hover instead of shifting their border color.
  • The Keyboard Shortcuts dialog got a pass. It has a close button now, the entries that were missing (Ask, Open Vault, New Vault) are filled in, and General moved to the top in its own two-column section with a divider under it.
  • Smaller touches: the Ask send button is an arrow, and the Today and Tasks header controls have a little more breathing room.

0.5.0

2026-06-30

Added

  • Archive an area, project, or person. Archiving drops it out of the Library, Graph, Tasks, and the Today brief, and any tasks under an archived area or project go with it. It's a single archived: true frontmatter flag, and the cascade is worked out at read time — so archiving only writes the one note you act on, and unarchiving brings everything back at once with no half-written child files. An Archive browser sits in the Library rail next to Triage inbox, where you can review and restore (or delete) what you've archived.
  • Delete a note. The note header's new actions menu, and each row in the Archive browser, can delete a note. It's a single-file remove, so deleting an area leaves its projects and meetings in place. Archive, unarchive, and delete all run through the same undo snackbar (and ⌘Z); a delete is undone by recreating the file.

Changed

  • The note header has a ⋮ actions menu. It lives in the same pill as the Preview/Edit toggle, set off by a divider, and holds Archive/Unarchive and Delete. Archive and Delete confirm first; unarchive is a one-click restore.
  • Dotted dividers between rows. The Today brief (Top 3 and tables), the Tasks list, and the tables in note, area, and project previews now use dotted rules between rows — solid rules are reserved for the breaks between sections.
  • Rounder buttons. The action buttons across the app are pill-shaped, and the top-bar icon buttons (history, add, ⋮) get a circular hover instead of a rounded rectangle.

0.4.0

2026-06-30

Added

  • Check off a task from the Daily Brief. When a Top 3 priority maps to a single open task, it shows a checkbox — marking it done runs through the same undoable path as the Tasks view, and the item drops off the brief. The displayed priority stays fully synthesized; /focus carries the verbatim task text in {{ }} so the app can match the source line without flattening the wording.
  • Defer a task for later. A row's overflow menu (and the brief) push a task to Tomorrow, Next week, or Next month. Deferred tasks leave their bucket for a new Later group, sorted by when they return, with Resume and Reschedule. /focus skips deferred tasks until their date.
  • Filter Tasks by area or project. A dropdown on the Tasks heading narrows the list to any area or project that has open tasks; the buckets and sort still work inside it. The Daily Brief's task-count pill opens the same scoped view.

Changed

  • The app opens to Today instead of Library.
  • Task row actions live in one hover menu. A vertical ellipsis holds Do later, Won't do, and Resume — replacing the standalone won't-do and resume icons.
  • The Today Top 3 reads as a list, not a numbered table: a dot marks a focus area, a checkbox marks a completable task.
  • The Tasks bucket buttonbar is centered, and Select is now an icon.
  • The brief refreshes on its own when Today.md changes underneath it — a scheduled or external rebuild shows up without a tab switch.
  • Tables in note, area, and project previews are styled — left-aligned columns, hairline rules between rows, and a top and bottom border.

Fixed

  • /focus writes the brief to Today.md at the vault root instead of a hardcoded path, so it lands in whatever vault is active.

0.3.0

2026-06-26

Added

  • Attach a file to a new meeting. In Add ▸ Meeting you can attach a .md instead of pasting — an Attach a .md file button (the picker opens in Downloads) or drag the file onto the dialog. Its text fills the body and the filename fills the title, then the usual /meeting flow runs. New read_external_file Rust command reads a path outside the vault.
  • Preview / Edit toggle on notes. The note header's Edit button is now a segmented Preview (eye) / Edit (pen) toggle. Save and Cancel moved to the bottom-right of the editor.
  • Shortcut hints on ⌘. Hold ⌘ while editing a note or in a save dialog to reveal the binding next to the button — Cancel (esc), Save (⌘+S).
  • ⌘S now also submits a dialog, alongside ⌘Return.
  • ⌘; is a second binding for the Graph view (with ⌘G).
  • The journal entry form now spells out what each line marker does — → for a reflection, !! for something you're avoiding.

Changed

  • Tab order is now Profile, Today, Tasks, Library, Graph — matched across the top nav, the View menu, and the Keyboard Shortcuts sheet.
  • Keyboard Shortcuts moved from ⇧⌘/ to ⇧⌘K — macOS wouldn't render the slash accelerator in the View menu.

Fixed

  • Removed the blue focus bar on selected task rows; the keyboard cursor now reads as a subtle row tint.

0.2.1

2026-06-25

Added

  • Prep bucket in the Graph. Prep notes cluster under a per-area Prep hub (expand an area to see it), alongside Projects / Meetings / People, instead of hanging off the area directly.

Changed

  • /prep now sets area: on prep notes and files them in the area's meetings/ folder, which is what connects them to their area in the graph and area views.

Fixed

  • Two existing prep notes weren't associated with their area (one missing area:, one with a mis-cased value) — now bucketed correctly.

0.2.0

2026-06-25

Added

  • Capture inbox. Quick captures land in raw/inbox/ — from an Apple Shortcut, a Raycast script, or the in-app Add button. The /triage command files them into the structured vault. In the app, a Triage inbox button (Library rail footer with a count badge, plus the overflow menu) runs triage with a review step: see what's waiting, delete junk, and clear the processed archive.
  • Batch task marking. A Select mode in the Tasks view marks many tasks done or won't-do at once, with a single Undo restoring the whole batch.
  • Full keyboard navigation. The Library (filter chips + list), the drilled Area/Project views, and the Tasks view are keyboard-navigable — j/k/arrows with live selection, Tab to switch panels, Enter to drill, ← to back out. Tasks adds ⌘D / ⇧⌘D to mark and ⌘Z to undo.
  • Keyboard Shortcuts dialog — View ▸ Keyboard Shortcuts (⇧⌘/).
  • ⌘Return submits a dialog's primary action (Save in Add, Triage in the review step). The Add dialog's Type buttonbar is a roving tablist (arrow keys).
  • Projects. Areas hold projects — efforts inside an area that group their own meetings, tasks, and durable thinking, with a project detail view.
  • Source links in the Daily Brief and Tasks, so each line points back to its note.

Changed

  • View shortcuts remapped: Today ⌘J, Tasks ⌘K, Profile ⌘U (Library ⌘L, Graph ⌘G). Search is now just /.
  • Brighter graph edges and a visible "Me" node in dark mode.

Removed

  • The legacy /graph slash command and graph.py — the app's native Graph view replaces the standalone Graph.html export.
  • The loose "Notes" type — durable thinking now belongs to a project or an area note.

Fixed

  • Manual meeting capture, and unified the segmented controls.
  • /meeting now spells out exact relative link paths, so attendee/area links in nested meeting notes don't break.
Unicron
Guide Changelog Terms Privacy llms.txt

© Konigi · Built by Michael Angeles