Codeman 1.29.0: your own model server, single-page dashboards as web tabs, remote files #425
Ark0N
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Short version: you can point a session at your own model server, single-page dashboards work as web tabs, remote (SSH) cases finally show you their files, and the Docker Compose deployment stops crash-looping on a fresh bind mount.
Custom model endpoints. Add an OpenAI-compatible endpoint (a local llama.cpp, llama-swap, Ollama or vLLM box, or a cloud gateway), Codeman discovers its models from
/v1/models, and you apply one to a session, which restarts that session's CLI pointed at it. It works today for Claude Code, opencode, pi, grok and omp; every one of those was run against a real llama-swap server. Gemini and DeepSeek reach the server and fail for reasons not yet understood, and Codex only speaks the Responses API, so a plain chat-completions server cannot serve it; those three are written down as gaps rather than shipped as working. This release is the backend, driven over the HTTP API (docs/custom-model-endpoints.md); the Run-menu picker is the follow-up. @opticon454 built it (#393), including the part nobody enjoys: working out each CLI's real mechanism against real binaries instead of trusting the docs.Single-page apps in web tabs. A React Router, Vue Router or Vite dev-server dashboard used to paint and then replace itself with its own "page not found", because it read
/webview/<cap>/as its path. The proxy now masks the prefix off the document URL before the page's script runs, and a frame that reloads itself (a dev server on save, a root-absolutelocation.href) is recognised and remounted at the path it had instead of landing on Codeman's root. @shenlvkang-collab (#402), the best-engineered PR of this batch. Same author: Shift arrows for Codex on the phone keyboard bar (#408), shown only on Codex sessions.Remote (SSH) cases show their files. Previews, downloads, text reads and the out-of-workspace attachment path resolved every path against the machine running Codeman, so in a remote case every click ended in "File not found" while the file plainly existed on the other host. One ssh read layer now probes and streams from the remote, with symlinks resolved on the host that can resolve them, containment checked against the resolved remote root, and no local fallback ever. @Randalix reported it (#415) and then fixed it (#421).
Docker Compose. A missing bind source is created root-owned by the daemon, and the unprivileged server crash-looped on
EACCESif you ran Compose directly. The image now starts through an entrypoint that fixes a root-owned mount and drops toPUID:PGID;Start-Codeman.shhonoursdocker-compose.override.yml, pre-creates the cases directory, and refreshes the build volumes when the checkout moved under them (adocker compose buildafter agit pullused to keep serving stale compiled routes). The runtime account is now calledcodeman. @opticon454 again (#377), three review rounds, every one measured on a real deployment. One ask for Compose users: runStart-Codeman.shonce for this release rather than a plaindocker compose up, so the rebuilt image, the refreshed volumes and the new entrypoint arrive together.From #375. Eight fixes from @dignfei's big branch are in under their name: Shift+drag to select and right-click to copy in the terminal, Ctrl/Alt navigation keys through the CJK composer, a recovery for the case where a browser's input counter fell behind the server and typed prompts silently stopped landing, an SSE reconnect that no longer reloads the terminal you are looking at, a compositing fix for the hidden offline overlay, and one adopted Docker container backing several cases. The two big halves of that branch, adopting foreign tmux sessions and SSH password auth, still need their author.
And one you will notice on a light skin. Selected text is visible again there. Every skin palette used the theme key xterm renamed in v5, so all seven had been painting white at 30% over whatever the palette said (#423, part of #360).
Release notes: https://github.com/Ark0N/Codeman/releases/tag/codeman@1.29.0
Thanks @opticon454, @shenlvkang-collab, @Randalix and @dignfei.
All reactions