* docs: deep audit — fix stale config keys, missing commands, and registry drift Cross-checked ~80 high-impact docs pages (getting-started, reference, top-level user-guide, user-guide/features) against the live registries: hermes_cli/commands.py COMMAND_REGISTRY (slash commands) hermes_cli/auth.py PROVIDER_REGISTRY (providers) hermes_cli/config.py DEFAULT_CONFIG (config keys) toolsets.py TOOLSETS (toolsets) tools/registry.py get_all_tool_names() (tools) python -m hermes_cli.main <subcmd> --help (CLI args) reference/ - cli-commands.md: drop duplicate hermes fallback row + duplicate section, add stepfun/lmstudio to --provider enum, expand auth/mcp/curator subcommand lists to match --help output (status/logout/spotify, login, archive/prune/ list-archived). - slash-commands.md: add missing /sessions and /reload-skills entries + correct the cross-platform Notes line. - tools-reference.md: drop bogus '68 tools' headline, drop fictional 'browser-cdp toolset' (these tools live in 'browser' and are runtime-gated), add missing 'kanban' and 'video' toolset sections, fix MCP example to use the real mcp_<server>_<tool> prefix. - toolsets-reference.md: list browser_cdp/browser_dialog inside the 'browser' row, add missing 'kanban' and 'video' toolset rows, drop the stale '38 tools' count for hermes-cli. - profile-commands.md: add missing install/update/info subcommands, document fish completion. - environment-variables.md: dedupe GMI_API_KEY/GMI_BASE_URL rows (kept the one with the correct gmi-serving.com default). - faq.md: Anthropic/Google/OpenAI examples — direct providers exist (not just via OpenRouter), refresh the OpenAI model list. getting-started/ - installation.md: PortableGit (not MinGit) is what the Windows installer fetches; document the 32-bit MinGit fallback. - installation.md / termux.md: installer prefers .[termux-all] then falls back to .[termux]. - nix-setup.md: Python 3.12 (not 3.11), Node.js 22 (not 20); fix invalid 'nix flake update --flake' invocation. - updating.md: 'hermes backup restore --state pre-update' doesn't exist — point at the snapshot/quick-snapshot flow; correct config key 'updates.pre_update_backup' (was 'update.backup'). user-guide/ - configuration.md: api_max_retries default 3 (not 2); display.runtime_footer is the real key (not display.runtime_metadata_footer); checkpoints defaults enabled=false / max_snapshots=20 (not true / 50). - configuring-models.md: 'hermes model list' / 'hermes model set ...' don't exist — hermes model is interactive only. - tui.md: busy_indicator -> tui_status_indicator with values kaomoji|emoji|unicode|ascii (not kawaii|minimal|dots|wings|none). - security.md: SSH backend keys (TERMINAL_SSH_HOST/USER/KEY) live in .env, not config.yaml. - windows-wsl-quickstart.md: there is no 'hermes api' subcommand — the OpenAI-compatible API server runs inside hermes gateway. user-guide/features/ - computer-use.md: approvals.mode (not security.approval_level); fix broken ./browser-use.md link to ./browser.md. - fallback-providers.md: top-level fallback_providers (not model.fallback_providers); the picker is subcommand-based, not modal. - api-server.md: API_SERVER_* are env vars — write to per-profile .env, not 'hermes config set' which targets YAML. - web-search.md: drop web_crawl as a registered tool (it isn't); deep-crawl modes are exposed through web_extract. - kanban.md: failure_limit default is 2, not '~5'. - plugins.md: drop hard-coded '33 providers' count. - honcho.md: fix unclosed quote in echo HONCHO_API_KEY snippet; document that 'hermes honcho' subcommand is gated on memory.provider=honcho; reconcile subcommand list with actual --help output. - memory-providers.md: legacy 'hermes honcho setup' redirect documented. Verified via 'npm run build' — site builds cleanly; broken-link count went from 149 to 146 (no regressions, fixed a few in passing). * docs: round 2 audit fixes + regenerate skill catalogs Follow-up to the previous commit on this branch: Round 2 manual fixes: - quickstart.md: KIMI_CODING_API_KEY mentioned alongside KIMI_API_KEY; voice-mode and ACP install commands rewritten — bare 'pip install ...' doesn't work for curl-installed setups (no pip on PATH, not in repo dir); replaced with 'cd ~/.hermes/hermes-agent && uv pip install -e ".[voice]"'. ACP already ships in [all] so the curl install includes it. - cli.md / configuration.md: 'auxiliary.compression.model' shown as 'google/gemini-3-flash-preview' (the doc's own claimed default); actual default is empty (= use main model). Reworded as 'leave empty (default) or pin a cheap model'. - built-in-plugins.md: added the bundled 'kanban/dashboard' plugin row that was missing from the table. Regenerated skill catalogs: - ran website/scripts/generate-skill-docs.py to refresh all 163 per-skill pages and both reference catalogs (skills-catalog.md, optional-skills-catalog.md). This adds the entries that were genuinely missing — productivity/teams-meeting-pipeline (bundled), optional/finance/* (entire category — 7 skills: 3-statement-model, comps-analysis, dcf-model, excel-author, lbo-model, merger-model, pptx-author), creative/hyperframes, creative/kanban-video-orchestrator, devops/watchers, productivity/shop-app, research/searxng-search, apple/macos-computer-use — and rewrites every other per-skill page from the current SKILL.md. Most diffs are tiny (one line of refreshed metadata). Validation: - 'npm run build' succeeded. - Broken-link count moved 146 -> 155 — the +9 are zh-Hans translation shells that lag every newly-added skill page (pre-existing pattern). No regressions on any en/ page.
13 KiB
| title | sidebar_label | description |
|---|---|---|
| Kanban Video Orchestrator — Plan, set up, and monitor a multi-agent video production pipeline backed by Hermes Kanban | Kanban Video Orchestrator | Plan, set up, and monitor a multi-agent video production pipeline backed by Hermes Kanban |
{/* This page is auto-generated from the skill's SKILL.md by website/scripts/generate-skill-docs.py. Edit the source SKILL.md, not this page. */}
Kanban Video Orchestrator
Plan, set up, and monitor a multi-agent video production pipeline backed by Hermes Kanban. Use when the user wants to make ANY video — narrative film, product/marketing, music video, explainer, ASCII/terminal art, abstract/generative loop, comic, 3D, real-time/installation — and the work warrants decomposition into specialized profiles (writer, designer, animator, renderer, voice, editor, etc.) coordinated through a kanban board. Performs adaptive discovery to scope the brief, designs an appropriate team for the requested style, generates the setup script that creates Hermes profiles + initial kanban task, then helps monitor execution and intervene when tasks stall or fail. Routes scenes to whichever Hermes rendering / audio / design skill fits each beat (ascii-video, manim-video, p5js, comfyui, touchdesigner-mcp, blender-mcp, pixel-art, baoyu-comic, claude-design, excalidraw, songsee, heartmula, …) plus external APIs for TTS, image-gen, and image-to-video as needed.
Skill metadata
| Source | Optional — install with hermes skills install official/creative/kanban-video-orchestrator |
| Path | optional-skills/creative/kanban-video-orchestrator |
| Version | 1.0.0 |
| Author | ['SHL0MS', 'alt-glitch'] |
| License | MIT |
| Platforms | linux, macos, windows |
| Tags | video, kanban, multi-agent, orchestration, production-pipeline |
| Related skills | kanban-orchestrator, kanban-worker, ascii-video, manim-video, p5js, comfyui, touchdesigner-mcp, blender-mcp, pixel-art, ascii-art, songwriting-and-ai-music, heartmula, songsee, spotify, youtube-content, claude-design, excalidraw, architecture-diagram, concept-diagrams, baoyu-comic, baoyu-infographic, humanizer, gif-search, meme-generation |
Reference: full SKILL.md
:::info The following is the complete skill definition that Hermes loads when this skill is triggered. This is what the agent sees as instructions when the skill is active. :::
Kanban Video Orchestrator
Wrap any video request — from a 15-second product teaser to a 5-minute narrative short to a music video to an ASCII loop — in a Hermes Kanban pipeline that decomposes the work to specialized agent profiles.
This skill does not render anything itself. It is a meta-pipeline that:
- Scopes the request through targeted discovery
- Designs an appropriate team (which roles, which tools per role) based on the style
- Generates a setup script that creates Hermes profiles, project workspace, and the initial kanban task
- Hands off to the director profile, which decomposes via the kanban
- Monitors execution, helps intervene when tasks stall or fail
The actual rendering happens inside the kanban once it's running, via whichever
existing skills + tools fit the scenes — ascii-video, manim-video, p5js,
comfyui, touchdesigner-mcp, blender-mcp, songwriting-and-ai-music,
heartmula, external APIs, or plain Python with PIL + ffmpeg.
When NOT to use this skill
- The video is one continuous procedural project that needs no specialists. Just write the code directly.
- The user wants a quick one-shot conversion (e.g. "convert this mp4 to a GIF") — use ffmpeg directly.
- The output is a static image, GIF, or audio-only artifact — use the matching specific skill (
ascii-art,gifs,meme-generation,songwriting-and-ai-music). - The work fits a single existing skill cleanly (e.g. a pure ASCII video — just use
ascii-video).
Workflow
DISCOVER → BRIEF → TEAM DESIGN → SETUP → EXECUTE → MONITOR
Step 1 — Discover (ask the right questions)
The discovery process is adaptive: ask only what is actually needed. Always start with three questions to identify the broad shape:
- What is the video? (one-sentence brief)
- How long? (5-30s teaser / 30-90s short / 90s-3min explainer / 3-10min film / longer)
- What aspect ratio + target platform? (1:1 / 9:16 / 16:9; X, IG, YouTube, internal, etc.)
From the answer, classify the style category. The style determines which follow-up questions to ask. Do not ask all questions at once. Ask 2-4 at a time, listen, then proceed. Make reasonable assumptions whenever the user implies an answer.
For complete intake patterns and per-style question banks, see references/intake.md.
Step 2 — Brief
Once enough is known, produce a structured brief.md using the template in
assets/brief.md.tmpl. Stages:
- Concept — the one-sentence pitch + emotional north star
- Scope — duration, aspect, platform, deadline
- Style — visual references, brand constraints, tone
- Scenes — beat-by-beat breakdown (durations, content, target tool)
- Audio — narration / music / SFX / silent (per scene if needed)
- Deliverables — file format, resolution, optional alternates (vertical cut, GIF, etc.)
Show the brief to the user for confirmation before designing the team. The brief is the contract — every downstream task references it.
Step 3 — Team design
Pick role archetypes from the library that fit this video. Compose, don't clone. Most videos need 4-7 profiles. The director is always present; the rest are picked by what the brief actually requires.
For the role library and per-style team compositions, see references/role-archetypes.md.
For mapping role → which Hermes skills + toolsets it loads, see references/tool-matrix.md.
Step 4 — Setup
Generate a setup script (setup.sh) and run it. The script:
- Creates the project workspace (
~/projects/video-pipeline/<slug>/) - Copies any provided assets into
taste/,audio/,assets/ - Creates each Hermes profile via
hermes profile create --clone - Writes per-profile
SOUL.md(personality + role definition) - Configures profile YAML (toolsets, always_load skills, cwd)
- Writes
brief.md,TEAM.md, andtaste/content - Fires the initial
hermes kanban createtask assigned to the director
Use scripts/bootstrap_pipeline.py to generate setup.sh from a brief +
team-design JSON. See references/kanban-setup.md
for the setup script structure, profile config patterns, and the critical
"shared workspace" rule.
Step 5 — Execute
Run setup.sh. Then provide the user with monitoring commands:
hermes kanban watch --tenant <project-tenant> # live events
hermes kanban list --tenant <project-tenant> # board snapshot
hermes dashboard # visual board UI
The director profile takes over from here, decomposing the work and routing tasks to specialist profiles via the kanban toolset.
Step 6 — Monitor and intervene
Stay engaged — the kanban runs autonomously but a stuck task or bad output needs human (or AI) judgment.
Monitoring patterns: poll kanban list periodically, inspect any RUNNING task
that exceeds its expected duration with kanban show <id>, and check
heartbeats. When a worker's output fails review, the standard interventions are:
- Comment on the worker's task with specific feedback (
kanban_comment) - Create a re-run task with the original as parent
- Adjust the brief's scope and let the director re-decompose
For diagnostic patterns, intervention recipes, and the "task is stuck" playbook, see references/monitoring.md.
Reference: worked examples
Six concrete pipelines covering very different video styles — narrative film, product/marketing, music video, math/algorithm explainer, ASCII video, real-time installation — showing how the same workflow yields very different teams and task graphs. See references/examples.md.
Critical rules
-
Discovery before action. Never start generating a brief or team without asking at least the three baseline questions. A bad brief cascades through the entire pipeline.
-
Match the team to the video. Don't reuse the same 4-profile setup for every job. A music video that doesn't have a beat-analysis profile will misfire. A narrative film that doesn't have a writer profile will produce incoherent scenes. See
references/role-archetypes.md. -
One workspace per project. All profiles for a given video share the same
dir:workspace. Tasks pass artifacts via shared filesystem and structured handoffs. Everykanban_createcall passesworkspace_kind="dir"+workspace_path="<absolute project path>". -
Tenant every project. Use a project-specific tenant (
--tenant <project-slug>). Keeps the dashboard scoped and prevents cross-pollination with other ongoing kanbans. -
Respect existing skills. When a scene fits an existing skill, the relevant renderer should load that skill via
--skill <name>on its task oralways_loadin its profile. Do not re-derive what a skill already provides. -
The director never executes. Even with the full
kanban + terminal + filetoolset, the director'sSOUL.mdrules forbid it from executing work itself. It decomposes and routes only — every concrete task becomes ahermes kanban createcall to a specialist profile. Thekanban-orchestratorskill spells this out further. -
Don't over-decompose. A 30-second product video does NOT need 20 tasks. Aim for the smallest task graph that still parallelizes well and exposes the right human-review gates.
-
Verify API keys BEFORE firing. External APIs (TTS, image-gen, image-to-video) need keys in
~/.hermes/.envor the user's secret store. A worker that hits a missing-key error wastes a task slot. The setup script'scheck_keyhelper aborts cleanly if a required key is missing.
File map
SKILL.md ← this file (workflow + rules)
references/
intake.md ← discovery question banks per style
role-archetypes.md ← role library (writer, designer, animator, …)
tool-matrix.md ← skill + toolset mapping per role
kanban-setup.md ← setup script structure & profile config
monitoring.md ← watch + intervene patterns
examples.md ← six worked pipelines
assets/
brief.md.tmpl ← brief skeleton
setup.sh.tmpl ← setup script skeleton
soul.md.tmpl ← profile personality skeleton
scripts/
bootstrap_pipeline.py ← generate setup.sh from brief + team JSON
monitor.py ← polling + intervention helpers