Repository navigation
Releases: NahumLitvin/prismantis
Releases · NahumLitvin/prismantis
Release list
v0.18.1
Immutable
release. Only release title and notes can be modified.
Security
- Releases are immutable from 0.18.1 on: a release tag stays on its commit and cannot be moved, deleted or reused, and
gh release verify v0.18.1 -R NahumLitvin/prismantischecks GitHub's signed attestation for it. Earlier releases stay as they were (#101).
v0.18.0
Added
- Figures: code blocks tagged
figuredraw line by line as written, colored by role markup such as{warn:timeout}, for what reads better as a picture than as a diagram (a timeout racing a retry, a screen layout, before and after). Roles take existing theme colors, so themes and color overrides apply:accentthe diagram color,dimthe comment color,strongthe strong color, andwarn,okandnotethe theme's reddest, greenest and most amber accent color, each a different one, so their meaning holds in every preset;warndraws bold in a theme without colors (mono). A figure stays a code block while it streams, when it has more than 80 lines, when a line is wider than the window or than 100 columns, or when a glyph may draw as an emoji or takes two columns, a control character, direction mark or other character that draws no column is in it, or role markup is wrong; a closed figure that stays code says why in one dim line above it, as diagrams do. Frames are not checked: a box that does not close or a side, corner or divider out of its column draws as written. Figures draw withmermaidoff too, with⧉ sourcestill copying the block as written. - The model-only note behind
diagramHintsgains a short part on figures: when position carries meaning (durations racing on a time axis, a screen layout, phases, before and after) prefer a figure over mermaid, and the prose does not retell it; when you ask to explain, compare or plan something and pictures would make it easier to grasp, build the reply around them, with the core on the first screen as a picture or a sentence; then the role markup, at most 74 columns, one-column glyphs, and edge ticks▏for time axes so█bars line up. The main part now also skips a diagram that repeats what a figure shows, and skips diagrams and pictures in short or simple answers.
Changed
- With
diagramHintson (the default), the model-only note is now about 630 tokens per prompt you type or another plugin sends: about 275 for the main part and about 360 for the new figure part, plus about 80 for the LaTeX part while it runs. All three are counted with Claude's tokenizer; 0.16.0 documented 190 and 60 from a rougher count. TurndiagramHintsoff to drop the whole note. - The
diagramHintsnote also goes with prompts another plugin sends ($.prompt.submit, framed orasUser), so replies in a session a plugin drives get the same tables, diagrams and figures as typed prompts. Notifications, scheduled tasks and the prompt a headlessclaude -prun starts with still get none; a plugin's prompt inside such a run gets it. A plugin whose prompts must not carry the note works withdiagramHintsoff.
Fixed
- Tables whose delimiter row uses one dash per cell (
|-|-|), valid GFM, now draw as tables. Before, they drew as one line of text. - Flowchart edges written without spaces around the arrow, such as
A-->B,A-.->BorA-->|yes|B, draw as edges. Before, the first node took in the arrow's dashes and the diagram drew one box labeledA--and no arrows. Node names with a hyphen, such asmy-node, still draw whole.
v0.17.1
Security
- Installs and updates come from the release they name, not whatever is on
main: the marketplace entry pins each release to its tag and commit. A merged change reaches nobody until a release is cut and pinned.
Fixed
- A reply holding a terminal control character, such as a stray escape sequence, draws with prismantis again instead of falling back to Claude Code's own text. Control characters are dropped from what is drawn and never reach the terminal.
v0.17.0
Changed
- Display math that cannot draw as an image (Warp, iTerm2, any terminal without kitty graphics, latex off, or a formula the renderer rejects) now reads as Unicode instead of TeX source:
\frac{T}{R}\left(1 + \ln\frac{R}{T}\right)draws as(T/R)·(1 + ln(R/T)), with sub- and superscripts, Greek,\mathbb/\mathcalletters and common operators. A formula with a command it does not know keeps its TeX block. Inline math uses the same conversion.
v0.16.0
Added
clockshows when you sent each prompt and when each turn finished: the time goes before your prompt and after the duration on the turn's last line (✻ Baked for 1m 55s · 14:32).24hor12h; a time from another day gets its date. WithpromptStyle: offthe time goes in front of Claude Code's own prompt row. A row takes only a time recorded before it was first drawn, so prompts and turns from before a resume get no time, and an old row that redraws never takes a new one. Off by default. New optionclock.
Fixed
- Inline HTML tags in mermaid labels draw as styles, not as literal tags:
<i>/<em>italic,<b>/<strong>bold,<u>underline,<s>/<del>struck. Other inline tags such as<code>and<span>are dropped and their text kept.
v0.15.1
Fixed
- A fenced code block indented under a list item draws as a code block inside that item, with its own copy button, highlighting and fold, and the text after it stays in the item. Before, the fences showed as text in the item, and a blank line inside the block ended the list and turned the rest of the reply into code.
/prismantis copy codefinds these blocks too (#87). - The note above a mermaid block that stays source (
diagram is 244 cols, terminal is 96) drew in near-white body color; it now uses the same gray as the── mermaidlabel under it. - A tool row whose path is the project root prints
.also when a Windows drive root differs in letter case or separators (e:\projects\exampleagainstE:\projects\example); POSIX paths still compare exactly. - The benchmark baseline in
docs/bench-baseline.jsonis refreshed, sobench:checkno longer flags every stage on current hardware.
v0.15.0
Added
- Code blocks of 10 lines or more get dim line numbers, and blocks over 30 lines fold to their first 20 with a
+M more linesbutton that opens the rest and ashow lessbutton that folds it back.⧉ copystill copies the whole block. The last 500 opened blocks are remembered (#16). - Footnotes draw as superscript marks numbered by first reference, with the notes collected under a dim rule at the end of the reply. A reference without a definition stays as written (#18).
- A mermaid block that stays source says why in one dim line above it:
diagram is 188 cols, terminal is 120when the art is wider than the terminal,diagram failed to renderwhen a supported diagram type throws, andpie diagrams draw as source for nowfor types the renderer has no drawing for (pie, gantt, mindmap, timeline, journey, gitGraph). A block still streaming shows no note. Bar and line chart heights are now tested against their values (#33, #63). theme: randompicks one of the dark color presets each time the mod loads (session start or reload) and keeps it until the next load; with random set, each/prismantis randomre-rolls and redraws right away./prismantis themeshows the pick and the command to keep it, and a bare/prismantis <theme>switches like/prismantis theme <theme>(#21).- Edit and Write results draw as a diff card: a rounded box headed
+N −M, added and removed lines on a faint background tint blended from the theme's number and flag colors, line numbers and context dimmed, a zero count dimmed, long lines wrapped right of the line numbers. Diffs over 20 lines fold behind a+K more linesbutton like code blocks, and an opened card stops at 400 lines. A new file shows as all additions. Results it cannot read go to Claude Code's own drawing, andtoolRows: falseturns it off with the other tool rows (#15).
Fixed
- Tool rows on Windows show paths relative to the project (
Wrote notes\scratch.md) instead of the fullE:\…path. The project root and the tool's path both come backslashed there, and the match looked for a/; both sides are now compared with forward slashes, case-insensitively under a drive letter, and~falls back toUSERPROFILEwhenHOMEis unset (#83).
v0.14.0
Added
toolOutput: quietshows what Claude did, not what it read. Reads, searches, listings, web fetches and shell commands made only of read-only programs draw their row and nothing under it, and the row says it in plain words (Read src/report.py lines 1–10,Searched src/ for "TODO"); a shell call without such a form shows its description and the programs it ran. Other shell commands draw their first lines and a count, without the approval line, also inside a collapsed group. Edits keep their diff. A failed call shows the last real line of its error, a refused call (permission rule, auto mode classifier) its full reason. The ids of read-only calls are kept to the last 2000, so a long session does not grow them (#53).
Fixed
- Tool row paths stay relative to the project after
/cdor a worktree move. They followed the directory the session started in, so paths in a moved session fell back to~/….
v0.13.1
Fixed
- Inline
$…$math draws as italic text without its dollar signs, so($\rho = 4.3 / 5$)reads as ρ = 4.3 / 5. Common TeX commands become symbols. Prices like$5 and $10and shell variables like$HOMEstay as written. - Chart y-axis ticks sit the same number of rows apart. A 0 to 2500 axis used to step 2, 3, 2, 3, 2 rows between its labels, because the chart height ignored how many ticks it needed; it now takes the nearest height that divides evenly.
v0.13.0
Added
- Tables offer
⧉ md,⧉ artand⧉ htmlcopy actions.⧉ htmlcopies the table as HTML, with headers, column alignment and inline formatting, together with tab-separated plain text, and verifies both before reporting success.⧉ htmlshows in a local macOS terminal or a Linux graphical session, where it needs CopyQ running; over SSH, on desktop and on other systems tables offer⧉ mdand⧉ art. Without CopyQ, or when the clipboard helper fails, the action copies the plain text alone. - LaTeX math:
$$…$$and```mathformulas draw as typeset images in kitty and Ghostty through RaTeX's renderer, sized to the reply text and padded to whole rows, with a copy button for the LaTeX. Off by default: thelatexoption turns it on, andratex-rendermust be on yourPATH. Without the renderer or in other terminals they stay text in amathcode block. New optionlatex(#43).
Fixed
- Slash command output that carries terminal colors, like
/context, is left to Claude Code's own drawing. It used to be refused for its escape codes, with a dimrefusedline in the transcript. - A flowchart whose long edge label made it too wide for the terminal draws with that label cut short, where it used to fall back to its mermaid source.
⧉ sourcestill copies the full text. - Tool rows show file paths relative to the project, and under the home directory as
~/…, like Claude Code's own rows, instead of the full absolute path. - Mermaid boxes stay closed around Korean, Chinese and Japanese labels. beautiful-mermaid counts each character as one column, so a wide character pushed the right border inward by one column per character. Wide characters are now measured as two columns before layout and drawn in their real width, in flowcharts, sequence diagrams and chart axes alike (#56).
- Only
httpsandhttp://localhostlinks become clickable terminal hyperlinks, which every supported Claude Code accepts. On 2.1.287 amailto:or plainhttp:link made Claude Code throw out the whole reply and draw its own. Other links,javascript:andfile:included, draw as link text. - Earlier replies stay parsed while a long reply streams in, and code and diagrams are not highlighted again on desktop, in fullscreen Apple Terminal or when another mod draws markdown through
$.prismantis.markdown. - The terminal is detected once per session instead of on every prompt, and the list of expanded tool calls no longer grows for the whole session.
- A left-to-right flowchart too wide for the terminal draws top to bottom, where it used to fall back to its mermaid source. A five-node pipeline with two-line labels went from 155 columns to 77.