Skip to content

0.15.0

Choose a tag to compare

@github-actions github-actions released this 07 Sep 20:58
· 24 commits to main since this release

Added

  • A markdown reader in every pane. The new document button in a pane header lists
    the markdown of the project that pane is in — the repo root plus configurable
    folders (docs/, doc/, documenti/, .claude/ by default), newest first
    with CLAUDE.md, AGENTS.md and README.md pinned — and opens the one you
    pick as a rendered document over the pane: headings, tables, highlighted code
    and mermaid diagrams in the app's own palette, with find-in-document
    (Cmd+F), links between documents followed in place, an expand button to take
    over the whole window, and close or Esc back to the CLI. The document is an overlay, not a pane,
    so the pty underneath is never resized and the session in it never redraws.

    The scan is rooted at the project (nearest .git, else the pane's cwd) and
    cannot leave it: symlinks out are skipped, and a read outside the root is
    refused in main whatever the renderer asks for. The folder list is global in
    Settings and overridable per project with docs.globs in .cerberus.json.

Changed

  • The pane header's buttons are drawn icons now, in groups. They were
    Unicode glyphs from half a dozen blocks, each landing at its own weight and
    optical size at 12px — the settings gear was a dot, the document one an
    anonymous block. They're one stroked set on a single grid, a little larger,
    ordered document · favourites · splits · window and separated by hairlines,
    with the close button last.
  • The focused pane is framed on all four sides. The highlight was an inset
    outline, which the terminal canvas painted straight over, leaving the accent
    only above and below the pane.
  • Scrollbars follow the theme. The platform scrollbar was a bright slab
    against the dark panels; every scrolling surface — the document list, the
    document itself, the settings, the terminals — now gets a thin one in the
    app's own tones.

Fixed

  • The installer no longer replaces Cerberus while it's running. Its guard
    used pgrep, which by default excludes its own ancestors — so run from a
    Cerberus pane, the one place an update is most likely to be typed, it never
    saw the app it was looking for and went ahead anyway. It now reads the process
    list directly, and a pane is recognised before that: CERBERUS_PANE_ID says
    outright that the shell belongs to the app being replaced, so the script says
    that rather than a vaguer "it's open".

    The README serves the script from main, so this is live for everyone without
    waiting for a release.

Full changelog: v0.14.0...v0.15.0