Skip to content
closientPublic

About

Single-binary uptime monitor, status page and release log in Rust. Configured by files, history in SQLite, built for coding agents.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

tocsin

A single-binary uptime monitor, public status page and release log, written in Rust.

  • Files are the only configuration. A folder of TOML files says what is watched, who is alerted and how the page looks. There is no settings UI and no config API, so git, Ansible or a coding agent is the whole management story.
  • SQLite holds history. Check results, outages, incidents and releases live in one database file in a data folder.
  • Releases on the same timeline as outages. CI pushes each release and deploy, so "what changed right before this broke" is one glance.
  • Built for coding agents. Schema-validated config, --json on every command, stable exit codes, one-shot probe runs that explain their verdict, and an MCP server (/mcp on a running server, or tocsin mcp over stdio; docs/mcp.md).

tocsin is early: the workspace and CLI skeleton exist, and the monitor is being built now. DESIGN.md is the plan.

Quick start

Release binaries, a container image and a systemd unit are described in docs/install.md, and docs/quickstart.md goes from nothing to a running check; docs/ indexes the rest. From source:

cargo build --release
mkdir -p config
printf '[server]\n' > config/server.toml
./target/release/tocsin serve --config config --data data

--config defaults to /etc/tocsin, and the folder needs at least one *.toml file. docs/config.md describes every table, and examples/config/ is a fuller example. tocsin probe run <check-id> runs one check once and shows why it passed or failed; docs/probes.md describes its output. Scheduled jobs report in with tocsin heartbeat ping <id>; see docs/heartbeats.md. tocsin --version --json prints {"version": "..."}. Stop the server with Ctrl-C or SIGTERM.

License

AGPL-3.0-only. If you run a modified tocsin as a network service, you must offer its source to the people using it. Contributions are accepted under the same license with a DCO sign-off; see CONTRIBUTING.md.

About

Single-binary uptime monitor, status page and release log in Rust. Configured by files, history in SQLite, built for coding agents.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages