Lightweight Go agent for:
- Discovery of systemd services + docker containers + common processes
- Monitoring (active state + optional port/HTTP checks)
- Resource telemetry in heartbeat (CPU/memory/disk/network/processes)
- Safe remediation via built-in, allowlisted playbooks
- Operations Platform actions (script/plan/playbook/ansible) including
command.run
Non-goals (v1): full metrics/log aggregation or “AI runs arbitrary commands”.
cmd/askio-monitor/main.go– binary entrypointinternal/agent/*– host agent daemon loops (heartbeat/config/discovery/check scheduler)internal/discovery/*– systemd/docker/process detectorsinternal/checks/*– monitoring checks (active_state/port/http)internal/remediation/*– playbooks + executor (root/sudo), redactioninternal/operations/*– Operations Platform runner + handlers (service/package/check/command)internal/gateway/*– optional gateway reverse-proxy modeinternal/api/*– HTTP client and payloadspackaging/*– systemd unit + sudoers templates
go build -o ./bin/askio-monitor ./cmd/askio-monitor
./bin/askio-monitor --versionCreate a config file (example):
api_url: "http://localhost:9999/functions/v1"
server_id: "dev"
agent_token: "devtoken"
privilege_mode: "sudo"
data_dir: "./.askio-monitor-data"
log_level: "info"
operations:
allow_shell: false
allowlist: []Run:
./bin/askio-monitor discover --config ./tmp-monitor.conf
./bin/askio-monitor start --config ./tmp-monitor.confsudo ./askio-monitor install \
--api-url "https://<backend>/functions/v1" \
--server-id "<uuid>" \
--token "<token>" \
--mode sudoInstaller writes:
/etc/askio/monitor.conf/etc/systemd/system/askio-monitor.service/etc/sudoers.d/askio-monitor(sudo mode)/usr/local/bin/askio-monitor
And runs:
systemctl daemon-reloadsystemctl enable --now askio-monitor
Start here:
- Architecture:
docs/ARCHITECTURE.md - Config:
docs/CONFIG.md - Backend contract (edge functions/API):
docs/BACKEND_INTEGRATION.md - Operations Platform (pending_action, handlers,
command.run):docs/OPERATIONS.md - Resource telemetry / heartbeat schema:
docs/RESOURCES.md - Remediation playbooks:
docs/PLAYBOOKS.md - Security:
docs/SECURITY.md