Get started

QuoxAgent · Act · run and scale

The lightweight agent for every host.

Real-time metrics, AI session hosting and secure command execution on every box you run. Single binary, minimal footprint, full visibility.

$curl -sSL http://<collector>:9848/install | sudo bash -s -- --host-id $(hostname)
CPU overhead <1%memory footprint ~15MBheartbeat 15s

In plain words

What it is, where it lives, when to reach for it

What is it
A single Go binary you install on each server to report metrics and run commands for QuoxCORE.
Where do I use it
On every host you want on the fleet map; you watch the results in the dashboard.
When would I use it
When you have more servers than you can check by hand and want them all in one view.
How do I use it
Run curl -sSL http://<collector>:9848/install | sudo bash on the host; the agent registers itself over its first heartbeat.

QuoxCORE is the free, self-hosted platform underneath this. What is QuoxCORE

What it is

One binary. Every host. One graph.

The constellation behind this page is the shape of it: hosts as nodes, heartbeats as filaments, and your collector at the bright centre pulling the whole fleet into one view.

QuoxAgent is a single Go binary that runs anywhere. No Python, no Node, no Java runtime. Copy it to the host and run it. Each agent self-registers with the QuoxCORE collector through its heartbeat, so a new host appears on the fleet map the moment the service starts. No manual registration, no inventory spreadsheet.

any Linux · amd64 · arm64~15MB memory<1% CPUautomatic systemd setupone setting · the collector URL

See QuoxCORE, the control point →

Live demonstration

Watch a host join the fleet.

The console below is the collector's fleet view, recreated live. Four hosts are heartbeating. One is missing the agent, so we deploy it: the collector serves the install script and the binary itself, the systemd unit comes up, and the new host self-registers on its first heartbeat. Every row here is one node of the constellation behind this page.

fleet console · collector :9848heartbeat 15shosts 4 onlineself-registration · no manual inventory

A recreation, not a screenshot. The host names come from this page's own deployment examples and the readings are representative demo data, not live metrics. On a real collector each row is one host's 15-second heartbeat: CPU, memory, disk and uptime in every report.

The dashboard goes one step further: mention a host in a command and, if it is not running the agent yet, QuoxCORE offers to install it for you. Read the deployment reference →

The real console

This is the actual fleet dashboard.

The demonstration above recreates the flow. This is the collector's real fleet view: every registered host reporting its 15-second heartbeat, with CPU, memory, disk and uptime read straight off the agent binary running on the box.

quoxcore · quoxagent fleet dashboard
The QuoxAgent fleet dashboard: a stat row of 12 total agents, 12 connected, 0 stale and 0 dead with average CPU and memory, connected/stale/dead filter chips, per-host cards showing CPU, memory, disk and boot usage with exec, heartbeat and systemctl tags, a quick actions rail, and the NOVA assistant panel with suggested prompts.
  1. 1Read fleet health as one rowTotal, connected, stale and dead counts sit beside the average CPU and memory across the whole fleet.
  2. 2Filter hosts by stateConnected, stale and dead each carry their own live count as a one-click filter chip.
  3. 3See per-host resource useEvery host card breaks CPU, memory, disk and boot partition usage into its own bar.
  4. 4Act straight from the cardexec, heartbeat and systemctl tags on each host jump straight to that action.
  5. 5Jump to a common taskDeploy Agent, Submit Job, Run Playbook and Fleet Health sit in a quick actions rail on the left.
  6. 6Ask NOVA about the fleetSuggested prompts such as "Which agents are offline?" and "Check disk usage across all agents" sit ready to send.

Captured from the real QuoxAgent fleet console, not a mockup.

Every 15 seconds, every host reports exactly how it is doing.

One heartbeat carries complete system health: per-core CPU utilisation and load averages, used, available, cached and swap memory, every mount's usage and free space, plus uptime and boot timestamp. Push, pull or hybrid mode, for under 1% CPU overhead and about 15MB of memory on the host.

Capabilities

Built for operations.

01Single binary deploy

One Go binary. Copy it to the host. Run it. No dependencies, no runtime, no package manager.

▸ Go · amd64 · arm64 · copy and run

0215-second heartbeats

Real-time health data pushed to the QuoxCORE collector in push, pull or hybrid mode. Know the instant something changes.

▸ push · pull · hybrid · 15s

03AI session hosting

Run Claude sessions directly on the host via CLI OAuth. Local context and faster responses.

▸ CLI OAuth · on-host sessions

04Secure command execution

Execute commands remotely with full audit logging, no SSH required. Job envelopes are sandboxed and verified with Ed25519 signatures before anything runs.

▸ Ed25519 verified · audit logged

05Systemd integration

Runs as a hardened systemd service with auto-restart, resource limits and security sandboxing. Host uptime and boot timestamp arrive with every heartbeat.

▸ hardened unit · auto-restart · 99.9%+ target uptime

06Zero configuration

Auto-discovers hostname, IP and system info. Just set the collector URL and go.

▸ one setting · collector URL

Universal Agent Monitor

See every AI agent on every host.

The UAM gives you real-time visibility into all AI agent sessions running across the fleet: CLI agents such as Claude Code and Aider, direct API calls, local LLM servers like Ollama, and custom integrations.

Each session carries its own identity, lifecycle, activity and resource usage, and every event lands on one WebSocket stream you can filter by host, agent type or session.

  • Session start, status and end events
  • Tool calls, file changes and code execution as they happen
  • Token usage and cost tracking per session
  • Live stream over /ws/agents/events with dynamic filters
agent stream
$ mha agent watch --host nw-web-01
TIME      EVENT              SESSION
14:02:11  session.start      claude-code · nw-web-01
14:02:14  activity.tool_call Bash · git status
14:02:19  activity.file_change src/App.jsx
14:02:26  metrics.tokens     12,480 in · 1,920 out

$ mha agent sessions
HOST       TYPE   AGENT        STATUS
nw-web-01   cli    claude-code  running
nw-db-01   local  ollama       running
pve-node3  api    sdk-script   idle

Per-host API

Two small APIs, one fleet view.

Every agent exposes a local REST API on its host, and the collector aggregates the fleet on one endpoint surface. Both speak plain HTTP and Prometheus.

9847agent api · on every host

GET/healthagent health check
GET/api/v1/jobslist jobs
POST/api/v1/jobssubmit a job
GET/api/v1/sessionsAI sessions on this host
GET/metricsPrometheus metrics

9848collector api · the control point

POST/api/v1/heartbeatreceive heartbeats
GET/api/v1/agentslist all agents
GET/api/v1/fleet/summaryfleet summary stats
GET/api/v1/check/:hostIdis the agent on this host
GET/installserve the install script
WS/ws/agents/eventsUAM event stream

Inside the daemon

Shipped in the binary.

Everything below is in the quoxagent repository today, and the figures are counted directly from it.

111Go files
25test files
5plugins
15playbooks
plugin system

Five built-in plugins extend the agent: core, NOC, SOC, MikroTik and codebase analysis.

playbook engine

Multi-step automation with conditions, loops and parallel execution. Fifteen example playbooks ship in the repo, across three tiers.

signed jobs

Job envelopes are verified with Ed25519 signatures before execution, and dev-mode overrides are gated behind an explicit opt-in.

tiered licensing

A free tier plus three paid tiers, with entitlements signed using Ed25519 so a licence cannot be forged.

Comparison

QuoxAgent or QuoxBastion?

Both work with QuoxCORE. Choose based on your needs.

QuoxAgentQuoxBastion
Runs onEvery managed hostBastion host only
ExecutionDirect on each hostSSH from the bastion
DiscoverySelf-registers via heartbeatManual registration
MetricsReal-time CPU, memory, diskNone (uses SSH)
DependenciesBinary deployed per hostSSH keys configured
Best forPer-host monitoring, AI sessionsFleet-wide commands, host registry

Use both together: QuoxBastion is the source of truth for what hosts exist. QuoxAgent runs on those hosts for real-time monitoring. See QuoxBastion →

Install

On the host in one line.

Your collector serves the install script and the binary, so most hosts join with the curl line above. Prefer to build it yourself? The source is on GitHub.

$go install github.com/quoxai/quoxagent@latest
github.com/quoxai/quoxagent · one binary · systemd unit included in deploy/

The whole fleet, one graph

Deploy QuoxAgent across your fleet.

One binary per host. Real-time visibility everywhere, and every remote command on the audit log.

heartbeat every 15s·remote commands audit logged·job envelopes Ed25519 verified

How you get it

In the store today, one licence for the fleet

Fleet management is the licensed part. The agent binary itself is free to install on every host you own.

store

On its own

Fleet Management is what turns a pile of installed agents into one governed estate: inventory, health, rollout and the evidence trail behind every action taken on a host.

$39 · one-time · in the store
agent

The agent itself

The QuoxAgent binary is free and always will be. Install it on as many hosts as you like, then licence Fleet Management once when you want to drive them together.

free · install anywhere
scroll