AXIOM-OS // DOCS
System Manual
Raw engineering documentation for AXIOM OS. Specter daemon flags, memory schema definitions, and local Ollama setup.
1. Specter Daemon Configuration
The Specter daemon (written in Go) collects local telemetry. It is strictly configured via CLI flags or a config.yaml.
$ specterd --help
Usage of specterd:
-config string
Path to config.yaml (default "/etc/axiom/specter.yaml")
-db string
SQLite database path (default "/var/lib/axiom/memory.db")
-poll-interval duration
Telemetry polling interval (default 500ms)
-module-browser bool
Enable browser history tracking (default true)
-module-shell bool
Enable bash/zsh history parsing (default true)
-module-screen bool
Enable periodic screen OCR [HEAVY] (default false)
-log-level string
Log level: debug, info, warn, error (default "info")Warning: Enabling
-module-screen will invoke the local Tesseract binary and spike CPU usage. Use with caution on battery power.2. Memory Layer (SQLite Schema)
AXIOM relies on a determinisitic memory layer to store context before AI evaluation. The schema ensures strict typing for telemetry events.
-- memory.sql
CREATE TABLE telemetry_events (
id TEXT PRIMARY KEY,
timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
source TEXT NOT NULL, -- e.g., 'browser', 'shell', 'window_manager'
payload JSON NOT NULL,
processed BOOLEAN DEFAULT 0
);
CREATE TABLE behavior_evaluations (
id TEXT PRIMARY KEY,
event_id TEXT,
axis_1_score REAL, -- Current Role Duties
axis_2_score REAL, -- Personal Goal Alignment
axis_3_score REAL, -- General Wellbeing
intent_label TEXT,
roast_generated BOOLEAN DEFAULT 0,
FOREIGN KEY(event_id) REFERENCES telemetry_events(id)
);
CREATE INDEX idx_unprocessed_events ON telemetry_events(timestamp) WHERE processed = 0;3. Local Ollama Initialization
AXIOM's brain is powered by local LLMs via Ollama. We use a quantized version of Qwen 2.5 for the evaluation pipeline.
Pulling the Model
$ ollama pull qwen2.5:3b pulling manifest pulling 8a3423... 100% ▕████████████████████████████████████████▏ 1.7 GB pulling 4a1323... 100% ▕████████████████████████████████████████▏ 12 KB verifying sha256 digest writing manifest removing any unused layers success
Starting the Inference Server
#!/bin/bash
# start-inference.sh
export OLLAMA_HOST="127.0.0.1:11434"
export OLLAMA_MAX_VRAM="4G"
echo "[*] Starting Ollama server daemon..."
systemctl start ollama
echo "[*] Pre-loading Qwen 2.5 context..."
curl -X POST http://$OLLAMA_HOST/api/generate -d '{
"model": "qwen2.5:3b",
"prompt": "SYSTEM: Initialize AXIOM evaluation protocol.",
"stream": false
}'
echo "[+] Inference layer online."