mirror of
https://github.com/obra/superpowers.git
synced 2026-07-03 08:09:05 +08:00
Codex auto-discovers a plugin's hooks/hooks.json whenever the Codex
manifest has no `hooks` field: load_plugin_hooks falls back to a
hardcoded DEFAULT_HOOKS_CONFIG_FILE = "hooks/hooks.json" and registers
it. hooks/hooks.json is the Claude Code SessionStart hook, it is tracked
in this repo, and the Codex marketplace installs the whole repo root
(source url "./"), so the fallback re-registered the SessionStart hook
and its install-time trust prompt on Codex.
Removing the Codex hook file and the manifest `hooks` pointer (commit
"Remove Codex hooks") did not disable the hook on Codex — it removed the
explicit declaration that was overriding the fallback, so the fallback
took over and found the Claude hooks/hooks.json.
Declare an empty inline hooks object ({}) in .codex-plugin/plugin.json.
It parses as an empty inline hook set and stops Codex reaching the
auto-discovery fallback. An absent field, an empty array ([]), and an
empty inline list all collapse back to the fallback, so the value must
be exactly {}.
Update the test to assert the manifest declares hooks: {} (and that
hooks/hooks.json exists, which is what makes the declaration necessary),
replacing the prior assertion that the field was absent — which passed
while the hook was still being auto-discovered.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
49 lines
1.7 KiB
JSON
49 lines
1.7 KiB
JSON
{
|
|
"name": "superpowers",
|
|
"version": "6.1.0",
|
|
"description": "An agentic skills framework & software development methodology that works: planning, TDD, debugging, and collaboration workflows.",
|
|
"author": {
|
|
"name": "Jesse Vincent",
|
|
"email": "jesse@fsck.com",
|
|
"url": "https://github.com/obra"
|
|
},
|
|
"homepage": "https://github.com/obra/superpowers",
|
|
"repository": "https://github.com/obra/superpowers",
|
|
"license": "MIT",
|
|
"keywords": [
|
|
"brainstorming",
|
|
"subagent-driven-development",
|
|
"skills",
|
|
"planning",
|
|
"tdd",
|
|
"debugging",
|
|
"code-review",
|
|
"workflow"
|
|
],
|
|
"skills": "./skills/",
|
|
"hooks": {},
|
|
"interface": {
|
|
"displayName": "Superpowers",
|
|
"shortDescription": "Planning, TDD, debugging, and delivery workflows for coding agents",
|
|
"longDescription": "Use Superpowers to guide agent work through brainstorming, implementation planning, test-driven development, systematic debugging, parallel execution, code review, and finish-the-branch workflows.",
|
|
"developerName": "Jesse Vincent",
|
|
"category": "Coding",
|
|
"capabilities": [
|
|
"Interactive",
|
|
"Read",
|
|
"Write"
|
|
],
|
|
"defaultPrompt": [
|
|
"I've got an idea for something I'd like to build.",
|
|
"Let's add a feature to this project."
|
|
],
|
|
"websiteURL": "https://github.com/obra/superpowers",
|
|
"privacyPolicyURL": "https://docs.github.com/en/site-policy/privacy-policies/github-general-privacy-statement",
|
|
"termsOfServiceURL": "https://docs.github.com/en/site-policy/github-terms/github-terms-of-service",
|
|
"brandColor": "#F59E0B",
|
|
"composerIcon": "./assets/superpowers-small.svg",
|
|
"logo": "./assets/app-icon.png",
|
|
"screenshots": []
|
|
}
|
|
}
|