Skip to content

Add Optional Helper to Run Proxy as a systemd User Service (Linux only) - #21

Open
samot-gc wants to merge 3 commits into
raine:mainfrom
samot-gc:samot/cli-helper
Open

samot-gc wants to merge 3 commits into
raine:mainfrom
samot-gc:samot/cli-helper

Conversation

@samot-gc

@samot-gc samot-gc commented Jul 2, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds an optional helper for running claude-code-proxy as a background service on Linux, under scripts/ccp/

Provides simple helpers:

  • start/stop to start/stop proxy
  • on/off to set to enable/disable always running
  • logs [-f] to view logs
  • health for health check
  • ccp --help (or bare ccp) to list commands
  • clear errors if the systemd user bus isn't reachable (a common WSL quirk), with a Troubleshooting section in the README

More details at scripts/ccp/README.md.

Entirely optional, but highly convenient.

CI is currently red on main for an unrelated clippy failure under Rust 1.99; #187 fixes it, so the checks here should go green once that merges.

@samot-gc samot-gc changed the title Add Cptional Helper to Run Proxy as a systemd User Service (Linux only) Add Optional Helper to Run Proxy as a systemd User Service (Linux only) Jul 2, 2026
scripts/ccp/install.sh writes a claude-code-proxy.service user unit and a ccp wrapper (start/stop/restart/status/logs [-f]/on/off/health); README.md documents setup and usage. Linux/WSL only — the installer refuses to run without systemd. Local convenience, not shipped by the proxy itself.
The user bus can be missing because the user manager isn't running, or because WSL mounts a tmpfs over /run/user/<uid> and hides its socket. The wrapper and installer now say which; README gains a troubleshooting note.
Bare `ccp` prints the service state plus usage instead of aliasing `status`; `ccp status` suggests `start`/`on` when the service is down.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant