By phj6688
Generate a per-stack GitHub Actions CI workflow whose jobs all funnel into one aggregate gate job, and optionally apply matching branch protection. One required check, no deadlock.
Drop a single-required-check CI gate onto any repo, per stack, without deadlocking branch protection.
bulletproof-ci generates a GitHub Actions workflow whose jobs all funnel into
one aggregate gate job (default name CI passed). That single context is the
only check branch protection needs to require. The same workflow runs on both
push and pull_request for every integration branch, so the gate is always
producible and protecting dev / master / main never deadlocks.
In Claude Code:
/plugin marketplace add phj6688/claude-marketplace
/plugin install bulletproof-ci@phj
In any repo:
/bulletproof-ci
Or run the generator directly:
bin/bulletproof-ci [PATH] [flags]
Examples:
bulletproof-ci # auto-detect stack, write .github/workflows/ci.yml
bulletproof-ci --dry-run # show the plan and the would-be workflow, change nothing
bulletproof-ci . --stack node --e2e # node app with a Playwright e2e job
bulletproof-ci ~/projects/foo --protect --branches dev,master
bulletproof-ci --stack skill --pr # open a chore/ci PR adding CI to a skill repo
| Flag | Default | Effect |
|---|---|---|
--stack auto|python|node|shell|skill|generic | auto | Template to use. auto detects from files. |
--branches a,b,c | dev,master,main | Trigger branches, and (with --protect) the branches to protect. |
--gate-name "NAME" | CI passed | Name of the aggregate gate job (the required context). |
--e2e | off | Add a Playwright e2e job (node stacks only). |
--protect | off | Apply branch protection requiring the gate on each branch (needs gh + jq). |
--enforce-admins / --no-enforce-admins | enforce | Whether protection binds admins (with --protect). |
--reviews N | 0 | Required approving reviews for protection. |
--pr | off | Commit to a chore/ci branch, push, open a PR (needs gh). |
--dry-run | off | Print the plan; change nothing. |
-h, --help | Usage. |
| Stack | Jobs |
|---|---|
python | ruff (or flake8), mypy if configured, pytest matrix (3.11/3.12), install/import sanity |
node | lint, tsc --noEmit if tsconfig, test matrix (20/22), build; --e2e adds Playwright |
shell | shellcheck, actionlint, YAML + markdown sanity |
skill | validate SKILL.md frontmatter + JSON manifests, shellcheck, lenient markdownlint |
generic | actionlint + YAML/JSON/shell sanity |
Every workflow ends with the CI passed gate: needs: every other job,
if: always(), and fails if any needed job's result is not success. Each
workflow uses least-privilege permissions (contents: read), cancels superseded
runs via concurrency, and pins action major versions.
Branch protection should require exactly the gate context (CI passed by
default). Because the workflow triggers on push too, a branch with no PR still
produces the check, so protection never blocks an integration branch from
receiving its first qualifying run. Change --gate-name and you must change the
protected context to match (re-run with --protect).
It standardizes the gate shape. It does not invent tests: a repo with no tests gets an honest green "no tests yet" step, not a fake pass.
bash, sed, git, python3 (YAML validation). gh + jq only for
--protect / --pr.MIT, see LICENSE.
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 phj6688/bulletproof-ci --plugin bulletproof-ciTurn any codebase into a beautifully animated book of workflows. Single HTML file.
FORGE v3. Autonomous agent delegation protocol for spec-driven multi-session software builds.
Orchestrate a Linear backlog: a thin orchestrator fans out a planner plus per-issue implement/review/verify subagents, loops each issue until reviewer-approved and green, then auto-merges to the integration branch.
Ship a Linear backlog end to end: orchestrate-linear builds each issue, then every PR is gated by an independent pre-merge review plus CodeRabbit before merge or hand-off, with cleanup and a final report.
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review
A growing collection of Claude-compatible academic workflow bundles. Covers scientific figures, manuscript writing and polishing, reviewer assessment, citation retrieval, data availability, paper reading, literature search, response letters, paper-to-PPTX conversion, and evidence-grounded Chinese invention patent drafting. Rules are organized as reusable skill folders with explicit workflows and quality checks.
Harness-native ECC operator layer - 67 agents, 271 skills, 92 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses
Tools to maintain and improve CLAUDE.md files - audit quality, capture session learnings, and keep project memory current.
Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.