feat: auto-regenerate skills stock-take + add 330-skill inventory

The skills-index page had drifted badly (claimed 66 skills; 330 are actually
installed). Regenerate it from the live skill tree and add an automated
regeneration script + related cron so it can never go stale again.

- regenerate-skills-index.sh: full stock-take (inventory -> quartz build -> deploy)
- systems/skills-index.md: rebuilt with all 330 skills across 26 categories
- .gitignore: fix stray literal chars, ignore build artifacts
This commit is contained in:
Tony0410
2026-08-15 23:53:55 +08:00
parent 84f52de158
commit b12d8b5e3d
3 changed files with 526 additions and 59 deletions
+5 -1
View File
@@ -1 +1,5 @@
node_modules/\npublic/\npackage-lock.json\npackage.json
node_modules/
public/
package-lock.json
package.json
*.log
+119
View File
@@ -0,0 +1,119 @@
#!/bin/bash
# regenerate-skills-index.sh
# Stock-take: regenerate systems/skills-index.md from the live skill tree,
# rebuild the Quartz site, and redeploy. Run on a schedule so the wiki never drifts.
set -euo pipefail
WIKI="/home/hermes/workspace/agent-estate-wiki"
QUARTZ="/home/hermes/workspace/quartz-temp"
SKILLS="/home/hermes/.hermes/skills"
echo "[$(date -Is)] Starting skills stock-take"
# 1. Regenerate skills-index.md from the live skill tree
python3 - "$SKILLS" "$WIKI/systems/skills-index.md" <<'PY'
import sys, re
from collections import defaultdict
from pathlib import Path
from datetime import date
skills_root = Path(sys.argv[1])
out_path = Path(sys.argv[2])
skill_files = list(skills_root.rglob('SKILL.md'))
skills = defaultdict(list)
for f in skill_files:
rel = f.relative_to(skills_root)
parts = rel.parts
if len(parts) >= 3:
cat, name = parts[0], parts[1]
elif len(parts) == 2:
cat, name = 'uncategorized', parts[0]
else:
continue
desc = ''
try:
content = f.read_text(errors='ignore')
m = re.search(r'^description:\s*(.+)$', content[:2000], re.M)
if m:
desc = m.group(1).strip().strip('"').strip("'")[:120]
except Exception:
pass
skills[cat].append((name, desc))
total = sum(len(v) for v in skills.values())
L = []
L.append('---')
L.append('title: Installed Skills')
L.append('type: system')
L.append('status: active')
L.append('created: 2026-07-22')
L.append(f'updated: {date.today().isoformat()}')
L.append(f'verified_on: {date.today().isoformat()}')
L.append('confidence: high')
L.append('tags: [skills, hermes]')
L.append('sources: []')
L.append('---')
L.append('')
L.append('# Installed Skills')
L.append('')
L.append(f'**Total installed: {total} skills** in `~/.hermes/skills/`.')
L.append('')
L.append('This page is auto-regenerated from the live skill inventory. Do not hand-edit.')
L.append('')
L.append('## Stock-take notes')
L.append('- Category names come from the directory structure under `~/.hermes/skills/` (`category/skill/SKILL.md`).')
L.append('- Skills stored directly under `~/.hermes/skills/` (no subfolder) are grouped under `uncategorized`.')
L.append('- Deeper nested paths (e.g. `mlops/evaluation`) are grouped by their top-level category.')
L.append('')
priority = ['core-hermes','autonomous-ai-agents','hermes','devops','productivity','creative','software-development','research','email','mlops','github','apple','frontend','media','note-taking','web-development','smart-home','mcp','uncategorized']
def cat_order(cat):
try: return priority.index(cat)
except ValueError: return 100 + len(priority)
cats = sorted(skills.items(), key=lambda x: (cat_order(x[0]), -len(x[1])))
for cat, items in cats:
nice = cat.replace('-', ' ').title()
L.append(f'## {nice} ({len(items)})')
L.append('')
for name, desc in sorted(items):
L.append(f'- `{name}` — {desc}' if desc else f'- `{name}`')
L.append('')
L.append('## Related')
L.append('- [[systems/hermes-agent]]')
L.append('- [[systems/omniroute]]')
L.append('')
out_path.write_text('\n'.join(L))
print(f"Regenerated {out_path} with {total} skills across {len(skills)} categories")
PY
# 2. Sync content into Quartz
rm -rf "$QUARTZ/content" "$QUARTZ/public"
mkdir -p "$QUARTZ/content"
python3 - "$WIKI" "$QUARTZ/content" <<'PY'
import shutil, sys
from pathlib import Path
src = Path(sys.argv[1]); dst = Path(sys.argv[2])
skip = {'.git','public','node_modules','quartz-site','serve.py','.gitignore','package.json','package-lock.json','.codewiki-state.json'}
for item in src.iterdir():
if item.name in skip: continue
if item.is_dir():
shutil.copytree(item, dst / item.name, dirs_exist_ok=True)
elif item.suffix == '.md':
shutil.copy2(item, dst / item.name)
PY
# 3. Build Quartz
cd "$QUARTZ"
npx quartz build >/tmp/quartz-build.log 2>&1 || { echo "Quartz build failed"; tail -20 /tmp/quartz-build.log; exit 1; }
# 4. Deploy to public
rm -rf "$WIKI/public"
mkdir -p "$WIKI/public"
cp -a "$QUARTZ/public/." "$WIKI/public/"
echo "[$(date -Is)] Completed: $(find "$WIKI/public" -name '*.html' | wc -l) html files deployed"
+402 -58
View File
@@ -3,8 +3,8 @@ title: Installed Skills
type: system
status: active
created: 2026-07-22
updated: 2026-07-25
verified_on: 2026-07-25
updated: 2026-08-15
verified_on: 2026-08-15
confidence: high
tags: [skills, hermes]
sources: []
@@ -12,79 +12,423 @@ sources: []
# Installed Skills
## Inventory
Total installed: 66 skills in `~/.hermes/skills/`.
**Total installed: 330 skills** in `~/.hermes/skills/`.
## Categorized Active Skills
This page is auto-regenerated from the live skill inventory. Do not hand-edit.
### Core Hermes
- `hermes` — Core agent skill
## Stock-take notes
- Category names come from the directory structure under `~/.hermes/skills/` (`category/skill/SKILL.md`).
- Skills stored directly under `~/.hermes/skills/` (no subfolder) are grouped under `uncategorized`.
- Deeper nested paths (e.g. `mlops/evaluation`) are grouped by their top-level category.
### Providers & Routing
- `omniroute` — OmniRoute routing
- `omniroute-ops` — OmniRoute diagnostics and combo management
## Autonomous Ai Agents (8)
### Memory
- `chromadb` — ChromaDB vector store
- `chromadb-preflight` — ChromaDB RAG preflight
- `chromadb-skills-rag` — Skills RAG via ChromaDB
- `antigravity-cli` — Operate the Antigravity CLI (agy): plugins, auth, sandbox.
- `claude-code` — Delegate coding to Claude Code CLI (features, PRs).
- `codex` — Delegate coding to OpenAI Codex CLI (features, PRs).
- `computer-use` — Drive the desktop in the background without stealing focus.
- `hermes-agent` — Use, configure, theme, extend, and orchestrate Hermes Agent.
- `merge-reconciler` — Neutral third-party resolution of agent merge conflicts.
- `opencode` — Delegate coding to OpenCode CLI (features, PR review).
- `openhands` — Delegate coding to OpenHands CLI (model-agnostic, LiteLLM).
### Browser / RPA
- `computer-use` — Desktop GUI automation
## Hermes (5)
### DevOps / Homelab
- `devops` — Umbrella for service operations
- `devops-homelab-architecture-live-probe` — Live homelab diagram via probes
- `devops-proxmox-operations` — Proxmox VE REST/SSH operations
- `devops-service-management` — Miscellaneous service ops
- `devops-tailscale-web-routing` — Tailscale web routing
- `cloudflare-tunnel-ops` — Cloudflare Tunnels
- `tailscale-serve-ops` — Tailscale Serve
- `tailscale-ops` — Tailscale configuration
- `hermes-personality-soulmd` — Edit and verify Hermes Agent's core personality/identity file (SOUL.md). Use when the user wants to change 'who Hermes i
- `hermes-telegram-miniapp` — Deploy and operate the standalone Hermes Telegram Mini App repo onto a Hermes Agent LXC/VM. Covers the full CT460 workfl
- `hermes-tts-configuration` — Set up Hermes TTS: providers, voice, persona, config edits.
- `hermes-ui-ops` — Operate Hermes desktop UI — Vite, HTTPS, mic, systemd.
- `soul-md-design` — Research SOUL.md patterns for structured agent personas.
### Messaging
- `email` — Email from terminal
- `email-himalaya` — Himalaya CLI IMAP/SMTP
## Devops (127)
### Job / Career
- `job-hunting` — Career transition coaching
- `job-hunting-assistance` — End-to-end job hunting support
- `job-search-automation` — Autonomous job board scraper
- `job-tracker-enrichment` — Notion job tracker enrichment
- `abyss-ios-pairing` — Pair an iPhone with this Hermes instance via The Abyss iOS app — Tailscale Funnel/Serve + API key + QR. Detects host OS
- `agent-extension-audit` — >
- `agent-observability` — Observability and evaluation for Hermes agent tasks: event logging, memory attribution, repair-memory tracking, failure
- `agent-stack-weekly-review` — Weekly health review for the Hermes+Mnemosyne agent stack: read-only data collection from governance, observability, Mne
- `agentmail-webhook-tailscale` — Real-time AgentMail webhooks via Tailscale funnel push.
- `anthropic-spend-forensics` — Use when unexplained Anthropic spend needs attribution.
- `browser-automation-recovery` — >
- `browser-backend-verification` — Verify active browser backend and CDP connectivity.
- `browser-tab-lifecycle-and-recovery` — >-
- `camofox-browser-automation` — Operate the Camofox headless browser service for authenticated scraping, periodic data extraction, and browser automatio
- `camofox-pitfalls` — Runtime pitfalls and edible fixes for the Camofox browser REST API on Anthony's homelab. Complements camofox-browser-aut
- `camoufox-remote-websocket` — Expose Camoufox as a remote Playwright WebSocket server for cross-host browser automation. Use when another agent needs
- `chat4000-ops` — Operate, diagnose, and pair the chat4000 Hermes plugin — the native iPhone/Mac app for Hermes. Covers CLI commands, devi
- `cloudflare-ops` — Operate Cloudflare services — DNS, Tunnels, R2 Object Storage (S3-compatible), API authentication, and domain management
- `codex-via-cliproxy` — Run the OpenAI Codex CLI (codex) on a machine where chatgpt.com/backend-api is geo-blocked (HTTP 451) or the stored OAut
- `container-cpu-forensics` — Find idle-CPU vampires: cgroup truth, crash loops.
- `crawlee-batch-scrape` — Lightweight batch URL scraping with Crawlee. Extracts markdown/text from multiple URLs in parallel. Low resource footpri
- `cron-job-maintenance` — Debug, fix, and harden Hermes cron jobs — particularly multi-step autonomous jobs where models skip or incompletely exec
- `cron-prompt-service-integration` — Authed-API cron prompts: wrap calls in helper scripts.
- `cronjob-prompt-hardening` — Use when hardening cronjob prompts against fabrication.
- `cross-profile-session-handoff` — Continue work from a dead or stuck Hermes specialist profile in the default/supervisor profile. Covers session dump insp
- `cua-computer-use` — Set up and operate cua-driver for GUI automation on headless Linux servers. Covers virtual display setup (Xtigervnc/Xvfb
- `cua-driver-lifecycle` — Manage cua-driver processes on Hermes VMs — diagnose runaway instances, implement idle-timeout wrappers, and configure H
- `cua-driver-linux-accessibility` — Fix AT-SPI bridge when computer_use returns 0x0 on Linux.
- `custom-dashboard-ops` — Operate or deploy the custom-dashboard on CT201.
- `dashboard-server-ops` — Operate, extend, and troubleshoot self-hosted Python HTTP API servers serving SPAs. Covers http.server-based dashboards,
- `docker-management` — Manage Docker containers, images, volumes, and Compose.
- `external-auth-script-integration` — Fix broken script authentication by redirecting to local helper scripts, preserving module APIs during rewrites, and ver
- `external-skill-integration` — Bring external skills, standalone CLI tools, and MCP server binaries from GitHub repos into Hermes — for Hermes skills u
- `free-web-tools` — >-
- `freshrss-intelligence-filter` — Intelligence-filter upgrade for FreshRSS midday cron: clusters articles by topic, flags urgent items, adds 'why this mat
- `gcp-vertex-ai-provider` — Configure Google Cloud Vertex AI as an inference provider in the homelab save service account credentials, test connec
- `gmail-imap-email-monitor` — Cron-friendly Gmail IMAP pattern for Hermes Agent: find new messages by UID range, parse headers robustly, detect urgenc
- `google-apis` — Google Gmail, Calendar, Drive, Docs, Sheets tools.
- `google-contacts-birthday-sync` — Sync Facebook birthdays to contacts services (Google Contacts, iCloud). Cross-references Facebook birthday data with Goo
- `guanaco-ops` — Operate Guanaco LLM proxy on CT205.
- `hermes-agent-install` — Install, reinstall, upgrade, and diagnose Hermes Agent installations. Covers the official installer (scripts/install.sh)
- `hermes-agent-ops` — Diagnose and fix problems with Hermes Agent's OWN runtime — the web UI (port 8787), the memory-ui dashboard plugin ('Hin
- `hermes-api-vault` — Manage Hermes plugin/agent API credentials stored in a Notion vault — query the vault, map entries to ~/.hermes/.env var
- `hermes-config-backup` — Use when Hermes' Gitea config backup is stale or missing.
- `hermes-config-diagnostics` — >-
- `hermes-cron-operations` — Operate, diagnose, and fix Hermes Agent scheduled cron jobs — list jobs, inspect configs, debug failures, manage scripts
- `hermes-cron-patterns` — Reliable cron job patterns for Hermes Agent. Covers prompt hardening, step enforcement, verification loops, subagent del
- `hermes-gateway-config-loading` — >-
- `hermes-gateway-ops` — Operate, diagnose, and troubleshoot the Hermes Agent messaging gateway — platform connections, config management, servic
- `hermes-instance-migration` — Audit one Hermes Agent instance's skills/state and port a curated subset (skills, scripts, data, cookies) to another ins
- `hermes-mattermost-integration` — Configure/troubleshoot Mattermost adapter for Hermes.
- `hermes-memory-systems` — Evaluate, configure, migrate, and troubleshoot Hermes Agent memory providers. Covers all 9 official providers (Hindsight
- `hermes-multi-agent` — Design, configure, and troubleshoot multi-agent Hermes setups using profiles, delegate_task, Kanban, and Telegram bot se
- `hermes-multiplex-telegram-ops` — Diagnose Hermes profile Telegram silence under multiplex.
- `hermes-plugin-live-verification` — Verify Hermes plugin enablement, hook registration, live event emission, dual-write consistency, and fallback evidence p
- `hermes-plugin-ops` — Install, configure, optimize, and troubleshoot Hermes Agent plugins — covers plugin installation via CLI, provider/routi
- `hermes-profile-ops` — Audit, diagnose, and optimize Hermes agent profiles. Covers systematic inspection of config.yaml, profile.yaml, SOUL.md,
- `hermes-profile-scoped-platform-troubleshooting` — Repair platform adapter mismatches across Hermes profiles.
- `hermes-provider-configuration` — Configure Hermes Agent inference providers and custom OpenAI-compatible endpoints. Use when the user asks to add/switch
- `hermes-routing-and-domains` — Route requests correctly across Hermes CT460's multi-service architecture. Covers Tailscale Serve, Cloudflare Tunnel, do
- `hermes-self-diagnosis` — >-
- `hermes-session-context-ops` — Use when Hermes desktop chats lose or blend context.
- `hermes-soul-forge` — Operate the Soul Forge plugin — manage community souls, import profile SOUL.md files from repos, verify profile sync, an
- `hermes-web-tools` — Use the web search + content-extraction capability already installed on this Hermes instance. Covers the built-in web_ex
- `hermes-webui-ops` — Operate, restart, and verify the standalone Hermes WebUI on port 8787 (NOT the official control UI — that's on 9119). Co
- `hindsight-docs` — Complete Hindsight documentation for AI agents. Use this to learn about Hindsight architecture, APIs, configuration, and
- `hindsight-import-mnemosyne` — Import memories from a Mnemosyne SQLite DB into self-hosted Hindsight (:8888). 6,658 chunks (episodic+gists+working+fact
- `hindsight-ops` — Hindsight memory system — self-hosted LIVE on :8888 (systemd hindsight.service; OmniRoute free-IA LLM + Google/Gemini em
- `hindsight-selfhost` — Self-host Hindsight bare-metal (no Docker) + official Control Plane dashboard. hindsight-all-slim + embedded pg0 + hybri
- `homarr-dashboard-management` — Manage Homarr v1 dashboard on runtipi — multi-board setup, permissions, schema validation, PVE integration, and master b
- `homarr-dashboard-ops` — >-
- `homelab-docker-update` — Audit, update, and maintain Docker containers running inside homelab LXCs/VMs — across runtipi, bare Docker hosts, and a
- `homelab-instance-migration` — Audit and migrate a Hermes Agent instance from a source (old/bloated) box to a target (lean) box. Covers skill auditing,
- `homelab-service-management` — Deploy, update, and troubleshoot services running as Docker containers or bare-metal on Anthony's homelab Tailscale node
- `homelab-virtual-desktop` — Build, persist, expose, and debug a viewable virtual desktop (TigerVNC + websockify + Tailscale serve + systemd) on the
- `job-board-scraping-reference` — Platform-specific scraping behaviors for Australian job boards (SEEK, Indeed, LinkedIn) including access patterns, salar
- `jobs-dashboard-server-ops` — Operate, debug, and extend the Notion-sourced job tracker dashboard (port 9099). Covers API routes, cover letter serving
- `kanban-orchestrator` — Decomposition playbook + anti-temptation rules for an orchestrator profile routing work through Kanban. The "don't do th
- `kanban-worker` — Pitfalls, examples, and edge cases for Hermes Kanban workers. The lifecycle itself is auto-injected into every worker's
- `linux-systemd-desktop` — |
- `litellm-openrouter-key-pooling` — Add additional OpenRouter API keys to a LiteLLM proxy setup as a pool, without replacing the existing key. Use when the
- `litellm-proxy-ops` — Manage a running LiteLLM proxy instance via its REST admin API — add/remove models, register new providers, update proxy
- `llm-model-diagnostics` — Diagnose LLM model quality issues: why a model feels 'dumb', responses get truncated, reasoning models return empty cont
- `llm-proxy-streaming` — Use when an agent surfaces raw SSE chunks as errors.
- `mattermost-ops` — Operate, diagnose, and maintain a self-hosted Mattermost server (native or LXC). Covers plugin management, Agents plugin
- `mattermost-platform-ops` — Debug Hermes Mattermost adapter: typing, delivery, auth.
- `mcp-agent-integration` — Install and wire local stdio MCP servers (e.g. SearXNG AI Kit) into the user's coding agents — Claude Code, Goose, OpenC
- `media-download-ops` — Operate homelab torrent clients via Web API.
- `memory-governance` — Govern durable memory writes for Hermes + Mnemosyne: audit admissions, lifecycle metadata, duplicate/contradiction check
- `mnemosyne-operations` — Operate, diagnose, and maintain Hermes Agent's native Mnemosyne memory system. Covers health checks, dream cycle consoli
- `multi-agent-git-ops` — Git push, rebase, and merge workflows for repos where multiple agents (Hermes, Nanobot, coding agents) commit. Covers Gi
- `nanobot-omniroute-skills` — Give Nanobot (CT333) access to OmniRoute's skills + tools via MCP. Approach A = add OmniRoute's streamable-HTTP MCP serv
- `nanobot-ops` — Operate, diagnose, and recover the Nanobot gateway service on Proxmox CT333 (clawtest). IP: 192.168.178.66. Access via P
- `nextcloud-ops` — Operate and recover Anthony's self-hosted Nextcloud (CT270, NextCloudPi). Covers the 503/outage diagnosis (maintenance m
- `obsidian-ops` — Operate, diagnose, and troubleshoot Anthony's Obsidian vault. For basic note read/write/search and evidence-based resear
- `omniroute-combo-troubleshooting` — Diagnose and fix OmniRoute model combos that disappear from the /v1/models catalog (and thus from the Hermes /model pick
- `omniroute-context-tuning` — >
- `omniroute-mcp-portal-cloudflare-auth` — Reference for authenticating Hermes to mcp-portal.martinwa.org/mcp via Cloudflare Access headers, plus Nando's config lo
- `omniroute-ops` — Operate, diagnose, and configure OmniRoute — Anthony's AI routing proxy. Covers database access, alias/routing diagnosti
- `omniroute-skill-caller` — Call any skill installed on the OmniRoute MCP server by NAME (e.g. "mattermost", "nanobot", "hermes-agent-framework") wi
- `omniroute-skill-execution` — Execute skills on an OmniRoute MCP server (the composure_statistic_module / omniroute endpoint). Covers the streamable-H
- `openclaw-ops` — Operate, diagnose, and configure the Open-Claw VM — Anthony's autonomous AI agent gateway node (QEMU VM 403). Covers con
- `pre-flight-investigation` — Check the target and this box before installing anything.
- `pve-lxc-intrusion-detection` — Detect cryptominers on a Proxmox LXC via pct exec.
- `pve-ops` — Proxmox VE operations via REST API and SSH. Covers guest management, disk reports, diagnostics, and credential-based API
- `qwenpaw-agent-operations` — Troubleshoot QwenPaw agents and model routing.
- `radar-jobs-dashboard` — Use when operating or extending the RADAR jobs dashboard.
- `readlater-ops` — Operate, deploy, and fix Anthony's self-hosted ReadLater app (Tony0410/readlater) — Next.js + SQLite in Docker on debian
- `runtipi-container-management` — Update, clean up, and troubleshoot Docker containers inside a Runtipi LXC running on a Proxmox VE host. Covers inventory
- `sdlc-review` — Review Kanban handoffs and route verified outcomes.
- `security-incident-response` — Investigate and remediate homelab security incidents.
- `self-hosted-app-deploy` — Deploy, update, and troubleshoot self-hosted Docker applications on Tailscale-connected homelab VMs. Covers the full lif
- `self-hosted-dashboard-deployment-verification` — Use when verifying dashboard deployments.
- `session-verification` — Verify session claims — check DB, not memory.
- `solutions-first-agent-conduct` — How this agent must behave when a task hits a wall or a tool fails — lead with the attempt and the fix, not the limitati
- `tailscale-cert-for-docker-https` — Fix tailnet HTTPS cert errors with trusted Tailscale certs.
- `tailscale-ops` — Operate and manage Tailscale configuration — Serve routes, Funnel, DNS, ACLs, and debugging. Covers adding/removing serv
- `tailscale-serve-route-management` — Manage Tailscale Serve routes on CT460 — the `--set-path` replaces-all-rules pitfall, the full route inventory, and the
- `tailscale-serve-routes` — Manage Tailscale Serve routes on CT460 atomically. Use when routes need adding, fixing, or verifying.
- `task-approach` — How the agent should approach any task given by Anthony — pre-work, skill loading, quality gates, and delivery standards
- `telegram-create-forum-topic` — Create a Telegram forum topic (thread) in a group/supergroup that has topics enabled. Wraps the Telegram Bot API's creat
- `tmux-config` — Configure and troubleshoot tmux — fix scroll/scrollback (mouse mode, history-limit, wheel bindings) and live-apply confi
- `tool-ecosystem-evaluation` — Evaluate external tools, plugins, skills, and integrations for Hermes Agent and Nanobot. Use when auditing free add-ons,
- `uber-eats-monitor` — Monitor an Uber Eats order and announce via Sonos when delivery is imminent. Supports timer-based tracking (confidence)
- `versioning-live-services` — Use when versioning a live service dir into a private repo.
- `vision-model-validation` — Validate and select free vision-capable models via OmniRoute for Hermes auxiliary.vision tool.
- `watchers` — Poll RSS, JSON APIs, and GitHub with watermark dedup.
- `web-content-extraction` — >-
- `weekly-comms-tracker` — Track all weekly communications sent to Anthony to prevent repetition across weeks. SQLite-backed with content hashing f
- `wiki-maintenance` — Maintain the systems wiki for staleness and drift.
- `zeroclaw-ops` — Operate, diagnose, and configure ZeroClaw — Anthony's autonomous AI daemon on Proxmox CT333. Covers config editing (TOML
### Content / Research
- `tech-ai-newsletter-digest` — Newsletter processing
- `media` — YouTube transcripts, GIF search, music generation
## Productivity (29)
### Productivity
- `productivity` — Document creation, presentations, spreadsheets
- `markdown-to-anywhere` — Cross-posting service
- `weekly-review` — Sunday weekly review cron
- `airtable` — Airtable REST API via curl. Records CRUD, filters, upserts.
- `box` — Box manages cloud files, sharing, search, and metadata.
- `briefing-visualization` — Research text → HTML briefing + PPTX deck.
- `cover-letter-generation` — Draft, render, and deliver styled cover letters for Anthony's job applications. Covers content, format selection, PDF/DO
- `custom-pet-authoring` — Create custom animated pet spritesheets for Hermes' petdex system. Covers the pet format spec, Pillow-based spritesheet
- `decision-briefing-dashboards` — Use when advice needs an offline decision dashboard.
- `document-to-action-items` — Extract cited obligations, deadlines, tasks from documents.
- `docx` — Create, read, edit, template, and review Word .docx files.
- `google-workspace` — Gmail, Calendar, Drive, Docs, Sheets via gws CLI or Python.
- `maps` — Geocode, POIs, routes, timezones via OpenStreetMap/OSRM.
- `meeting-action-items` — Turn meeting notes into cited decisions, owners, tickets.
- `nano-pdf` — Edit text in existing PDFs via natural-language prompts.
- `notion` — Notion API + ntn CLI: pages, databases, markdown, Workers.
- `notion-database-dedup` — Clean duplicates from Notion databases with quality scoring. Fetch all pages with pagination, compare by URL/company+rol
- `obsidian-git-sync` — >
- `obsidian-git-sync` — >
- `ocr-and-documents` — Extract text from PDFs/scans (pymupdf, marker-pdf).
- `pdf` — Create, read, merge, fill, and secure PDF files.
- `petdex` — Install and select animated petdex mascots for Hermes.
- `petdex-custom` — Create custom Hermes petdex pets by composing AI-generated or imported character art into spec-correct spritesheets. Com
- `powerpoint` — Create, read, edit .pptx decks with python-pptx.
- `product-price-monitor` — Watch product, flight, or listing prices; alert on target.
- `session-librarian` — Organize sessions by prompt: find, rename, archive, prune.
- `stratos-command-centre` — Run, verify, extend, and diagnose the Stratos command-centre dashboard and its backend.
- `teams-meeting-pipeline` — Teams meeting summaries, job replay, Graph subscriptions.
- `telegram-cron-table-formatting` — How to deliver tables/structured data to Telegram from a Hermes cron job (deliver='telegram') or regular chat message so
- `tui-widgets` — Author live widget apps for the Hermes TUI dock.
- `weekly-review-planning` — Weekly reset: commitments, stalled work, next-week plan.
- `xlsx` — Create, read, edit Excel .xlsx workbooks and CSVs.
### MCP / Skills Management
- `mcp` — MCP server tooling
- `mcp-agent-integration` — Local stdio MCP server wiring
## Creative (18)
### Unverified / Not Categorized
- 40+ skills not inspected in detail during this inventory
- Full list at `~/.hermes/skills/`
- `architecture-diagram` — Dark-themed SVG architecture/cloud/infra diagrams as HTML.
- `ascii-art` — ASCII art: pyfiglet, cowsay, boxes, image-to-ascii.
- `ascii-video` — ASCII video: convert video/audio to colored ASCII MP4/GIF.
- `baoyu-infographic` — Infographics: 21 layouts x 21 styles (信息图, 可视化).
- `claude-design` — Design one-off HTML artifacts (landing, deck, prototype).
- `comfyui` — Generate images, video, and audio via diffusion workflows.
- `creative-ideation` — Generate ideas via named methods from creative practice.
- `design-md` — Author/validate/export Google's DESIGN.md token spec files.
- `excalidraw` — Hand-drawn Excalidraw JSON diagrams (arch, flow, seq).
- `humanizer` — Humanize text: strip AI-isms and add real voice.
- `hyperframes` — Render MP4/WebM videos from HTML compositions.
- `manim-video` — Manim CE animations: 3Blue1Brown math/algo videos.
- `p5js` — p5.js sketches: gen art, shaders, interactive, 3D.
- `popular-web-designs` — 54 real design systems (Stripe, Linear, Vercel) as HTML/CSS.
- `pretext` — Build creative browser demos with DOM-free text layout.
- `sketch` — Throwaway HTML mockups: 2-3 design variants to compare.
- `songwriting-and-ai-music` — Songwriting craft and Suno AI music prompts.
- `touchdesigner-mcp` — Control TouchDesigner via twozero MCP.
## How category discovery works
## Software Development (17)
Skill categories are derived from the directory layout, not from Tool Search.
The first directory below `~/.hermes/skills/` becomes the category:
- `code-wiki` — Generate wiki docs + Mermaid diagrams for any codebase.
- `coding-router` — Routes substantial software-development tasks to OpenCode CLI by default and Codex CLI as fallback, while Hermes remains
- `dogfood` — Exploratory QA of web apps: find bugs, evidence, reports.
- `hermes-agent-skill-authoring` — Author in-repo SKILL.md files: frontmatter and structure.
- `in-repo-documentation` — Use for README and in-repository wiki documentation.
- `inspecting-hermes-desktop-dom` — Read the live Hermes desktop DOM/CSS over CDP.
- `node-inspect-debugger` — Debug Node.js via --inspect + Chrome DevTools Protocol CLI.
- `plan` — Write a markdown plan to .hermes/plans/; no execution.
- `python-debugpy` — Debug Python: pdb REPL + debugpy remote (DAP).
- `requesting-code-review` — Pre-commit review: security scan, quality gates, auto-fix.
- `rest-graphql-debug` — Debug REST/GraphQL APIs: status codes, auth, schemas, repro.
- `self-hosted-personal-dashboard` — >
- `simplify-code` — Parallel 4-agent cleanup of recent code changes.
- `spike` — Throwaway experiments to validate an idea before build.
- `subagent-driven-development` — Execute plans via delegate_task subagents (2-stage review).
- `systematic-debugging` — 4-phase root cause debugging: understand bugs before fixing.
- `test-driven-development` — TDD: enforce RED-GREEN-REFACTOR, tests before code.
- `~/.hermes/skills/devops/my-skill/SKILL.md` → category `devops`
- `~/.hermes/skills/my-skill/SKILL.md` → no category
## Research (16)
The skill's display name and discovery description come from the YAML
frontmatter in `SKILL.md`. Directory additions are detected automatically.
In-place edits may take up to 30 seconds to appear because the discovery cache
has a 30-second lifetime.
- `arxiv` — Search arXiv papers by keyword, author, category, or ID.
- `blocked-page-recovery` — Recover blocked/paywalled/WAF'd pages via fallbacks.
- `blogwatcher` — Monitor blogs and RSS/Atom feeds via blogwatcher-cli tool.
- `chat-export-parsing` — Parse chat/messaging-platform export files (Telegram MTProto message.json, WhatsApp exports, Slack/Discord JSON) into re
- `competitor-news-monitor` — Watch named companies for material news; cited digests.
- `grounded-citations` — Ground answers and documents in cited, verifiable sources.
- `llm-wiki` — Karpathy's LLM Wiki: build/query interlinked markdown KB.
- `local-dining-scene-monitor` — Monitor city restaurant openings weekly with dedup.
- `model-provider-comparison-research` — Use when comparing models inside an agent harness.
- `operations-wiki` — Operational wiki for personal AI agents, self-hosted infrastructure, model routing and automation.
- `polymarket` — Query Polymarket: markets, prices, orderbooks, history.
- `research-paper-writing` — Write ML papers for NeurIPS/ICML/ICLR: design→submit.
- `scrapling` — Scrape sites with stealth browsing and Cloudflare bypass.
- `searxng-search` — Free keyless meta-search aggregating 70+ engines.
- `social-web-sentiment-research` — Use for current social/web sentiment scans.
- `wikilink-audit` — Scan and fix broken [[wikilinks]] in an Obsidian vault or markdown knowledge base. Finds orphans, broken links, and temp
See [[systems/tool-search]] for the separate external-tool discovery system.
## Email (16)
- `agent-email-patterns` — Architecture patterns for AI agents that communicate over email -- why agents need dedicated inboxes rather than human e
- `agentmail` — Give the agent its own inbox: send and receive email.
- `agentmail-check-email` — Read, search, summarize, and triage AgentMail inboxes through the connected MCP server. Use for ANY request to look at,
- `agentmail-cli` — Operate AgentMail from a shell with the official CLI. Use when the user wants commands for listing or creating inboxes,
- `agentmail-manage-inboxes` — Create, list, inspect, update, or delete AgentMail inboxes through the connected MCP server. Use for ANY inbox lifecycle
- `agentmail-mcp` — Configure or troubleshoot the hosted AgentMail MCP server for Codex, Claude Code, Cursor, or another Streamable HTTP MCP
- `agentmail-rest-fallback` — AgentMail REST API operations for reading messages and downloading attachments when MCP tools are unavailable. Covers th
- `agentmail-sdk` — Deprecated alias of the agentmail skill, kept so existing installs and pinned URLs keep resolving. Prefer installing age
- `agentmail-send-email` — Draft, send, reply to, or forward email through the connected AgentMail MCP server. Use for ANY request to send, reply t
- `agentmail-toolkit` — Add AgentMail tools to agent frameworks with the TypeScript or Python AgentMail Toolkit. Use for Vercel AI SDK, LangChai
- `cron-email-briefing` — Produce structured email briefings from a cron job using IMAP (himalaya CLI). Covers the fallback workflow when no pre-i
- `email-for-ai-agents` — Deprecated alias of the agent-email-patterns skill, kept so existing installs and pinned URLs keep resolving. Prefer ins
- `email-inbox-triage` — Triage an inbox: prioritize threads, draft replies safely.
- `gmail-readonly-fetch` — Read-only email fetching from large Gmail inboxes via himalaya CLI or Python imaplib — cron-safe, paginated, with LLM ha
- `himalaya` — Himalaya CLI: IMAP/SMTP email from terminal.
- `realtime-email-monitor` — >-
## Mlops (10)
- `chroma` — Embedding database for RAG and semantic search.
- `clip` — Zero-shot image classification and image-text search.
- `evaluation` — W&B: log ML experiments, sweeps, model registry, dashboards.
- `evaluation` — lm-eval-harness: benchmark LLMs (MMLU, GSM8K, etc.).
- `huggingface-hub` — HuggingFace hf CLI: search/download/upload models, datasets.
- `inference` — llama.cpp local GGUF inference + HF Hub model discovery.
- `inference` — vLLM: high-throughput LLM serving, OpenAI API, quantization.
- `models` — AudioCraft: MusicGen text-to-music, AudioGen text-to-sound.
- `models` — SAM: zero-shot image segmentation via points, boxes, masks.
- `qdrant` — Vector search engine for production RAG systems.
## Github (7)
- `codebase-inspection` — Inspect codebases w/ pygount: LOC, languages, ratios.
- `github-auth` — GitHub auth setup: HTTPS tokens, SSH keys, gh CLI login.
- `github-code-review` — Review PRs: diffs, inline comments via gh or REST.
- `github-issue-to-pr` — Carry a GitHub issue to a verified PR with honest CI state.
- `github-issues` — Create, triage, label, assign GitHub issues via gh or REST.
- `github-pr-workflow` — GitHub PR lifecycle: branch, commit, open, CI, merge.
- `github-repo-management` — Clone/create/fork repos; manage remotes, releases.
## Apple (4)
- `apple-notes` — Manage Apple Notes via memo CLI: create, search, edit.
- `apple-reminders` — Apple Reminders via remindctl: add, list, complete.
- `findmy` — Track Apple devices/AirTags via FindMy.app on macOS.
- `imessage` — Send and receive iMessages/SMS via the imsg CLI on macOS.
## Frontend (4)
- `design-alignment` — >-
- `impeccable` — Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt,
- `landing-dashboard-reference` — >
- `pixel-perfect-iteration` — >-
## Media (4)
- `gif-search` — Search/download GIFs from Tenor via curl + jq.
- `heartmula` — HeartMuLa: Suno-like song generation from lyrics + tags.
- `songsee` — Audio spectrograms/features (mel, chroma, MFCC) via CLI.
- `youtube-content` — YouTube transcripts to summaries, threads, blogs.
## Note Taking (3)
- `multi-agent-estate-knowledge` — Use for shared docs across multiple agent instances.
- `obsidian-vault-from-git` — Clone, initialise, or integrate a pre-existing Obsidian vault stored on Gitea or GitHub. Covers credential retrieval, gi
- `obsidian-vault-manager` — Manage Obsidian vaults — vault discovery, git sync, .obsidian/ state files, plugin config, rename safety, and troublesho
## Web Development (2)
- `interactive-html-pages` — Build self-contained interactive HTML pages served from a local HTTP server. Covers single-file pages, fetching JSON fro
- `page-agent` — Embed an in-page natural-language GUI copilot in web apps.
## Smart Home (2)
- `openhue` — Control Philips Hue lights, scenes, rooms via OpenHue CLI.
- `sonos` — >
## Mcp (2)
- `fastmcp` — Build, test, and deploy Python MCP servers.
- `mcporter` — List, auth, and call MCP servers/tools from the terminal.
## Uncategorized (48)
- `chromadb` — >-
- `chromadb-preflight` — >
- `chromadb-skills-rag` — >
- `clean-architecture` — Structure software around the Dependency Rule: source code dependencies point inward from frameworks to use cases to ent
- `clean-code` — Write readable, maintainable code through disciplined naming, small functions, and clean error handling. Use when the us
- `cloudflare-tunnel-ops` — Operate Cloudflare Tunnels to expose internal services through public domains, bypassing network restrictions (e.g. work
- `cookie-jar-import` — Import browser cookies into Camofox for auth sessions.
- `ddia-systems` — Design data systems by understanding storage engines, replication, partitioning, transactions, and consistency models. U
- `devops`
- `devops-homelab-architecture-live-probe` — Build an accurate homelab architecture diagram by probing live infrastructure first, especially Proxmox VE and Tailscale
- `devops-proxmox-operations` — Use when operating Proxmox VE hosts, LXCs, VMs, storage, API tokens, noVNC consoles, DNS/hosts overrides, offline disk e
- `devops-service-management` — Umbrella for miscellaneous service operations skills — event logistics automation, Tailscale Serve, virtual desktop/X11,
- `devops-tailscale-web-routing` — Use when deploying or repairing self-hosted web apps behind Tailscale Serve/Funnel, especially path-prefix routing, stat
- `devops-telegram-bot-api-self-hosted` — |
- `domain-driven-design` — Model software around the business domain using bounded contexts, aggregates, and ubiquitous language. Use when the user
- `email-himalaya` — Himalaya CLI: IMAP/SMTP email from terminal. Covers configuration, cron automation, urgency assessment, and Gmail quirks
- `groktocrawl-deployment` — Self-hosted deployment guide for GroktoCrawl as a Firecrawl v2 replacement — resource requirements, port configuration,
- `hermes-api-vault` — Manage Hermes plugin/agent API credentials stored in a Notion vault — query the vault, map entries to ~/.hermes/.env var
- `hermes-desktop-plugins` — Write desktop app plugins that add UI panes and commands.
- `hermes-gateway-troubleshooting` — Gateway process management, MCP fleet debugging, post-migration verification, and config hardening for Hermes Agent LXC/
- `hermes-mcp-troubleshooting` — Diagnose and fix Hermes Agent MCP server connection issues, config corruption, startup banner false negatives, and relat
- `hermes-themes` — Author a Hermes color theme that skins every surface.
- `interactive-reference-pages` — Build clean, mobile-first, interactive HTML reference and checklist pages with proper dark-theme contrast, localStorage
- `ios-hig-design` — Design native iOS interfaces following Apple Human Interface Guidelines. Use when the user mentions "iPhone app", "iPad
- `job-hunting` — Comprehensive career transition coaching — research the user's background, discover opportunities, automate daily job-ra
- `job-hunting-assistance` — End-to-end job hunting support for a professional: research the user's background from available sources, locate existin
- `job-search-automation` — Operate, debug, and extend an autonomous job-board scraping pipeline (cron -> web_search_plus/web_extract_plus -> Camofo
- `job-tracker-enrichment` — Maintain and enrich Anthony's Notion "Job Opportunities 2026" Perth marketing/communications job tracker. Covers the bro
- `litprog`
- `markdown-to-anywhere` — On-demand cross-posting service: Anthony tells me to post a .md file to a platform, I format it appropriately and delive
- `officecli` — Create, analyze, proofread, and modify Office documents (.docx, .xlsx, .pptx) using the officecli CLI tool. Use when the
- `pragmatic-programmer` — Apply meta-principles of software craftsmanship: DRY, orthogonality, tracer bullets, and design by contract. Use when th
- `proxmox-operations` — Use when operating Proxmox VE hosts, LXCs, VMs, storage, API tokens, noVNC consoles, DNS/hosts overrides, offline disk e
- `rclone-mount-ops` — Fix rclone FUSE mount recursion and CPU issues on PVE.
- `refactoring-patterns` — Apply named refactoring transformations to improve code structure without changing behavior. Use when the user mentions
- `refactoring-ui` — Audit and fix visual hierarchy, spacing, color, and depth in web UIs. Use when the user mentions "my UI looks off" (or a
- `restaurant-menu-extraction` — Extract structured menu data (items, prices, ratings, delivery info) from food delivery sites like Uber Eats using Camof
- `software-design-philosophy` — Manage software complexity through deep modules, information hiding, and strategic programming. Use when the user mentio
- `system-design` — Design scalable distributed systems using structured approaches for load balancing, caching, database scaling, and messa
- `tailscale-serve-ops` — Operate Tailscale Serve to expose local web content through the tailnet. Covers route setup, backend management, path-pr
- `tech-ai-newsletter-digest` — Process and analyze tech/AI newsletter emails from Anthony's inbox using `himalaya` CLI, synthesizing key stories into s
- `ux-heuristics` — Evaluate and improve interface usability using heuristic analysis. Use when the user mentions "usability audit", "users
- `video-translation-dubbing` — Translate and dub video audio to another language.
- `web-design-reviewer` — This skill enables visual inspection of websites running locally or remotely to identify and fix design issues. Triggers
- `web-typography` — Select, pair, and implement typefaces for web projects. Use when the user mentions "font pairing", "which typeface", "li
- `weekly-review` — Sunday 18:00 AWST cron that compiles a weekly review: job application stats from Notion, cron health from SQLite executi
- `working-with-legacy-code` — Safely change and test untested codebases using Feathers'' "Working Effectively with Legacy Code". Use when the user men
- `yuanbao` — Yuanbao (元宝) groups: @mention users, query info/members.
## Finance (1)
- `3-statement-model` — Build integrated IS/BS/CF financial workbooks in Excel.
## Omniroute (1)
- `omniroute-skills` — Interact with OmniRoute's Skills framework — list, install, enable, execute, and debug skills via REST API and MCP tools
## Social Media (1)
- `xurl` — X/Twitter via xurl CLI: raw post search, posting, DM, media.
## Web (1)
- `wiki-web-hosting` — Publish Markdown wikis as Quartz sites over Tailscale.
## Job Hunting (1)
- `seek-extraction-patterns` — Extract salary, closing dates, and job details from SEEK (au.seek.com) listings at scale. Use when enriching a batch of
## Conduct (1)
- `simple-directives-execution` — Execute now when told 'just do X' — no investigation.
## Cron (1)
- `cron-digest-formatting` — Use when formatting cron Telegram news digests for Anthony.
## Data Science (1)
- `jupyter-live-kernel` — Iterative Python via live Jupyter kernel (hamelnb).
## Related
- [[systems/hermes-agent]]
- [[messaging-integrations]]
- [[systems/tool-search]]
- [[systems/omniroute]]