Ogulcan Celik
a202425340
refactor popup controls to use ratatui tabs and lists
2026-03-29 22:55:41 +03:00
Ogulcan Celik
9badd642b7
fix popup rendering and settings theme flow
2026-03-29 22:48:02 +03:00
Ogulcan Celik
101de0ce45
refactor: two-section sidebar with agent detail panel, theme system with 9 built-in themes
...
sidebar layout:
- top section: workspace list with accent bar, git branch, state dots
- bottom section: agent detail panel sorted by urgency with braille spinners
- active workspace always highlighted (subtle bg in terminal mode, brighter in nav)
- palette-driven colors throughout (no hardcoded colors in ui.rs)
theme system:
- 9 built-in themes: catppuccin (default), tokyo-night, dracula, nord, gruvbox, one-dark, solarized, kanagawa, rose-pine
- config: theme.name selects base, theme.custom overrides individual tokens
- 15 color tokens: accent, surface0/1, overlay0/1, text, subtext0, mauve, green, yellow, red, blue, teal, peach
- legacy ui.accent still works for backward compatibility
infrastructure:
- Palette struct on AppState, ready for future theme system extensions
- git_branch() reads .git/HEAD for branch detection
- PaneDetail struct with urgency sorting for agent panel
- spinner_tick counter for braille animation (~8fps on 60fps render loop)
2026-03-29 20:44:34 +03:00
Ogulcan Celik
bf6b6d779a
feat(api): use compact public workspace and pane ids
2026-03-29 19:54:52 +03:00
Ogulcan Celik
a5847a8039
feat(cli): add workspace and pane management commands
2026-03-29 19:29:23 +03:00
Ogulcan Celik
8b7848aac3
feat(api): add socket subscriptions and lifecycle events
2026-03-29 17:20:53 +03:00
Ogulcan Celik
fd1e3b8b05
feat: add initial socket api for workspace and pane control
...
add unix socket request/response api scaffolding
implement initial workspace and pane commands:
- ping
- workspace.list
- workspace.get
- workspace.create
- pane.list
- pane.get
- pane.read
- pane.send_text
- pane.send_keys
- pane.wait_for_output
improve pane read semantics:
- visible trims trailing blank viewport rows
- recent reads from parser scrollback/current screen
- wait_for_output returns matched snapshot plus matched_line
add real subprocess integration tests for socket api
2026-03-29 04:23:22 +03:00
Ogulcan Celik
60baa765d9
feat: block nested herdr instances by default
2026-03-28 22:17:14 +03:00
Ogulcan Celik
9c8eadc492
docs: fix agent detection table - mark pi and amp as partial for needs-attention detection
2026-03-28 21:37:50 +03:00
Ogulcan Celik
c71af5fec6
release: v0.1.2
v0.1.2
2026-03-28 21:29:54 +03:00
Ogulcan Celik
287ccc33d8
docs: update changelog for unreleased changes
2026-03-28 21:29:13 +03:00
Ogulcan Celik
70b539f79a
docs: refresh readme for onboarding and notifications
2026-03-28 21:26:14 +03:00
Ogulcan Celik
fa1adf1a26
feat: add onboarding and toast notification preferences
2026-03-28 21:13:41 +03:00
Ogulcan Celik
d05ba2ea9f
feat: restore workspace numbers in expanded sidebar
2026-03-28 16:38:04 +03:00
Ogulcan Celik
42e9aec481
refine sidebar workspace badges and agent summaries
...
- make workspace rows use a more consistent marker/name/state order
- simplify multi-pane state presentation in the sidebar
- switch agent summaries from plus-separated to comma-separated wording
2026-03-28 15:55:32 +03:00
Ogulcan Celik
ebd8007558
add config diagnostics and split configuration docs
2026-03-28 15:44:31 +03:00
Ogulcan Celik
7380e0ed16
refactor workspace identity and configurable navigate actions
2026-03-28 15:28:13 +03:00
Ogulcan Celik
f18f26d1c0
fix prefix key defaults and binding parsing
2026-03-28 04:29:37 +03:00
Ogulcan Celik
6a4315c4ee
fix: use annotated release tags
2026-03-28 02:03:34 +03:00
Ogulcan Celik
a100c9d014
release: v0.1.1
v0.1.1
2026-03-28 02:00:11 +03:00
Ogulcan Celik
17e5dc6ee9
feat: automate changelog-backed releases
2026-03-28 01:59:52 +03:00
Ogulcan Celik
c0fe95235f
fix: stabilize claude state detection
2026-03-28 01:18:03 +03:00
Ogulcan Celik
e719c6517d
fix sound request alerts in active workspace
2026-03-28 01:02:10 +03:00
Ogulcan Celik
380778a928
docs: clarify test workflow
2026-03-28 00:42:14 +03:00
Ogulcan Celik
042938772f
chore: add check task
2026-03-28 00:35:05 +03:00
Ogulcan Celik
f8c4d6a5f1
feat: add per-agent sound overrides
2026-03-28 00:32:35 +03:00
Ogulcan Celik
787786c620
fix wrapped foreground job agent detection
2026-03-28 00:20:12 +03:00
Ogulcan Celik
0403775fd2
feat: sound notifications for agent state changes
...
play a chime when an agent finishes work and an alert when one needs
input. only triggers for background workspaces. configurable via
sound = true/false under [ui] in config.
2026-03-27 23:53:37 +03:00
Ogulcan Celik
1d867053fc
fix: move vt100 back to main dependencies (was accidentally under macos-only)
v0.1.0
2026-03-27 22:55:48 +03:00
Ogulcan Celik
4955dd6024
harden release workflow: musl builds, --locked, version check, portable sed
2026-03-27 22:51:25 +03:00
Ogulcan Celik
9aa50f04a9
fix: use KERN_PROCARGS2 for macOS process name resolution
...
proc_name() fails on macOS Sequoia due to undersized buffer
(MAXCOMLEN+1 = 17 bytes). Even with a larger buffer, it returns
the kernel comm name ('node') rather than the effective process
title ('pi') set via Node.js process.title.
Replace with sysctl(KERN_PROCARGS2) which reads argv[0] and
reflects runtime title changes, matching what ps(1) displays.
Falls back to pbi_comm from proc_pidinfo if sysctl fails.
2026-03-27 22:43:29 +03:00
Ogulcan Celik
a57b97285c
initial release
...
terminal workspace manager for AI coding agents.
single rust binary, runs inside your existing terminal.
workspaces, tiled panes, intelligent agent state detection.
https://herdr.dev
2026-03-27 21:37:05 +03:00