Ark0N and Codeman maintainer
d81a4a76de
feat(mobile): search box in the Select Case picker ( #488 )
...
The phone case picker had no way to narrow a long case list, so finding
one meant scrolling a sheet that showed about six rows at a time.
- A search field filters rows by name (every typed word must match, any
order, case-insensitive), with a "No matching cases" state. Enter picks
the case when exactly one row is left; Escape clears, then closes.
- The field is not auto-focused, so opening the picker does not raise the
keyboard. The list holds its unfiltered height while searching so the
sheet does not jump, and the input is 16px so iOS Safari does not zoom.
- Layout: the sheet padded the home-indicator inset on top of the footer
already doing so, leaving a dead band under Create New Case; the sheet
now grows to 80dvh and the list fills it instead of a separate 50vh cap.
- Opening scrolls the list (its own box, not scrollIntoView) to the
currently selected case.
Co-authored-by: Codeman maintainer <noreply@anthropic.com >
2026-09-24 23:08:53 +02:00
Ark0N and Claude
334884e96a
feat(models): offer Opus 5.5 in the model picker and task routing ( #480 )
...
Adds claude-opus-5-5 to the App Settings model picker (base option with
data-ctx="1" plus its [1m] companion row, since Opus 5.5 has a 1M window)
and to the five task-routing selects, mirroring how Fable 5.1 was added.
Co-authored-by: Claude <noreply@anthropic.com >
2026-09-24 01:57:35 +02:00
Ark0N and Claude Opus 5.5
c46e87fd7a
fix(self-update): stalled status and hung shutdown on launchd-daemon installs ( #478 )
...
* fix(self-update): stop a stalled status from blocking every later update
A Homebrew node upgrade under a long-running server deletes the versioned
Cellar path the server passes as --node, so every status write from the
updater failed. The update itself still built and restarted (npm and the
build use node from PATH), but update-status.json stayed "queued" forever.
The boot reconcile ran one minute after the restart, inside its 15 min
window, and isInFlight() had no age limit, so "An update is already in
progress." blocked every later update until the next server restart.
- self-update.sh falls back to node on PATH when --node is not executable.
- expireStalledStatus() (pure) fails an in-flight status whose last write
is older than the stale window; applied on every read (start + status
poll) and persisted. The live updater heartbeats every few seconds, so a
running update never trips it.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
* fix(self-update): a hung graceful shutdown no longer leaves a LaunchDaemon install down
On a KeepAlive LaunchDaemon (headless macOS) the updater restarts by sending
the server SIGTERM and letting launchd respawn it. launchd only respawns once
the process EXITS, and nothing escalates a stuck stop (systemd would SIGKILL
after TimeoutStopSec). Observed after an update to 1.32.1: the server closed
port 3000, server.stop() never resolved, the process stayed alive and the
service stayed down until it was killed by hand.
- cli.ts: the signal handler arms an unref'd 10s timer that force-exits if
server.stop() hangs.
- self-update.sh (launchd-daemon): wait up to 30s for the server pid to exit,
then SIGKILL it. tmux sessions live outside the server and survive.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Codeman maintainer <noreply@anthropic.com >
2026-09-24 01:35:27 +02:00
Ark0N
2c3ccdf030
Merge pull request #439
...
feat(remote): wake a sleeping host (Wake-on-LAN) from input, banner and native magic packet
2026-09-19 12:18:18 +02:00
Ark0N
475436242c
Merge pull request #455
...
fix(input): make sure a prompt sent through the API actually leaves the composer
2026-09-19 12:18:13 +02:00
Ark0N
613b774bf1
Merge pull request #451
...
fix(terminal): trim the padding and shared indent out of a copied selection
2026-09-19 12:18:08 +02:00
Ark0N
60c9af0599
Merge pull request #435
...
fix(terminal): replay a pane capture at the geometry it was taken at
2026-09-19 12:18:03 +02:00
Ark0N
2d842ded35
Merge pull request #454
...
fix(run): make the Instance count stepper work for every non-Claude mode
2026-09-19 12:17:58 +02:00
Ark0N
492f8d8ddf
Merge pull request #436 from irisitymichaelgrundberg/fix/replay-output-that-arrived-after-the-capture
...
fix(terminal): keep the output a pane capture could not contain
2026-09-18 21:34:42 +02:00
Ark0N
f32c4f60d5
Merge pull request #442 from irisitymichaelgrundberg/feat/restore-sessions-after-reboot
...
feat(sessions): offer to rebuild the sessions a host reboot destroyed
2026-09-18 13:41:24 +02:00
Ark0N
9a503872d9
Merge pull request #441 from shenlvkang-collab/fix/android-last-char
...
fix(input): deliver a recovered keystroke before the Enter that submits it
2026-09-18 13:41:21 +02:00
Ark0N
9d7b29d899
Merge pull request #429 from opticon454/chore/cli-catalog-followups
...
chore(cli-registry): clean up dead code and stale claims left after #380
2026-09-18 13:41:14 +02:00
Ark0N
ff8dc92187
Merge pull request #424 from Ark0N/fix/terminal-history-anchor-after-parse
...
fix(terminal): restore the history anchor after xterm parses, not before
2026-09-18 13:41:08 +02:00
Ark0N
0c00a40530
Merge pull request #407 from Ark0N/feat/iphone-duo
...
iPhone Duo support: fold-aware dialogs, and a fold is no longer mistaken for the keyboard
2026-09-14 16:10:38 +02:00
Ark0N
b2b2c767ea
Merge pull request #361 from timkjr/fix/statusline-injection-opt-out
...
fix(statusline): inject plan-usage telemetry via ephemeral CLI flag, never disk
2026-09-14 15:58:48 +02:00
Ark0N
e6e5a62d9b
Merge pull request #380 from opticon454/feature/cli-catalog-consumers
...
feat(cli-registry): drive install.sh and the Docker agent image from the CLI catalogue
2026-09-14 15:55:08 +02:00
Ark0N
dff7aeef3f
Merge pull request #390 from JDProfresh/fix/phone-breakpoint-480
...
fix(mobile): raise the phone breakpoint from 430px to 600px
2026-09-14 15:52:10 +02:00
Ark0N
47e92e0117
Merge pull request #417 from Ark0N/feat/terminal-font-weight
...
feat(terminal): configurable normal and bold font weight (#403 )
2026-09-14 15:44:15 +02:00
Ark0N
37929cb671
Merge pull request #404 from timkjr/pr-ctrlz-suspend-trap
...
fix(terminal): trap Ctrl+Z in non-shell sessions to prevent accidental suspend
2026-09-14 12:35:33 +02:00
Ark0N
e0ebbbdc91
Merge pull request #409 from irisitymichaelgrundberg/fix/claude-truecolor-in-panes
...
fix(terminal): let Claude use truecolor so its themed backgrounds render
2026-09-14 12:35:28 +02:00
Ark0N
8c237223b0
Merge pull request #399 from shenlvkang-collab/pr/path-picker-sort-jump
...
feat(files): let the path picker jump to a typed path and sort by name or date
2026-09-14 12:35:23 +02:00
Ark0N
9d664ffe01
Merge pull request #388 from aakhter/pr/keycode-229-input-recovery
...
fix(terminal): recover dropped keyCode 229 input (Android/IME)
2026-09-12 05:14:39 +02:00
Ark0N
a28b04c368
Merge pull request #362 from timkjr/feat/omp-remote-continuation
...
fix(omp,remote): thread remote-omp resume/continue through respawn and reattach
2026-09-12 05:14:24 +02:00
Ark0N
e35b68e253
Merge pull request #401 from shenlvkang-collab/pr/loopback-links-webtab
...
feat(webview): open localhost links through a proxied web tab from another device
2026-09-12 05:14:09 +02:00
Ark0N
77d9ad59f7
Merge pull request #400 from shenlvkang-collab/pr/claude-viewer-last-turn
...
fix(web): show the whole last turn in the Claude response viewer's brief view
2026-09-12 05:13:55 +02:00
Ark0N
e3d5fd90cd
Merge pull request #392 from JDProfresh/fix/ios-safari-toolbar-gap
...
fix(mobile): lift the iOS Safari toolbar by the measured chrome overlap
2026-09-10 03:10:12 +02:00
Ark0N
713f632a64
Merge pull request #397 from irisitymichaelgrundberg/fix/detached-session-owns-its-pane-size
...
fix(terminal): let a detached session's own window own its pane size
2026-09-10 02:58:54 +02:00
Ark0N
92b5dfacb0
Merge pull request #396 from irisitymichaelgrundberg/fix/terminal-font-settle-before-fit
...
fix(terminal): fit the terminal only once the terminal font is measurable
2026-09-10 02:58:48 +02:00
Ark0N
890a1b0902
Merge pull request #395 from irisitymichaelgrundberg/fix/full-history-replay-row-alignment
...
fix(terminal): keep row alignment in the full-history pane replay
2026-09-10 02:58:42 +02:00
Ark0N
a360763890
Merge pull request #394 from irisitymichaelgrundberg/fix/ctrl-v-pastes-twice
...
fix(paste): handle only the first paste event the Ctrl+V trap receives
2026-09-10 02:58:36 +02:00
Ark0N
344e93c824
Merge pull request #386 from irisitymichaelgrundberg/feat/codex-resume
...
Merging with the phone-overview resumeId fix and the two unified-list doc passages applied on master.
2026-09-07 22:43:46 +02:00
Ark0N
a49be03f96
Merge pull request #385 from irisitymichaelgrundberg/fix/work-detection-external-clis
...
Merging with follow-up fixes applied on master: workingLine routed through compileVersionRegex() in both the schema refine and _workingLinePattern(), the Codex footer matched case-insensitively on the E, plus the doc passages that stated the retired Claude-mode-only rule.
2026-09-07 22:41:25 +02:00
Ark0N
cfc8fe7e41
Merge pull request #381 from mtiller/feat/reverse-proxy-base-url
...
feat(web): support a reverse-proxy base URL
2026-09-06 23:10:23 +02:00
Ark0N
7991f481b6
Merge pull request #368 from shenlvkang-collab/pr/mobile-add-case-submit
...
fix(mobile): give the Add Case modal a reachable submit button
2026-09-06 23:02:45 +02:00
Ark0N
bca1b764cc
Merge pull request #367 from shenlvkang-collab/pr/claude-conversation-first-hand
...
fix(session): learn the live Claude conversation from the CLI's own hook
2026-09-06 23:02:33 +02:00
Ark0N
1c1773278f
Merge pull request #369 from shenlvkang-collab/pr/claude-response-viewer-per-message
...
fix(web): render one Claude response-viewer message per model message
2026-09-06 23:02:13 +02:00
Ark0N
097d585278
Merge pull request #383 from opticon454/fix/case-picker-default-root
...
fix(file-picker): default the case picker to Codeman Cases, not Home
2026-09-06 21:03:00 +02:00
Ark0N
96960785d2
Merge pull request #356 from timkjr/pr/test-isolation
...
fix(test): isolate route tests from the production ~/.codeman data dir
2026-09-04 13:50:03 +02:00
Ark0N
ee6a7af1d1
Merge pull request #355 from timkjr/pr/remote-exit
...
fix(remote): never auto-revive a remote session after a clean agent exit
2026-09-04 13:49:49 +02:00
Ark0N
850b00572c
Merge pull request #347 from opticon454/feature/cli-registry-core
...
PR A: CLI registry core as a pure internal refactor
2026-09-04 13:49:35 +02:00
Ark0N
f7cf15485e
feat(models): offer Fable 5.1 in the model picker and task routing ( #372 )
...
Adds `claude-fable-5-1` to the App Settings model picker and the five task-routing selects, mirroring how Fable 5 is already offered: a base option with data-ctx="1" plus its [1m] companion row. No settings-ui.js logic change, since the cards and the 1M switch are built from those options.
2026-09-02 10:48:51 +02:00
Ark0N
e4699159e9
Merge pull request #346 from JackStuart/codex/show-codex-usage-limits
...
feat(web): show Codex plan usage in header
2026-08-28 00:14:54 +02:00
Ark0N
da085f5f7f
Merge pull request #345 from fibr/fix/sidebar-inline-rename
...
fix(ui): show inline rename text in session sidebar
2026-08-28 00:14:48 +02:00
Ark0N
5f8d4de443
Merge pull request #340 from aakhter/pr/cod-341-file-viewer-search
...
feat(file-viewer): COD-341 search the full workspace
2026-08-26 18:03:21 +02:00
Ark0N
00b32ad2b8
Merge pull request #339 from dignfei/fix/terminal-live-write-backpressure
...
fix(terminal): bound live xterm backpressure
2026-08-26 18:03:14 +02:00
Ark0N
ca5fe1ab3e
Merge pull request #338 from Ark0N/feat/vertical-rail-detailed-rows
...
Vertical tab rail: detailed rows (created / working / status), plus a rename-cancel fix
2026-08-25 19:12:57 +02:00
Ark0N
9cd10afdc9
Merge pull request #341 from Ark0N/feat/deepseek-agent-workers
...
Spawn and drive DeepSeek Harness workers from the codeman agent skill
2026-08-25 19:12:45 +02:00
Ark0N
975705ad87
Merge pull request #337 from Ark0N/feat/deepseek-harness
...
feat(deepseek): add DeepSeek Harness (dsh) as a ninth CLI run mode
2026-08-25 19:12:01 +02:00
Ark0N
82f81d21c4
Merge pull request #333 from Ark0N/feat/grok-mode
...
feat(grok): add Grok Build (xAI) as a seventh CLI run mode
2026-08-24 00:43:04 +02:00
Ark0N
e9dd55e5fd
Merge pull request #334 from aakhter/pr/cod-358-vertical-rail
...
feat(tabs): add a resizable vertical session rail
2026-08-24 00:14:10 +02:00
Ark0N
dd96f252ea
Merge pull request #335 from aakhter/pr/cod-359-tab-layout
...
feat(tabs): add owner-scoped tab layout foundation
2026-08-24 00:12:20 +02:00
Ark0N
f49249fb2f
Merge pull request #312 from Ark0N/feat/tui
...
feat: codeman tui, a terminal dashboard with live agent states
2026-08-22 14:32:51 +02:00
Ark0N
abca552676
Merge pull request #327 from dignfei/fix/terminal-ime-punctuation
...
fix(terminal): preserve IME punctuation input
2026-08-21 20:23:26 +02:00
Ark0N
12a996b107
Merge pull request #331 from dignfei/fix/shell-history-performance
...
fix(terminal): bound shell history replay
2026-08-21 20:23:17 +02:00
Ark0N
b7f3b07c79
Merge pull request #330 from aakhter/ralph-loop-reschedule
...
Ralph loop silently stops polling after two ticks
2026-08-21 02:10:41 +02:00
Ark0N
2073a1b185
Merge pull request #328 from aakhter/repo-status-panel
...
Report repository status for git-clone installs (GET /api/system/repo-status)
2026-08-21 02:10:38 +02:00
Ark0N
f9a8493823
Merge pull request #329 from aakhter/cli-login-shell-resolution
...
CLIs installed via nvm/Homebrew are not found when Codeman runs as a service
2026-08-21 02:10:35 +02:00
Ark0N
d2711ef092
Merge pull request #326 from aakhter/response-viewer-external-cli
...
Response viewer is empty for OpenCode / Gemini / Antigravity sessions
2026-08-21 02:10:29 +02:00
Ark0N
30a15adbd6
Merge pull request #325 from Ark0N/feat/auto-copy-selection
...
feat(terminal): Auto Copy, put a finished selection on the clipboard
2026-08-21 02:10:19 +02:00
Ark0N
a49c30d173
Merge pull request #324 from aakhter/feat/files-panel-search
...
feat(files): search the Files panel by name or path
2026-08-19 23:33:08 +02:00
Ark0N
ede3b05c10
Merge pull request #321 from rounakdatta/fix/mobile-link-taps
...
feat(mobile): links open from a tap, text can be copied, long prompts stay visible, wrapped links open whole
2026-08-19 23:23:51 +02:00
Ark0N
c049de75db
Merge pull request #320 from comzine/feat/custom-terminal-font
...
feat: Nerd Font prompt icons out of the box + configurable terminal font
2026-08-19 23:04:50 +02:00
Ark0N
d4ccff07ca
Merge pull request #319 from Ark0N/fix/dep-advisories
...
fix(deps): clear production npm advisories, fix sw.js caching regression
2026-08-19 14:54:21 +02:00
Ark0N
2e19fc0430
Merge pull request #315 from aakhter/fix/respawn-stop-race
...
fix(respawn): do not revive a stopped controller after a cycle-step write
2026-08-18 21:15:17 +02:00
Ark0N
30f35490f6
Merge pull request #314 from aakhter/fix/symlink-safe-workspace-confinement
...
fix(routes): canonicalize the workspace before comparing it to a resolved path
2026-08-18 21:15:11 +02:00
Ark0N
322801052b
Merge pull request #316 from Ark0N/chore/test-script-split
...
chore(test): make `npm test` the CI gate and give each excluded suite a runner
2026-08-18 21:15:00 +02:00
Ark0N
736a6b8b7b
Merge pull request #313 from Ark0N/feat/sidebar-rich
...
feat(sidebar): add a rich session sidebar that carries the home screen's row detail
2026-08-18 21:14:53 +02:00
Ark0N
6525ade530
Merge pull request #317 from Ark0N/feat/wiki-tapzones-lineage-colours
...
Wiki publishing, phone tab tap-zone fix, and per-parent lineage colours
2026-08-18 21:14:46 +02:00
Ark0N
b0e493d462
Merge pull request #311 from Ark0N/fix/workspace-hooks-followups
...
Workspace hooks follow-ups: one decision core for every claude create path, docker shell gate, boot-sweep and statusLine guards
2026-08-16 20:44:49 +02:00
Ark0N
631913f04c
Merge pull request #310 from Ark0N/fix/files-sidebar-followups
...
fix: file-link and session-sidebar review follow-ups from 1.19.0
2026-08-16 20:44:14 +02:00
Ark0N
bb959c4aac
Merge pull request #309 from Ark0N/fix/home-order-followups
...
Home-screen ordering follow-ups: live stamps, one numbering, restart-proof recency
2026-08-16 20:43:21 +02:00
Ark0N
05c94f5ac0
Merge pull request #304 from Ark0N/fix/workspace-hooks-install
...
fix: install Codeman hooks into every claude workspace, not just cases Codeman created
2026-08-16 19:31:06 +02:00
Ark0N
aaf22909bc
Merge pull request #306 from Ark0N/feat/file-path-links
...
fix(files): open the files agents print, wherever they wrote them
2026-08-16 19:30:41 +02:00
Ark0N
94908ffdb5
Merge pull request #303 from Ark0N/feat/overview-activity-order
...
Sort the home-screen session lists by activity, not tab order
2026-08-16 19:26:03 +02:00
Ark0N
82fe3cf684
Merge pull request #305 from Ark0N/docs/skill-hooks-rule
...
docs(skill): hooks are a setting now, not who created the directory
2026-08-16 19:23:17 +02:00
Ark0N
6946ca0b8a
Merge pull request #307 from Ark0N/feat/session-sidebar
...
feat(web): optional collapsible left session sidebar
2026-08-16 19:23:14 +02:00
Ark0N
9ee6bf113b
Merge pull request #291 from Ark0N/feat/alerts-lineage-popout
...
Skill fast-path hardening, lineage retune + colors, per-tab pop-out, reliable tab alerts
2026-08-15 07:16:34 +02:00
Ark0N
5387587a64
Merge pull request #287 from Ark0N/fix/lineage-line-blue
...
fix(ui): draw session lineage lines in blue for contrast
2026-08-14 13:58:21 +02:00
Ark0N
9c0a9bf8e3
Merge pull request #288 from Ark0N/feat/skill-fast-path
...
perf(skill): spawn workers instead of deliberating (codeman agent skill)
2026-08-14 13:58:18 +02:00
Ark0N
2d2a455dd2
Merge pull request #286 from Ark0N/fix/terminal-history-scroll
...
fix(terminal): preserve scroll intent across keyboard resize, surface history truncation
2026-08-14 01:16:01 +02:00
Ark0N
69d8a9ea6f
Merge pull request #285 from Ark0N/fix/lineage-line-visibility
...
fix(ui): make session lineage lines read as arcs, not straight threads
2026-08-14 01:01:05 +02:00
Ark0N
405eb50ba3
Merge pull request #284 from Ark0N/fix/file-viewer-video
...
fix(file-viewer): make previewed video seekable and stop it on close
2026-08-14 01:00:55 +02:00
Ark0N
829b202f51
Merge pull request #282 from Ark0N/feat/pi-mode
...
feat(pi): add Pi (pi.dev) as a sixth CLI run mode (#206 )
2026-08-13 18:05:27 +02:00
Ark0N
67f6ed3168
Merge pull request #280 from Lint111/feat/mobile-tap-toggles-keyboard
2026-08-11 19:33:41 +02:00
Ark0N
2d4616f059
Merge pull request #279 from Lint111/feat/mobile-keyboard-dismiss
2026-08-11 19:33:33 +02:00
Ark0N
a4cdb352be
Merge pull request #244 from Lint111/feat/mobile-terminal-taps
...
fix(mobile): route terminal taps without breaking keyboard focus
2026-08-10 13:09:29 +02:00
Ark0N
d81454b6f9
Merge pull request #275 from Ark0N/feat/claude-voice-integration
...
feat(voice): dictate through the server's Claude Code login, no API key
2026-08-10 13:09:24 +02:00
Ark0N
00f1b9228a
Merge pull request #274 from jordan8037310/fix/run-menu-recent-sessions
...
fix(run-menu): make Recent Sessions rows legible on macOS (home-prefix regex + width + worktree)
2026-08-10 13:09:18 +02:00
Ark0N
fe2c03b2cc
Merge pull request #276 from Ark0N/fix/home-path-abbreviation
...
fix(paths): one home-prefix helper, so path labels abbreviate on Linux and macOS
2026-08-10 12:53:22 +02:00
Ark0N
4e3f7ac36b
Merge pull request #277 from Ark0N/feat/readmymind-phase3-part2
...
feat(readmymind): rethink steer note (phase 3 part 2)
2026-08-10 12:53:19 +02:00
Ark0N
089283e0b3
Merge pull request #278 from Ark0N/appsettings-details
...
One settings surface: App Settings, Session Options and Add Case
2026-08-10 12:52:43 +02:00
Ark0N
4a1ad8d194
Merge pull request #270 from Ark0N/feat/readmymind-phase3-part1
...
Read My Mind phase 3 part 1: the modal grows up and reaches phones
2026-08-10 04:38:02 +02:00
Ark0N
193ce6348d
Merge pull request #268 from Ark0N/feat/mobile-shell-keyboard-262
...
feat(mobile): shell keyboard bar with a one-shot Ctrl modifier
2026-08-10 04:33:22 +02:00
Ark0N
312ca541e6
Merge pull request #271 from Ark0N/feat/app-settings-redesign
...
feat(settings): rebuild App Settings as a rail over one scrolling document
2026-08-10 04:29:13 +02:00
Ark0N
40ce91f098
Merge pull request #267 from Ark0N/fix/mobile-tab-scroll-257
...
fix(mobile): make every session tab reachable in the tab strip
2026-08-10 04:27:42 +02:00
Ark0N
250a53125a
Merge pull request #264 from Ark0N/fix/history-search-260-261
...
fix(web): usable past-conversation list (#260 ) and search that finds past sessions (#261 )
2026-08-10 04:27:12 +02:00
Ark0N
14ea9f630f
Merge pull request #269 from jordan8037310/feat/session-worktree-label
...
feat(sessions): show the git worktree (name + branch) on session rows
2026-08-10 04:26:23 +02:00
Ark0N
f98922063a
Merge pull request #256 from Ark0N/feat/readmymind-phase2
...
Read My Mind phase 2: the predictor and the 🧠 button
2026-08-10 00:54:27 +02:00
Ark0N
d5375d7f0b
Merge pull request #251 from Ark0N/feat/clone-repo-case
...
feat(cases): clone a Git repository as a new case (#236 )
2026-08-10 00:45:13 +02:00
Ark0N
e6df0c4094
Merge pull request #253 from Ark0N/feat/readmymind
...
feat: Read My Mind phase 1, per-case intent profiles (opt-in)
2026-08-09 18:34:11 +02:00