Skip to main content

codex-workspace-bootstrap

CI CodeQL OpenSSF Scorecard Release PyPI License Python

Preflight your repository before an AI coding agent touches it — and catch instruction drift before different agents follow different rules.

Windows-first. Local by default. CI-friendly. Designed for repositories used with Codex, Copilot, Cline, Claude Code, Gemini CLI, Continue, Cursor, and similar coding agents.

日本語ガイド · Examples · GitHub Action · Roadmap · Releases

Community-maintained project. Not an official OpenAI product and not affiliated with OpenAI.

The 20-second demo

py -m pip install codex-workspace-bootstrap
cwb preflight .

Typical output:

AI Repository Preflight
State: NEEDS ATTENTION
Project: Python
AI instructions: none detected
Audit: 10 passed, 4 warnings, 0 blocking
Instruction integrity: 0 findings, 0 drift, 0 invalid commands, 0 metadata
Next actions:
  [P1] Add repository instructions for AI coding agents -> cwb init-agents .
  [P2] Make the Codex CLI available when local Codex workflows are intended -> codex --version

Fix the highest-value gap:

cwb init-agents .
cwb preflight .

See it catch real mistakes

A reproducible demo creates a temporary repository where the project uses pnpm but AGENTS.md tells the agent to use npm and references a nonexistent lint script.

py examples/first-run-demo/run_demo.py

Expected outcome:

=== BEFORE ===
State: NEEDS ATTENTION
Findings:
  - package-manager-mismatch
  - missing-package-script

=== AFTER ===
State: READY
Findings: none

Demo verification: PASS

See examples/first-run-demo for the full reproducible demo. It uses disposable temporary Git repositories and is verified in CI.

Try it on your repository

py -m pip install codex-workspace-bootstrap
cwb preflight .

If the result is useful, noisy, or surprising, open a Usage report. Public references are optional; do not include private repository contents, credentials, or secret values.

Useful feedback includes false positives, missing repository layouts, monorepo behavior, and which check saved you time.

The goal is not a vanity score. The result is one of:

  • READY — core repository signals and AI instructions are present, with no blocking finding;
  • NEEDS ATTENTION — usable, but important repository or AI-instruction signals are missing;
  • BLOCKED — a blocking finding such as a tracked secret-risk filename needs review.

What it checks

Repository readiness

  • Git repository
  • README
  • license
  • .gitignore
  • common project manifests
  • local Git / Python / Node.js / repository-selected package manager / PowerShell / WSL / Codex signals

AI instruction coverage

The preflight detects repository instruction/config signals for:

  • Codex / OpenAI agents — AGENTS.md
  • GitHub Copilot — repository instructions
  • Cline
  • Claude Code
  • Gemini CLI
  • Continue
  • Cursor

It does not claim these files are correct merely because they exist. It tells you what was detected so a maintainer can review the actual instructions.

Cross-agent instruction integrity

When multiple AI instruction files exist, cwb reads executable-looking commands and checks them against repository evidence. It understands nested AGENTS.md / AGENTS.override.md, nested CLAUDE.md, Gemini CLI hierarchical context files (including project context.fileName overrides), nested Cursor .cursor/rules, and common path-specific frontmatter such as Copilot applyTo and rule globs. It can flag:

  • package-manager mismatches against packageManager and lockfiles;
  • cross-agent package-manager drift;
  • missing package.json scripts referenced by instructions;
  • conflicting test/lint/build validation commands when instruction files have no shared command for the same validation family.

The lint is intentionally conservative: different files may contain additional commands without being treated as conflicts when they share a compatible validation baseline. Commands from different scopes are not compared as if they were global rules. Path-specific rules are validated individually against repository evidence but are not cross-compared for drift unless their full selector semantics can be represented safely. A repository is not marked READY when it only has nested/path-specific instructions and no repository-wide instruction baseline.

Risk signals

The audit warns about common secret-bearing filenames without printing their contents. When Git is available, it distinguishes tracked, ignored, and untracked/unknown candidates. Tracked risky filenames can become blocking findings in strict mode.

This is intentionally a lightweight preflight check, not a replacement for deep scanners such as Gitleaks or Trivy.

Why this exists

AI coding tools are good at editing code. They are not a substitute for repository hygiene.

Before handing a repository to an agent, maintainers still need answers to questions such as:

  • Is this the right repository root?
  • Is the expected toolchain available?
  • Does the repository explain how to validate changes?
  • Are AI instructions present?
  • Are risky files accidentally tracked?
  • Can CI surface the same checks for every pull request?

codex-workspace-bootstrap turns those questions into one repeatable preflight.

Short CLI

The package installs both command names:

cwb --version
codex-workspace-bootstrap --version

Use cwb for day-to-day work.

Commands

One-command preflight

cwb preflight .

Write reports for automation or review:

cwb preflight . --json preflight.json
cwb preflight . --markdown preflight.md
cwb preflight . --sarif preflight.sarif

Use strict mode when blocking findings should return a non-zero exit code:

cwb preflight . --strict

Fail CI on any instruction-integrity finding:

cwb preflight . --fail-on-integrity

Detailed audit

cwb audit .
cwb audit . --json audit.json
cwb audit . --sarif audit.sarif
cwb audit . --strict

Safe fix preview

cwb fix .

This is preview-only by default. To apply only low-risk supported fixes:

cwb fix . --apply

Existing conflicting instruction files are never auto-rewritten. They remain human-review findings.

Non-destructive doctor

cwb doctor .

doctor prints remediation guidance only. It does not install software or modify system configuration.

Generate AGENTS.md

cwb init-agents .

Generation is evidence-based: the tool cross-checks project manifests, package-manager evidence, package scripts, pytest configuration, and README commands. Plausible but unconfirmed commands are separated for maintainer review. Existing AGENTS.md files are never overwritten unless --force is explicit.

GitHub Action

The reusable Action is published on GitHub Marketplace.

- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97
  with:
    python-version: "3.13"
- uses: kohli217/codex-workspace-bootstrap@v0.6.1
  with:
    path: .
    strict: "true"
    fail_on_integrity: "true"

The Action adds the preflight Markdown report to the GitHub Actions job summary, so maintainers get a readable readiness snapshot without digging through raw logs. Optional SARIF output contains both repository-audit and instruction-integrity findings and can be uploaded to GitHub Code Scanning.

See docs/GITHUB_ACTION.md.

Read-only evaluations against real public repositories are documented in docs/PUBLIC_REPO_EVALUATIONS.md. They are reproducible technical evaluations, not claims of third-party adoption.

Where it fits

This project is a preflight layer, not an AI coding agent and not a deep security scanner.

Need Use
Edit or generate code Codex, Copilot, Cline, Claude Code, Continue, etc.
Deep secret/vulnerability scanning Gitleaks, Trivy, dedicated security tooling
Reproducible toolchain management Dev Containers, mise, project-specific tooling
Check whether a repository is ready before AI coding starts codex-workspace-bootstrap

The intent is to complement those tools, not replace them.

Safety model

  • Core checks run locally.
  • Suspected secret files are not opened or printed by the filename-risk check.
  • Repository contents are not sent to a remote AI service by the core audit.
  • Instruction files are read locally for deterministic linting; extracted commands are never executed by the integrity lint.
  • Repository instruction/configuration and project-marker inputs are not trusted through symbolic links.
  • init-agents and automatic fixes refuse symlinked AGENTS.md targets rather than writing through them.
  • Existing regular AGENTS.md files are protected unless overwrite is explicit.
  • A passing preflight is evidence about the checks performed, not a security guarantee.

See SECURITY.md.

Maintainer workflow

The project itself uses issue → branch → pull request → CI → merge → release.

Automated validation includes:

  • Windows and Ubuntu;
  • Python 3.10 and 3.13;
  • built-wheel smoke tests;
  • Action self-tests;
  • strict self-audit;
  • CodeQL;
  • Dependabot;
  • SARIF validation;
  • PyPI publishing through GitHub OIDC Trusted Publishing.

Install

PyPI:

py -m pip install codex-workspace-bootstrap

Pinned GitHub release artifact:

py -m pip install "https://github.com/kohli217/codex-workspace-bootstrap/releases/download/v0.6.1/codex_workspace_bootstrap-0.6.1-py3-none-any.whl"

Development

git clone https://github.com/kohli217/codex-workspace-bootstrap.git
cd codex-workspace-bootstrap
py -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -e . pytest
pytest -q

Contributions and real-world usage reports are welcome. See CONTRIBUTING.md, SUPPORT.md, CODE_OF_CONDUCT.md, and docs/ADOPTION.md.

License

MIT. See LICENSE.

Metadata

Release files for codex-workspace-bootstrap 0.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for codex-workspace-bootstrap 0.6.1
File Size Uploaded
codex_workspace_bootstrap-0.6.1.tar.gz 40.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for codex-workspace-bootstrap 0.6.1
File Interpreter ABI Platform
codex_workspace_bootstrap-0.6.1-py3-none-any.whl Python 3 none any Details

Total release size: 71.8 kB

Release files / codex_workspace_bootstrap-0.6.1.tar.gz

Download URL codex_workspace_bootstrap-0.6.1.tar.gz
Size 40.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d45ad93f1d724240fc5c5abd0303e9d4e593d8080193317bd8542edfbee1087c
BLAKE2b-256 checksum
How to use checksums
979bb61a22b5a48aac33f1e7187607bc9aea626d155eefc3430d93770d27fabb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / codex_workspace_bootstrap-0.6.1-py3-none-any.whl

Download URL codex_workspace_bootstrap-0.6.1-py3-none-any.whl
Size 30.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f9499241e62ebb1db69174a2fd5faa68672e418ea1b8068e5f410f48e13d35fe
BLAKE2b-256 checksum
How to use checksums
76bc25abbd4271b88c96b03a693b86a989daa55a7823fa62c610a0af0ec28de4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

0.11.0

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

This release

0.6.1 This release

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page