By thinhkhuat
Universal EFFORT standing-order for Claude Code. Injects a full effort doctrine at SessionStart and re-asserts it every turn so the agent works each task to done-and-proven — refusing unnatural, slop, mean-reverting premature exits. In-generation governance, caveman-pattern, no post-turn detection.
A universal EFFORT standing-order for Claude Code. It keeps the agent working the task to done-and-proven — relentlessly, proactively — and refuses the unnatural, silly, slop premature exits that only ever reach the average mean.
The default pull of a trained model is to spend less: fewer tokens, fewer calls, fewer steps, an earlier wrap. Left alone, that produces mean-reverting, "good enough," safe-and-shallow work. The bar should be the one the task sets — not the one that is easy. effort-gate makes the bar the rule: follow the trails, keep working, never excuse a dodge.
Same pattern as caveman — and even closer in nature, since
both govern how the model works, not what it knows:
activate.py) injects the full effort doctrine, read at runtime from
skills/effort/SKILL.md (single source of truth — edit the doctrine, no code change).tracker.py) re-asserts a cheap trigger every turn, so the order stays in
the model's attention even as other plugins inject competing instructions.Governance is in-generation: the doctrine shapes the work because it is present in context as the model works. There is no Stop hook and no post-turn detection — catching a dodge after the turn is the anti-caveman (it polices spent tokens instead of shaping the disposition). Prevention, not policing.
The doctrine names the only lawful stops — done+verified, a real external blocker, or the user ordered less — so "relentless" never becomes pathological: legitimate, earned stops are fine; unnatural slop exits are not.
full). Nothing to do./effort off · "stop effort" · "normal mode" → disable for the session./effort on → re-enable./effort-gate:effort → view the doctrine.It governs how much work you do, not how you talk. Pair with caveman for terseness — terse words,
full work.
effort-gate/
├── .claude-plugin/{plugin,marketplace}.json
├── hooks/
│ ├── hooks.json # SessionStart + UserPromptSubmit
│ └── scripts/
│ ├── activate.py # SessionStart — inject full doctrine
│ ├── tracker.py # UserPromptSubmit — cheap re-assert + /effort toggle
│ └── effort_config.py # shared flag-file helpers (symlink-safe)
└── skills/effort/SKILL.md # the doctrine — single source of truth
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub thinhkhuat/effort-gate --plugin effort-gateA skill-governance layer over Claude Code's default mechanism: semantic retrieval (which skill) + use-enforcement (whether Claude uses one) + a compounding invocation ledger.
Consult multiple AI coding agents (Gemini, OpenAI, Grok, Perplexity, plus codex and antigravity CLIs when installed) to get diverse perspectives on coding problems
Permanent coding companion for Claude Code — survives any update. MCP-based terminal pet with ASCII art, stats, reactions, and personality.