jasonwitty 56a2dc372a
CI / build (ubuntu-latest) (push) Has been cancelled
CI / build (windows-latest) (push) Has been cancelled
Reject unknown options in parse_args instead of treating them as the URL
An older socktop handed a newer flag (webterm 0.3.9's restricted shell
passing --no-kill to 1.60.1) silently parsed the flag as the positional
websocket URL and offered to overwrite the named profile's URL with the
literal flag text. Unknown options now fail with 'Unknown option' and
exit code 2 (help remains exit 0), with a regression test covering the
exact incident shape.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-24 09:46:20 -07:00
2025-08-19 23:24:36 -07:00
2026-08-24 07:22:51 -07:00
2026-08-24 07:26:16 -07:00
2026-08-23 18:33:08 -07:00

socktop

socktop is a remote system monitor with a rich TUI, talking to an ultra lightweight agent over WebSockets.

Resources

Resource Location
Website and online demo (yes it's real) socktop.io
Quick Start guide https://socktop.io/assets/docs/installation/quick-start.html
Prereqs https://socktop.io/assets/docs/installation/prerequisites.html
APT Install https://socktop.io/assets/docs/installation/apt.html
Cargo Install https://socktop.io/assets/docs/installation/cargo.html
Usage https://socktop.io/assets/docs/usage/general.html
Auth Setup https://socktop.io/assets/docs/security/token.html
TLS Setup https://socktop.io/assets/docs/security/tls.html
Monitoring Multiple Hosts tmux / zellij

Platform Support

Linux (all flavors), ARM/Raspberry Pi (32b/64b), MacOS, Windows, RISC-V (experimental)


Contributing

Contributions are welcome and you have the freedom to use whatever development tools you would like, as long as there is a human in the loop and all the clippy and unit tests pass you are good to submit a PR. Defects / Bugs just go ahead and fix and file a PR. New features, please create a issue in advance and let me know you are offering to build it. I don't want to be in a position where you worked for a couple of weeks on something and I don't want to merge it.

Development

cargo fmt
cargo clippy --all-targets --all-features
cargo run -p socktop -- ws://127.0.0.1:3000/ws
# TLS (dev): first run will create certs under ~/.config/socktop_agent/tls/
cargo run -p socktop_agent -- --enableSSL --port 8443

Auto-format on commit

A sample pre-commit hook that runs cargo fmt --all is provided in .githooks/pre-commit. Enable it (one-time):


License

MIT — see LICENSE.

Acknowledgements

  • ratatui for the TUI
  • sysinfo for system metrics
  • tokio-tungstenite for WebSockets
S
Description
No description provided
Readme MIT 352 MiB
Languages
Rust 94.8%
Shell 3.1%
HTML 2.1%