Skip to content

Releases: knu/tcrit

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 13:25

Added

  • Review bar — the top line names what is under review and where. The button that opens the finish dialog moves there from the footer as Submit q.
  • Thread navigation buttons — ↑ / ↓ in each comment header move to the previous or next thread like [ / ], and the buttons line up across threads.
  • Light terminal backgrounds — text, the comment editor, and dialog dimming adapt to light backgrounds.

Changed

  • The header and footer are tidied up: the header line shows the path, line position, and comment count, and the footer keeps the key hints and Help, disappearing when the terminal is too short for it.
  • File tabs abbreviate directories to their first letter, bold the active file, and underline files with unresolved comments.
  • Counts use the singular for one.
  • The bundled skill returns from the review wait as soon as TCrit finishes.
  • The demo recordings are redone with a revised scenario.

Fixed

  • Renamed files are diffed against their previous path, so a rename no longer counts every line as added.
  • The last file tab joins the pane border when the tabs fill the width exactly.

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 19:24

Added

  • File tree sidebar — the sidebar now has Files and Comments tabs and opens on Files, a directory tree of the reviewed files with foldable folders. t switches views and focuses the sidebar; clicking a tab does the same. The tree cursor follows the active file tab and vice versa, unfolding folders as needed. Each level indents by one column, and rows too long for the sidebar scroll sideways with → / l, returning with ← / h before those keys fold or climb.
  • Help button — the footer shows a Help ? button next to Approve / Finish Review; clicking it opens the keyboard help.
  • Dialog dismissal — every dialog has a red x at the right edge of its title row, and clicking outside a dialog dismisses it. Both act like esc, so unsaved comment edits still ask before discarding.

Changed

  • r resolves or reopens the focused thread without moving. The new R resolves it, or leaves an already resolved thread as is, and advances to the next unresolved thread as r used to. Clicking ☐ Resolve stays in place.
  • The comment sidebar is a separate pane to the right of the tabbed source pane, with the same height and its own tabs, instead of a divider inside the frame. Hiding comments with H keeps the narrow gutter inside the source pane. The sidebar is at least 26 columns wide.
  • Focused comment boxes, the sidebar, and dialogs keep rounded borders; focus is shown by a brighter border color instead of thick borders.
  • Footer key hints use bold cyan keys on a gray background with normal-colored descriptions, separated by middle dots, so they are readable and distinct from the clickable buttons.

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 05:31

Added

  • One-time terminal markers for Codex reviews in tmux and Herdr. The TCrit skill displays a fresh marker before each review round so TCrit can locate the intended pane, including when Codex uses a shared background server.
  • Optional integration with tfil 0.4.0+ through --tcrit-notify. Notifications let TCrit locate the pane without searching its visible text. Without a filter, TCrit searches registered live panes and rejects missing or ambiguous matches.
  • tcrit terminal prepare, tcrit terminal notify <id>, and --terminal-request <id> for terminal discovery. Requests expire after two minutes and can be consumed only once.

Changed

  • Simplified tcrit codex and the bundled codex wrapper to register the launching terminal and execute Codex with its original arguments, environment, working directory, and exit status.
  • Removed automatic daemon startup and injected --remote, --cd, and shell configuration overrides. Codex now retains its normal daemon, permission, resume, and worktree behavior.

Fixed

  • Keep Herdr review operations on the selected server socket when creating, focusing, and closing review tabs or restoring focus to the source tab.

Upgrading

Update the installed TCrit skills along with the binaries so Codex reviews use the new marker workflow. Restart or resume Codex from the intended tmux or Herdr pane through tcrit codex or the bundled wrapper to register that pane. Keep each review marker visible until TCrit locates it; tfil is optional.

Full changelog: v0.11.1...v0.12.0

v0.11.1

Choose a tag to compare

@github-actions github-actions released this 26 Sep 18:26

Added

  • Codex launch wrappers — tcrit codex and the bundled codex binary preserve tmux and Herdr context through per-thread shell settings. Codex 0.157.0 enabled automatic background-server startup by default, separating shell tools from the terminal process ancestry TCrit used for detection. The wrappers start and connect to the local daemon when supported, pass through older CLIs, and chain with forward-searching PATH wrappers such as tfil.
  • When terminal detection fails, suggest correcting PATH order if another codex precedes TCrit's bundled wrapper, including [tools] ordering for mise.

Fixed

  • Forward terminal context when reconnecting through an explicit --remote unix:// or --remote unix://PATH, including Codex's printed reconnect commands. Preserve the selected socket without starting a daemon. Document that running tasks may retain their previous terminal context until Codex accepts configuration overrides.

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 04:51

Added

  • File path completion in comment editors — typing @ and a path character at the start of a line or after whitespace lists the entries of that directory, one level at a time, below the @ or above it when the screen is short. Candidates match fuzzily; tab accepts the first one, Up/Down with enter accept a chosen one, and esc closes the list. A file completes with a trailing space; a directory completes with / and lists its entries.
  • Fuzzy file selector — alt+p opens a dialog with a search field over the review's file tabs. Space-separated words must all match, and basename matches rank first. Up/Down or ctrl+p / ctrl+n choose, enter switches tabs, and the dialog keeps a fixed size while typing.

Changed

  • File references accept unescaped letters, digits, and combining marks of any script; non-ASCII punctuation still ends a reference. Prose may follow a path directly without a space, as full-width text commonly does in some languages; the longest leading part naming an existing file is linked. Copied and completed paths escape underscores at word boundaries so names such as __init__.py survive Markdown rendering; both spellings are recognized.
  • Added github.com/sahilm/fuzzy as a direct dependency for fuzzy matching.

Removed

  • The / tab search. The key is reserved for a future in-source search.

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 09:16

Added

  • Clipboard images in comments and replies — ctrl+v pastes copied image files or bitmap data on macOS through AppKit, and images on Linux through wl-paste or xclip. When no image is available, it falls back to text. Attachments support PNG, JPEG, GIF, and WebP up to 5 MiB each; Escape cancels a pending paste.
  • Image attachments persist across review rounds and stop/resume. The agent reads images in the final review result before running the printed session cleanup command. The TUI shows Markdown references rather than inline image previews.

Changed

  • Bundled agent skills reduce excessive token use during human review waits by keeping waits inside tools and avoiding repeated reasoning and status polling. They now bound the overall wait to ten minutes, then preserve the running review and recoverable output; hey resumes result collection when the host cannot resume the agent automatically.
  • CI runs formatting checks, vet, and tests on both Linux and macOS, including the AppKit clipboard tests. The required test check succeeds only when both platforms pass.
  • Updated Go to 1.27.1, Go dependencies, and Harden-Runner.

v0.9.5

Choose a tag to compare

@github-actions github-actions released this 23 Sep 15:24

Added

  • File references and source navigation — comments and replies link existing @path/to/file references, with optional L40 line numbers and backslash escapes for paths containing spaces. Click to jump within the review or confirm opening other locations in $EDITOR. alt+g asks for a line number, and alt+e opens the current file at the cursor line. Editor navigation supports both --goto FILE:LINE and +LINE FILE.

Changed

  • Bundled agent skills distinguish recoverable launch failures from interruptions after the TUI opens. They keep waiting for review submission unless the host can automatically resume the agent and preserve the result, and clarify completion notifications and nested wait handling.
  • Check previously unhandled errors in CLI setup, socket cleanup, and tests; simplify test code and clear all lint findings.

Fixed

  • Reply editors omit the reply being edited from the reference thread, so its saved body is not duplicated above the input field. Other replies and their original numbering remain visible.

v0.9.4

Choose a tag to compare

@github-actions github-actions released this 23 Sep 06:51

Changed

  • New review rounds focus the first visible thread, in file and display order, with a reply added by another author since the previous submission. The thread expands and scrolls to its latest new reply, including resolved threads and file comments. Without a new reply, or when resuming an unfinished round, the starting position is unchanged. [ / ] navigation is unchanged.
  • File tabs show both added and deleted line counts, such as (+12 -5), omitting zero counts.
  • Syntax highlighting reuses the lexer, style, and formatter within each file, substantially reducing startup time for diffs with many deleted lines while preserving rendered output.
  • Refactored TUI internals and consolidated overlapping tests without changing their intended behavior.

v0.9.3

Choose a tag to compare

@github-actions github-actions released this 21 Sep 18:55

Added

  • Kill ring — comment and reply editors share up to 60 entries during the current TUI run. Line and word kills (ctrl+k, ctrl+u, ctrl+w, alt+d, and their aliases) save deleted text; consecutive kills combine in text order. ctrl+y yanks the latest entry, and alt+y immediately after a yank or yank-pop cycles through older entries. Other input ends the sequence. The ring is independent of the system clipboard; ordinary Delete/Backspace do not add entries.

Changed

  • File-comment threads appear above the first source or deleted line, directly below the tabs, including for empty, deleted, and binary files. They remain listed in the sidebar; creating a file comment or navigating to one focuses its inline box. Inline reply, resolve, delete, folding, and visibility controls apply to file comments too.

Breaking changes

  • Suggestion insertion moves from ctrl+y to alt+s (M-s). ctrl+y now yanks from the kill ring; the Suggest button remains available.

v0.9.2

Choose a tag to compare

@github-actions github-actions released this 21 Sep 03:44

Changed

  • f replies to an existing file-comment thread, including resolved threads, and creates a new thread only when none exists. Saving a reply reopens a resolved thread.
  • Inline and sidebar thread headers now have clickable Resolve / Resolved toggles and a right-aligned red x deletion button. Deletion remains limited to your comments from the current round with no replies and requires confirmation.
  • Resolution controls stay in place when toggled; collapsed resolved threads omit the author name.
  • Keyboard help uses distinct colors for section headings and key names, with brighter descriptions.
  • Bundled agent skills read saved feedback after a nonzero review exit, then stop work and wait for explicit chat instructions instead of automatically restarting TCrit.

Fixed

  • Keep the right outer frame visible when the comment sidebar is open, with mouse targets aligned to the pane layout.