{"slug": "skill-fablize-for-hermes", "title": "Skill Fablize for Hermes", "summary": "A developer ported the fablize procedure system from Claude Code to the Hermes Agent ecosystem, creating a skill that enforces verification grounding, multi-story evidence gating, investigation protocols, and early-stop prevention. The project adapts verified procedures that improve task completion depth through systematic tool use and evidence checkpoints, addressing a gap in agent capability for closed, answer-bearing work.", "body_md": "[ English](/teixeirazeus/fablize-for-hermes/blob/main/README.md) ·\n\n[简体中文](/teixeirazeus/fablize-for-hermes/blob/main/README.zh.md)·\n\n[Português (BR)](/teixeirazeus/fablize-for-hermes/blob/main/README.pt.md)\n\nA port of [fablize](https://github.com/fivetaku/fablize) for the [Hermes Agent](https://hermes-agent.nousresearch.com/)\necosystem. This project adapts fablize's verified procedures — verification grounding,\nmulti-story evidence gating, investigation protocol, and early-stop prevention — from\nClaude Code's plugin system to Hermes Agent's skill system.\n\n**fablize** makes any agent **see a task through to the end — with evidence and\nverification — as procedure, not as luck.**\n\n[fablize](https://github.com/fivetaku/fablize) was born from a controlled comparison\nof Claude Opus and \"Fable 5\" (19 A/B runs + 26 real sessions, ~1,500 tool calls).\nThe finding: on closed, answer-bearing work (code, logic, builds) the two models\nwere effectively tied. The gap was in *depth* — following an implication one step\nfurther — and that turned out to be **model capability**, not injectable.\n\nBut the **procedure** of good work — actually running what you build, decomposing\nmulti-step tasks with evidence checkpoints, investigating bugs systematically —\n*does transfer*. fablize ships only the procedures whose effect was verified.\n\n| Trait | Transferable? | How fablize-for-hermes does it |\n|---|---|---|\n| Verification grounding (run & observe the artifact) | ✅ | Skill section 3 — run in real renderer, observe output, fix, re-run |\n| Multi-story completion + evidence gate | ✅ | `scripts/goals.py` — decompose, checkpoint, refuse completion without proof |\n| Systematic investigation (reproduce → hypotheses → causal chain) | ✅ | Skill section 2 + `packs/investigation-protocol.txt` |\n| Early-stop prevention | ✅ | Skill foundation rule: no promises without tool calls |\n| Out-of-spec defect discovery | ❌ not possible | Capability — the model finds it, or it doesn't |\n| Open-ended creative detail | ❌ not possible | Capability — shows only where there is no fixed answer |\n| Self-driven propagation depth | ❌ not possible | Capability — directed propagation transfers; self-started depth does not |\n\nThe core behavioral ruleset, structured as a Hermes Agent skill (YAML frontmatter + markdown). Covers:\n\n**Foundation rules**— always-on: lead with outcome, ground claims in tool results, no early stops, confirm destructive actions** Multi-story loop**— decompose 2+ story tasks → complete with evidence → verification gate on the final story** Deep investigation**— reproduce → 3+ competing hypotheses → trace causal chain → verify before/after → report rejected hypotheses** Verification grounding**— run render/executable artifacts, observe, fix, re-run before declaring done** Capability ceiling**— escalate honestly when the model's ceiling is the blocker\n\nA self-contained, stdlib-only Python script for multi-story decomposition with a\nverification gate. State persists in `~/.hermes/fablize/`\n\nand survives session death.\n\n```\ngoals.py create --brief \"Build a dashboard\" \\\n  --goal \"design::Create the HTML layout\" \\\n  --goal \"implement::Add chart visualizations\" \\\n  --goal \"verify::Run and verify the dashboard renders correctly\"\ngoals.py next\n# ... work this story ...\ngoals.py checkpoint --id G001 --status complete --evidence \"Layout created with sidebar and main panel\"\ngoals.py status\n```\n\n— The grounding loop: run, observe, fix, re-run. For HTML, SVG, games, UI, charts, animations.`packs/verification-grounding-pack.txt`\n\n— The systematic debugging protocol: reproduce, competing hypotheses, causal chain, verify before/after.`packs/investigation-protocol.txt`\n\n`setup.sh [--skill-only|--local|--global]`\n\n— Install the skill into Hermes and optionally inject the operating block into`AGENTS.md`\n\nor`CLAUDE.md`\n\n`uninstall.sh [--skill-only|--local|--global|--all]`\n\n— Reverse the setup\n\n| Aspect | fablize (original) | fablize-for-hermes |\n|---|---|---|\n| Platform | Claude Code plugin | Hermes Agent skill |\n| Routing | `UserPromptSubmit` hook via `hooks.json` |\nSkill content — agent loads and applies matching discipline |\n| Early-stop | `finish-the-work.sh` Stop hook (JSON transcript) |\nFoundation rule in skill — agent self-enforces |\n| State dir | `./.fablize/` (per-project) |\n`~/.hermes/fablize/` (Hermes-wide, survives sessions) |\n| Scripts | In `scripts/` — run from repo root |\nSame scripts, adapted for Hermes paths |\n| Setup | Injects into `CLAUDE.md` |\nInstalls as Hermes skill + optionally injects block |\n\n```\ngit clone https://github.com/zeus/fablize-for-hermes.git\ncd fablize-for-hermes\nbash setup/setup.sh --skill-only\n```\n\nThen load the skill in your Hermes session:\n\n```\nskill_view(name='fablize')\nbash setup/setup.sh --local    # injects block into ./AGENTS.md\nbash setup/setup.sh --global   # injects block into ~/.claude/CLAUDE.md\nbash setup/uninstall.sh --all\n```\n\n**Trigger:** load the`fablize`\n\nskill, or trigger inline when the agent detects 2+ stories, debugging, or render artifacts**2+ stories**→ decompose + verification gate via`goals.py`\n\n**Debugging**→ investigation protocol (reproduce → hypotheses → causal chain)** Render artifact**→ verification grounding (run → observe → fix → re-run)** Hard task**→ adaptive thinking + escalate to stronger model if stuck** Capability ceiling**→ escalate honestly (the harness does not fake capability)\n\n- It cannot raise model capability. Open-ended creative quality and self-driven discovery are out of reach — that is a model-choice decision, not a harness one.\n- The effect numbers come from the original fablize small-family self-measurement. The direction is solid; the decimals are not asserted.\n- The early-stop rule relies on agent self-enforcement, not a deterministic hook. It is a guideline, not a guard.\n\nMIT — same as the original fablize. The upstream fablize by fivetaku is MIT licensed. This port adapts the design and procedures to the Hermes Agent ecosystem.", "url": "https://wpnews.pro/news/skill-fablize-for-hermes", "canonical_source": "https://github.com/teixeirazeus/fablize-for-hermes", "published_at": "2026-06-17 00:13:18+00:00", "updated_at": "2026-06-17 00:52:47.897282+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-research"], "entities": ["Hermes Agent", "fablize", "Claude Code", "Nous Research", "Fivetaku"], "alternates": {"html": "https://wpnews.pro/news/skill-fablize-for-hermes", "markdown": "https://wpnews.pro/news/skill-fablize-for-hermes.md", "text": "https://wpnews.pro/news/skill-fablize-for-hermes.txt", "jsonld": "https://wpnews.pro/news/skill-fablize-for-hermes.jsonld"}}