gnhf
Skill8 starsChanged 12 days agoMITView on GitHub
Use when the user asks to run GNHF, says they are going to sleep or leaving and wants an agent-managed coding run, asks to supervise, steer, or review an active GNHF run, or gives feedback on GNHF results.
We split this skill into the rules it gives an agent
23 rules. 18 are common, 1 is distinctive, and 4 are very specific to this project.
18
Common
Most of the 3 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Common: line 23
Use when the task is bounded, verification is clear, and the user wants one configured run to proceed without steering.
- Common: line 37
Use when the task is uncertain, exploratory, design-heavy, research-heavy, or likely to need course correction.
- Very specific: line 39
Default to Companion when the user asks to iterate until satisfied, requests multi-round work, provides review findings, asks for …
- Common: line 41
Keep a note of original intent, branch, session id, and last known result.
- Distinctive: line 42
Run GNHF in the background and wait on its exit notification, or on a Monitor until-loop that wakes at each iteration boundary in its log, …
- Common: line 44
Treat review findings as the next acceptance criteria.
- Common: line 45
Prefer a new bounded GNHF prompt over manually taking over implementation.
- Very specific: line 55
No separate install needed: gnhf is an npm package, so npx -y --prefer-offline gnhf fetches and caches it on first use, then reuses the …
- Common: line 57
Check the installed CLI before relying on flags:
- Very specific: line 74
Default to --max-iterations 10 unless the user names a number.
- Very specific: line 75
Use --model <model> to select a model for a run.
- Common: line 126
Use only in Companion mode, when the host is supervising quality or deciding whether to continue with another bounded run.
- Common: line 129
Read GNHF notes/logs as claims, not evidence.
- Common: line 130
Run independent verification: tests, lint, build, typecheck, manual QA, or domain-specific checks.
- Common: line 135
If the result needs follow-up, continue in Companion mode instead of presenting the run as complete.
- Common: line 139
Use when the user provides findings such as "not preserved", "scope drift", "missing requirement", or "why did you stop".
- Common: line 141
Treat the run as Companion mode.
- Common: line 151
Use when the user returns with "good morning", "how did last night's run go?", or similar after a GNHF run.
- Common: line 153
Do not ask what to review first.
- Common: line 170
Default to the agent the user explicitly requested, or the one already configured and authenticated locally.
- Common: line 179
Keep prompts outcome-based and evidence-based.
- Common: line 180
Use concrete stop conditions.
- Common: line 181
If the user is away, produce branches and a status report, not irreversible changes, unless explicitly authorized.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
GNHF
Overview
GNHF is an agent orchestrator: it repeatedly calls another coding agent until a natural-language stop condition is met. This skill teaches the host agent to prepare one durable run and, in Companion mode, steer or review it.
Core rule: the host agent orchestrates; GNHF executes. Do not manually implement inside the same scope while a GNHF worker is responsible for it unless the user explicitly changes the delegation.
In Companion mode, GNHF completion is not user acceptance. "Stop condition met" only means the worker stopped; the host still compares the result to the user's latest requirements and fresh verification.
Modes
Choose exactly one mode for the run.
Hands-Off
Use when the task is bounded, verification is clear, and the user wants one configured run to proceed without steering.
- Prepare a precise prompt with constraints, non-goals, verification, and stop condition.
- Launch GNHF as a background run and wait for its exit notification; do not poll.
- Intervene early only for hard failure, runaway scope, destructive behavior, or impossible prerequisites.
- Report the final GNHF status after exit.
Examples:
- English: "I'm going to bed. Use GNHF with Copilot to keep working on this branch and stop when the test suite passes."
- Chinese: "我要睡了。用 GNHF 接着跑这个分支,测试都过了就停。"
Companion
Use when the task is uncertain, exploratory, design-heavy, research-heavy, or likely to need course correction.
Default to Companion when the user asks to iterate until satisfied, requests multi-round work, provides review findings, asks for design/skill/documentation improvement, or asks for supervision.
- Keep a note of original intent, branch, session id, and last known result.
- Run GNHF in the background and wait on its exit notification, or on a Monitor until-loop that wakes at each iteration boundary in its log, instead of polling.
- Intervene when the worker optimizes the wrong thing, repeats failed fixes, skips requested research, drifts scope, or claims success without evidence.
- Treat review findings as the next acceptance criteria.
- Prefer a new bounded GNHF prompt over manually taking over implementation.
- Relaunch at most 3 times per user request, counting Steer, Companion Review, and Findings relaunches together; then report the remaining findings and evidence to the user instead of relaunching again.
Examples:
- English: "Run GNHF for a few rounds on this onboarding flow. Check the diff between rounds and tighten the next prompt if it starts polishing the wrong thing."
- Chinese: "用 GNHF 多跑几轮这个 onboarding 流程。每轮看一下 diff,如果它开始改偏了,就收窄下一轮 prompt。"
Launch
No separate install needed: gnhf is an npm package, so npx -y --prefer-offline gnhf fetches and caches it on first use, then reuses the cache. Prefer a global gnhf on PATH when the user already has one; otherwise run every command below as npx -y --prefer-offline gnhf ....
Check the installed CLI before relying on flags:
npx -y --prefer-offline gnhf --helpKnown shape:
npx -y --prefer-offline gnhf \
--agent <agent> \
--max-iterations <n> \
--stop-when "<observable completion condition>" \
--prevent-sleep on \
"<worker prompt>"Default to --max-iterations 10 unless the user names a number.
Use --model <model> to select a model for a run. For config defaults and agent-specific restrictions, follow the README Configuration.
Before launch:
git status --short
git branch --show-current
git log --oneline --max-count=5Prompt skeleton:
Objective: <one concrete outcome>.
Use <agent/model requirement>. Work in this repo. Treat this as a long-running GNHF task.
Before coding, inspect the current repo, relevant docs, and recent commits. Preserve user changes. Do not make unrelated refactors.
After each meaningful slice, run relevant verification. If blocked, commit no fake success; leave notes with the blocker and evidence.
Stop only when: <observable completion condition>.Steer
In Companion mode, evaluate after each iteration or meaningful output chunk:
| Signal | Action |
| Worker found a real blocker | Stop or relaunch with blocker-specific instructions |
| Good partial slice | Let it continue or tighten the next stop condition |
| Skipped requested research | Relaunch with research as explicit first deliverable |
| Worker changes unrelated files | Stop and review before continuing |
| Worker claims success without verification | Review immediately; relaunch only with evidence-based stop condition |
| Reviewer finds a blocking issue or user says not satisfactory | Relaunch with that finding as the sole bounded correction |
Steering prompt:
Continue from the current repo state. The previous run partially succeeded: <evidence>.
Do not redo completed work. Focus only on <bounded correction>.
The issue to fix now is <specific observed issue>. Verify with <commands/checks>.
Stop only when <observable condition>.Companion Review
Use only in Companion mode, when the host is supervising quality or deciding whether to continue with another bounded run.
- Inspect branch, status, commits, changed files, and diff.
- Read GNHF notes/logs as claims, not evidence.
- Run independent verification: tests, lint, build, typecheck, manual QA, or domain-specific checks. Between rounds, verify only the packages the round touched; run the full suite once, before the final verdict.
- Compare the result to the stop condition and the user's latest feedback.
- Decide: Mergeable, Needs follow-up GNHF run, or Do not merge.
If the result needs follow-up, continue in Companion mode instead of presenting the run as complete. Do not merge unless explicitly authorized.
Findings
Use when the user provides findings such as "not preserved", "scope drift", "missing requirement", or "why did you stop".
- Treat the run as Companion mode.
- Convert each finding into an observable correction. Preserve severity, file/line scope, and the user's wording.
- Relaunch on the same candidate branch when salvageable.
- Prompt the worker to fix only the bounded finding, preserve completed valid work, verify, and stop only when the finding is no longer true.
- Review again after the follow-up.
- Repeat until no blocking findings remain, verification passes, or a real blocker is found. The Companion relaunch cap still applies.
Morning Review
Use when the user returns with "good morning", "how did last night's run go?", or similar after a GNHF run.
Do not ask what to review first. Reconstruct state:
git status --short
git branch --show-current
git log --oneline --decorate --max-count=20
pgrep -fl 'gnhf|claude|codex|copilot|cursor-agent|opencode|rovodev' || trueInspect likely GNHF branches, notes, logs, terminal sessions, and changed files. If a GNHF process is still running, report that first.
Report mode, agent, branch, status, changes, verification, stop-condition result, quality assessment, and recommended next action. Never summarize an overnight run from memory.
Agent
The supported --agent roster comes from npx -y --prefer-offline gnhf --help; the Agents table in the GNHF README owns per-agent requirements. Do not hard-code the roster.
- Default to the agent the user explicitly requested, or the one already configured and authenticated locally.
codex: repo-aware code work or review-heavy tasks.claude: reasoning-heavy implementation or prose-heavy planning when configured.acp:<target>: when the user wants to drive a custom ACP-compatible agent through GNHF.
Safety
- Preserve user changes. Never run destructive git commands to clean up a GNHF branch.
- In Companion mode, do not trust a worker's success summary without fresh verification.
- Keep prompts outcome-based and evidence-based.
- Use concrete stop conditions. Bad: "looks good". Good: "the target workflow succeeds, relevant checks pass, and no unrelated files changed."
- If the user is away, produce branches and a status report, not irreversible changes, unless explicitly authorized.
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 3
- meshery/meshery★ 12k90% same
- kunchenguid/gnhf★ 4.2k93% same
- karanmrn/claude-skills★ 088% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository27 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- releaseSkill
- ask-or-decideSkill
- axiSkill
- betterstack-logsSkill
- bug-triageSkill
- chrome-devtools-axiSkill
- e2e-verifySkill
- environmentsSkill
- feature-buildSkill
- feature-statusSkill
- fe-guardrailsSkill
- flow-traceSkill
- fresh-reviewSkill
- harness-mapSkill
- jira-bug-hunterSkill
- knowledge-placementSkill
- logging-standardSkill
- project-initSkill
- root-causeSkill
- security-passSkill
- server-touchSkill
- stowSkill
- verify-loopSkill
- visionSkill
- worktree-flowSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

