Skip to content

feat: gate bootstrap injection on SUPERPOWERS_SKIP_BOOTSTRAP env var#477

Open
sjawhar wants to merge 2 commits intoobra:mainfrom
sjawhar:feat/skip-bootstrap-env-var
Open

feat: gate bootstrap injection on SUPERPOWERS_SKIP_BOOTSTRAP env var#477
sjawhar wants to merge 2 commits intoobra:mainfrom
sjawhar:feat/skip-bootstrap-env-var

Conversation

@sjawhar
Copy link
Copy Markdown

@sjawhar sjawhar commented Feb 14, 2026

Allow headless/CI/autonomous agent sessions to opt out of the using-superpowers bootstrap injection while preserving access to individual skills via the skill tool.

Set SUPERPOWERS_SKIP_BOOTSTRAP=1 to skip the system prompt injection.

This enables:

  • Autonomous agents and CI systems to use individual skills without the mandatory bootstrap that assumes interactive brainstorming approval
  • Cleaner system prompts for headless/non-interactive sessions
  • Opt-in behavior for the bootstrap injection

Summary by CodeRabbit

  • New Features
    • Added a configuration option (via environment variable) to optionally skip bootstrap initialization.
  • Style
    • Consistent reformatting and normalization of string quoting and whitespace with no behavioral changes.

Allow headless/CI/autonomous agent sessions to opt out of the using-superpowers
bootstrap injection while preserving access to individual skills via the skill
tool. Set SUPERPOWERS_SKIP_BOOTSTRAP=1 to skip the system prompt injection.
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Feb 14, 2026

📝 Walkthrough

Walkthrough

Added an early exit to the system prompt transform in the superpowers plugin: when the environment variable SUPERPOWERS_SKIP_BOOTSTRAP is exactly "1", bootstrap injection is skipped. Other logic and behavior remain unchanged; additional non-functional formatting changes (quote style/whitespace) were applied.

Changes

Cohort / File(s) Summary
Superpowers plugin
.opencode/plugins/superpowers.js
Added conditional early return in the system prompt transform to skip bootstrap when SUPERPOWERS_SKIP_BOOTSTRAP === "1". Also normalized string quoting and minor whitespace/formatting updates across the file (no other functional changes).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

In burrows bright I nibble code,
One tiny flag, a quiet mode.
If SUPERPOWERS_SKIP_BOOTSTRAP says "1",
The bootstrap nap is left undone.
Hooray — a hop, the change is fun! 🐇✨

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main functional change: adding a feature to gate bootstrap injection behind an environment variable.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Merge Conflict Detection ✅ Passed ✅ No merge conflicts detected when merging into main

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

No actionable comments were generated in the recent review. 🎉


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @.opencode/plugins/superpowers.js:
- Line 89: The early-return uses a truthy check on
process.env.SUPERPOWERS_SKIP_BOOTSTRAP which treats any non-empty string (e.g.
"0" or "false") as true; change the conditional to an explicit string comparison
(check process.env.SUPERPOWERS_SKIP_BOOTSTRAP === '1') so only setting it to "1"
skips bootstrap — update the conditional around the existing early return in the
superpowers bootstrap block to use that explicit check.

Comment thread .opencode/plugins/superpowers.js Outdated
@sjawhar
Copy link
Copy Markdown
Author

sjawhar commented Feb 14, 2026

Fixed — changed to explicit === '1' check. Commit pushed to feat/skip-bootstrap-env-var.

@obra obra added enhancement New feature or request claude-code Claude Code (Anthropic CLI) issues hooks Hook system (SessionStart, Stop, etc.) labels Feb 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

claude-code Claude Code (Anthropic CLI) issues enhancement New feature or request hooks Hook system (SessionStart, Stop, etc.)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants