Ops Journal OpenClaw Plugin & Skill | ClawHub
Looking to integrate Ops Journal into your AI workflows? This free OpenClaw plugin from ClawHub helps you automate coding agents & ides tasks instantly, without having to write custom tools from scratch.
What this skill does
# ops-journal — Automated Ops Logging & Incident Timeline for OpenClaw Structured operational journal that captures deployments, incidents, changes, and decisions. Creates a searchable ops log with incident timeline reconstruction and automated postmortem generation. ## Quick Start ```bash # Initialize journal python3 scripts/journal.py init # Log an event python3 scripts/journal.py log "Upgraded nginx to 1.25" --category deploy python3 scripts/journal.py log "Disk cleanup, freed 5GB" --category maintenance --tags storage # Start an incident python3 scripts/journal.py incident open "API latency spike" --severity high # Resolve an incident python3 scripts/journal.py incident resolve INC-001 "Root cause: disk full on /var" # Search logs python3 scripts/journal.py search "nginx" --since 7d python3 scripts/journal.py search --category incident --severity high # Generate reports python3 scripts/journal.py summary --period week python3 scripts/journal.py timeline INC-001 # Export python3 scripts/journal.py export --format markdown --since 30d ``` ## Entry Categories | Category | Description | Auto-logged | |----------|------------|-------------| | `deploy` | Deployments, upgrades, rollbacks | Via hooks | | `incident` | Incidents, outages, degradations | Via watchdog integration | | `config` | Configuration changes | Via hooks | | `maintenance` | Scheduled maintenance, cleanup | Manual or cron | | `security` | Security events, audits, patches | Via security skills | | `note` | General observations, decisions | Manual | ## Severity Levels - `info` — Normal operations (default) - `warn` — Something worth noting - `high` — Important event requiring attention - `critical` — Major incident or outage ## Commands ### `log` — Create a journal entry ```bash python3 scripts/journal.py log "message" [--category CAT] [--severity SEV] [--tags tag1,tag2] ``` ### `incident` — Incident management ```bash python3 scripts/journal.py incident open "description" [--severity SEV] python3 scripts/journal.py incident resolve ID "resolution" python3 scripts/journal.py incident list [--status open|resolved|all] python3 scripts/journal.py incident show ID ``` ### `search` — Search journal entries ```bash python3 scripts/journal.py search [query] [--category CAT] [--severity SEV] [--since Nd|Nw|Nm] [--limit N] ``` ### `summary` — Generate period summary ```bash python3 scripts/journal.py summary [--period day|week|month] [--json] ``` ### `timeline` — Incident timeline ```bash python3 scripts/journal.py timeline ID [--format markdown|json] ``` ### `export` — Export journal ```bash python3 scripts/journal.py export [--format markdown|json|csv] [--since Nd] [--output file] ``` ### `stats` — Journal statistics ```bash python3 scripts/journal.py stats [--period month] ``` ## Output Modes - **Human:** Colored terminal output with category icons and severity highlighting - **JSON:** Machine-readable output for integration (`--json`) - **Markdown:** Report-ready markdown for sharing (`--format markdown`) - **CSV:** Spreadsheet-compatible export (`--format csv`) ## Integration with infra-watchdog When `infra-watchdog` detects an issue, ops-journal can auto-log it: ```bash # In a cron or hook: python3 scripts/journal.py log "Monitor CRITICAL: Gateway down" --category incident --severity critical ``` ## OpenClaw Cron Integration ``` # Daily summary at 09:00 python3 scripts/journal.py summary --period day --json # Weekly digest on Monday python3 scripts/journal.py summary --period week ``` ## Storage All data stored in `~/.openclaw/workspace/ops-journal/`: - `journal.db` — SQLite database with all entries - `incidents/` — Individual incident files (markdown) ## Files - `scripts/journal.py` — Main journal engine - `SKILL.md` — This file
Install
openclaw skills install @mariusfit/ops-journalnpx clawhub@latest install ops-journalFull SKILL.md
Open originalSKILL.md content below is scrollable.
ops-journal — Automated Ops Logging & Incident Timeline for OpenClaw
Structured operational journal that captures deployments, incidents, changes, and decisions. Creates a searchable ops log with incident timeline reconstruction and automated postmortem generation.
Quick Start
# Initialize journal
python3 scripts/journal.py init
# Log an event
python3 scripts/journal.py log "Upgraded nginx to 1.25" --category deploy
python3 scripts/journal.py log "Disk cleanup, freed 5GB" --category maintenance --tags storage
# Start an incident
python3 scripts/journal.py incident open "API latency spike" --severity high
# Resolve an incident
python3 scripts/journal.py incident resolve INC-001 "Root cause: disk full on /var"
# Search logs
python3 scripts/journal.py search "nginx" --since 7d
python3 scripts/journal.py search --category incident --severity high
# Generate reports
python3 scripts/journal.py summary --period week
python3 scripts/journal.py timeline INC-001
# Export
python3 scripts/journal.py export --format markdown --since 30d
Entry Categories
| Category | Description | Auto-logged |
|---|---|---|
deploy |
Deployments, upgrades, rollbacks | Via hooks |
incident |
Incidents, outages, degradations | Via watchdog integration |
config |
Configuration changes | Via hooks |
maintenance |
Scheduled maintenance, cleanup | Manual or cron |
security |
Security events, audits, patches | Via security skills |
note |
General observations, decisions | Manual |
Severity Levels
info— Normal operations (default)warn— Something worth notinghigh— Important event requiring attentioncritical— Major incident or outage
Commands
log — Create a journal entry
python3 scripts/journal.py log "message" [--category CAT] [--severity SEV] [--tags tag1,tag2]
incident — Incident management
python3 scripts/journal.py incident open "description" [--severity SEV]
python3 scripts/journal.py incident resolve ID "resolution"
python3 scripts/journal.py incident list [--status open|resolved|all]
python3 scripts/journal.py incident show ID
search — Search journal entries
python3 scripts/journal.py search [query] [--category CAT] [--severity SEV] [--since Nd|Nw|Nm] [--limit N]
summary — Generate period summary
python3 scripts/journal.py summary [--period day|week|month] [--json]
timeline — Incident timeline
python3 scripts/journal.py timeline ID [--format markdown|json]
export — Export journal
python3 scripts/journal.py export [--format markdown|json|csv] [--since Nd] [--output file]
stats — Journal statistics
python3 scripts/journal.py stats [--period month]
Output Modes
- Human: Colored terminal output with category icons and severity highlighting
- JSON: Machine-readable output for integration (
--json) - Markdown: Report-ready markdown for sharing (
--format markdown) - CSV: Spreadsheet-compatible export (
--format csv)
Integration with infra-watchdog
When infra-watchdog detects an issue, ops-journal can auto-log it:
# In a cron or hook:
python3 scripts/journal.py log "Monitor CRITICAL: Gateway down" --category incident --severity critical
OpenClaw Cron Integration
# Daily summary at 09:00
python3 scripts/journal.py summary --period day --json
# Weekly digest on Monday
python3 scripts/journal.py summary --period week
Storage
All data stored in ~/.openclaw/workspace/ops-journal/:
journal.db— SQLite database with all entriesincidents/— Individual incident files (markdown)
Files
scripts/journal.py— Main journal engineSKILL.md— This file