app-deployer
Deploy and manage user applications as managed systemd services
NixOS generation-aware debugging and time-travel. Correlate system state changes with application failures. Query "what changed and when."
$ npx -y skills add bolivian-peru/os-moda --skill generation-timeline --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/generation-timelineContext preview
The summary Claude sees to decide when to auto-load this skill.
NixOS generation-aware debugging and time-travel. Correlate system state changes with application failures. Query "what changed and when."
name: generation-timeline description: > NixOS generation-aware debugging and time-travel. Correlate system state changes with application failures. Query "what changed and when." tools: - shell_exec - event_log - journal_logs - memory_recall - memory_store activation: auto
Correlate NixOS generations + audit ledger + journal logs to debug issues across time.
When a user reports "something broke":
shell_exec({ command: "nixos-rebuild list-generations 2>/dev/null | tail -10" })event_log({ limit: 30 })journal_logs({ priority: "err", since: "24 hours ago", lines: 50 })memory_recall({ query: "config change rebuild generation", timeframe: "7d" })Present a unified view:
Timeline — Last 48 Hours: Feb 19 09:30 Gen 48 applied (nixpkgs update: OpenSSL 3.1→3.2) Feb 19 09:47 ERROR: app returned first 502 (17 min after gen 48) Feb 19 09:48 WARNING: 12 more 502s in next minute Feb 19 09:52 agentd detected service degradation (audit #134) Feb 19 10:00 You: "something broke" Root cause: Gen 48 updated OpenSSL, breaking TLS cipher used by your app. Options: (a) Rollback to Gen 47 (reverts everything since) (b) Pin OpenSSL 3.1 for your app only (overlay) (c) Update app TLS config (best long-term fix)
When asked "what does this server do" or "explain the setup":
shell_exec({ command: "cat /etc/nixos/configuration.nix" })
shell_exec({ command: "nixos-rebuild list-generations | head -5" })
shell_exec({ command: "systemctl list-units --type=service --state=running --no-pager" })Generate a plain-English overview:
Your Server — osModa (Hetzner CX22) Services running: - agentd (osModa system daemon) — since boot - OpenClaw Gateway (AI agent interface) — port 18789 - SSH (key-auth only) — port 22 - nginx (reverse proxy) — ports 80, 443 Architecture: Internet → nginx (443) → OpenClaw (18789) SSH → direct access (22) NixOS: Generation 50, built Feb 20 Resources: 2 CPU, 7.6GB RAM, 80GB disk (38% used) Uptime: 12 hours History: 50 generations over 18 days. Key changes stored in audit ledger (134 entries).
When asked to create a staging copy or export the config:
shell_exec({ command: "cat /etc/nixos/configuration.nix" })
shell_exec({ command: "cat /etc/nixos/hardware-configuration.nix" })Generate a self-contained flake that reproduces this machine:
The audit ledger is the source of truth for "why" something was done. NixOS generations are the source of truth for "what" the system state is. Journal logs are the source of truth for "when" things happened.
Always correlate all three when debugging.
An operating system built for AI agents — talk to your NixOS server instead of SSH-ing in. Typed, audited tool access with atomic rollback on every change. Research-grade; run it on a disposable box, not production.
Deploy and manage user applications as managed systemd services
Deploy and manage AI agent workloads with GPU checks, API key management, and health monitoring
Detect configuration drift — manual changes that exist outside NixOS management. Offer to bring imperative changes into…
Manage files and directories. List, find, search contents, read, write, move, copy, delete, permissions. Present directory…
Black box flight recorder for the server. Capture system state snapshots for forensic analysis after incidents. Continuous…
Generate a concise daily infrastructure briefing. Covers: service health, resource usage, security events, overnight incidents,…