codex-workspace-bootstrap 0.3.0__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- codex_workspace_bootstrap-0.4.0/PKG-INFO +269 -0
- codex_workspace_bootstrap-0.4.0/README.md +241 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/pyproject.toml +4 -3
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap/__init__.py +1 -1
- codex_workspace_bootstrap-0.4.0/src/codex_workspace_bootstrap/agents.py +232 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap/cli.py +99 -0
- codex_workspace_bootstrap-0.4.0/src/codex_workspace_bootstrap/doctor.py +50 -0
- codex_workspace_bootstrap-0.4.0/src/codex_workspace_bootstrap/preflight.py +224 -0
- codex_workspace_bootstrap-0.4.0/src/codex_workspace_bootstrap.egg-info/PKG-INFO +269 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap.egg-info/SOURCES.txt +4 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap.egg-info/entry_points.txt +1 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/tests/test_cli.py +57 -3
- codex_workspace_bootstrap-0.4.0/tests/test_doctor.py +43 -0
- codex_workspace_bootstrap-0.4.0/tests/test_preflight.py +95 -0
- codex_workspace_bootstrap-0.3.0/PKG-INFO +0 -235
- codex_workspace_bootstrap-0.3.0/README.md +0 -207
- codex_workspace_bootstrap-0.3.0/src/codex_workspace_bootstrap/agents.py +0 -108
- codex_workspace_bootstrap-0.3.0/src/codex_workspace_bootstrap.egg-info/PKG-INFO +0 -235
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/LICENSE +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/setup.cfg +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap/__main__.py +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap/audit.py +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap/sarif.py +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap.egg-info/dependency_links.txt +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/src/codex_workspace_bootstrap.egg-info/top_level.txt +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/tests/test_audit.py +0 -0
- {codex_workspace_bootstrap-0.3.0 → codex_workspace_bootstrap-0.4.0}/tests/test_sarif.py +0 -0
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: codex-workspace-bootstrap
|
|
3
|
+
Version: 0.4.0
|
|
4
|
+
Summary: Preflight AI coding repositories before Codex, Copilot, Cline, Claude, Gemini, Continue, or Cursor touches them.
|
|
5
|
+
Author: kohli217
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/kohli217/codex-workspace-bootstrap
|
|
8
|
+
Project-URL: Repository, https://github.com/kohli217/codex-workspace-bootstrap
|
|
9
|
+
Project-URL: Issues, https://github.com/kohli217/codex-workspace-bootstrap/issues
|
|
10
|
+
Project-URL: Changelog, https://github.com/kohli217/codex-workspace-bootstrap/blob/main/CHANGELOG.md
|
|
11
|
+
Keywords: ai-coding,codex,openai,windows,github-actions,developer-tools,cli,agents-md
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Environment :: Console
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
16
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
17
|
+
Classifier: Programming Language :: Python :: 3
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
22
|
+
Classifier: Topic :: Software Development :: Quality Assurance
|
|
23
|
+
Classifier: Topic :: Software Development :: Testing
|
|
24
|
+
Requires-Python: >=3.10
|
|
25
|
+
Description-Content-Type: text/markdown
|
|
26
|
+
License-File: LICENSE
|
|
27
|
+
Dynamic: license-file
|
|
28
|
+
|
|
29
|
+
# codex-workspace-bootstrap
|
|
30
|
+
|
|
31
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/actions/workflows/ci.yml)
|
|
32
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/actions/workflows/codeql.yml)
|
|
33
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/releases/latest)
|
|
34
|
+
[](https://pypi.org/project/codex-workspace-bootstrap/)
|
|
35
|
+
[](LICENSE)
|
|
36
|
+
[](pyproject.toml)
|
|
37
|
+
|
|
38
|
+
**Preflight your repository before an AI coding agent touches it.**
|
|
39
|
+
|
|
40
|
+
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.
|
|
41
|
+
|
|
42
|
+
[日本語ガイド](docs/README.ja.md) · [Examples](docs/EXAMPLES.md) · [GitHub Action](docs/GITHUB_ACTION.md) · [Roadmap](docs/ROADMAP.md) · [Releases](https://github.com/kohli217/codex-workspace-bootstrap/releases)
|
|
43
|
+
|
|
44
|
+
> Community-maintained project. Not an official OpenAI product and not affiliated with OpenAI.
|
|
45
|
+
|
|
46
|
+
## The 20-second demo
|
|
47
|
+
|
|
48
|
+
```powershell
|
|
49
|
+
py -m pip install codex-workspace-bootstrap
|
|
50
|
+
cwb preflight .
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Typical output:
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
AI Repository Preflight
|
|
57
|
+
State: NEEDS ATTENTION
|
|
58
|
+
Project: Python
|
|
59
|
+
AI instructions: none detected
|
|
60
|
+
Audit: 10 passed, 4 warnings, 0 blocking
|
|
61
|
+
Next actions:
|
|
62
|
+
[P1] Add repository instructions for AI coding agents -> cwb init-agents .
|
|
63
|
+
[P2] Make the Codex CLI available when local Codex workflows are intended -> codex --version
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Fix the highest-value gap:
|
|
67
|
+
|
|
68
|
+
```powershell
|
|
69
|
+
cwb init-agents .
|
|
70
|
+
cwb preflight .
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
The goal is not a vanity score. The result is one of:
|
|
74
|
+
|
|
75
|
+
- **READY** — core repository signals and AI instructions are present, with no blocking finding;
|
|
76
|
+
- **NEEDS ATTENTION** — usable, but important repository or AI-instruction signals are missing;
|
|
77
|
+
- **BLOCKED** — a blocking finding such as a tracked secret-risk filename needs review.
|
|
78
|
+
|
|
79
|
+
## What it checks
|
|
80
|
+
|
|
81
|
+
### Repository readiness
|
|
82
|
+
|
|
83
|
+
- Git repository
|
|
84
|
+
- README
|
|
85
|
+
- license
|
|
86
|
+
- `.gitignore`
|
|
87
|
+
- common project manifests
|
|
88
|
+
- local Git / Python / Node.js / npm / PowerShell / WSL / Codex signals
|
|
89
|
+
|
|
90
|
+
### AI instruction coverage
|
|
91
|
+
|
|
92
|
+
The preflight detects repository instruction/config signals for:
|
|
93
|
+
|
|
94
|
+
- **Codex / OpenAI agents** — `AGENTS.md`
|
|
95
|
+
- **GitHub Copilot** — repository instructions
|
|
96
|
+
- **Cline**
|
|
97
|
+
- **Claude Code**
|
|
98
|
+
- **Gemini CLI**
|
|
99
|
+
- **Continue**
|
|
100
|
+
- **Cursor**
|
|
101
|
+
|
|
102
|
+
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.
|
|
103
|
+
|
|
104
|
+
### Risk signals
|
|
105
|
+
|
|
106
|
+
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.
|
|
107
|
+
|
|
108
|
+
This is intentionally a lightweight preflight check, not a replacement for deep scanners such as Gitleaks or Trivy.
|
|
109
|
+
|
|
110
|
+
## Why this exists
|
|
111
|
+
|
|
112
|
+
AI coding tools are good at editing code. They are not a substitute for repository hygiene.
|
|
113
|
+
|
|
114
|
+
Before handing a repository to an agent, maintainers still need answers to questions such as:
|
|
115
|
+
|
|
116
|
+
- Is this the right repository root?
|
|
117
|
+
- Is the expected toolchain available?
|
|
118
|
+
- Does the repository explain how to validate changes?
|
|
119
|
+
- Are AI instructions present?
|
|
120
|
+
- Are risky files accidentally tracked?
|
|
121
|
+
- Can CI surface the same checks for every pull request?
|
|
122
|
+
|
|
123
|
+
`codex-workspace-bootstrap` turns those questions into one repeatable preflight.
|
|
124
|
+
|
|
125
|
+
## Short CLI
|
|
126
|
+
|
|
127
|
+
The package installs both command names:
|
|
128
|
+
|
|
129
|
+
```powershell
|
|
130
|
+
cwb --version
|
|
131
|
+
codex-workspace-bootstrap --version
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Use `cwb` for day-to-day work.
|
|
135
|
+
|
|
136
|
+
## Commands
|
|
137
|
+
|
|
138
|
+
### One-command preflight
|
|
139
|
+
|
|
140
|
+
```powershell
|
|
141
|
+
cwb preflight .
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Write reports for automation or review:
|
|
145
|
+
|
|
146
|
+
```powershell
|
|
147
|
+
cwb preflight . --json preflight.json
|
|
148
|
+
cwb preflight . --markdown preflight.md
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Use strict mode when blocking findings should return a non-zero exit code:
|
|
152
|
+
|
|
153
|
+
```powershell
|
|
154
|
+
cwb preflight . --strict
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Detailed audit
|
|
158
|
+
|
|
159
|
+
```powershell
|
|
160
|
+
cwb audit .
|
|
161
|
+
cwb audit . --json audit.json
|
|
162
|
+
cwb audit . --sarif audit.sarif
|
|
163
|
+
cwb audit . --strict
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Non-destructive doctor
|
|
167
|
+
|
|
168
|
+
```powershell
|
|
169
|
+
cwb doctor .
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
`doctor` prints remediation guidance only. It does not install software or modify system configuration.
|
|
173
|
+
|
|
174
|
+
### Generate `AGENTS.md`
|
|
175
|
+
|
|
176
|
+
```powershell
|
|
177
|
+
cwb init-agents .
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
Generation is evidence-based: the tool cross-checks project manifests, 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.
|
|
181
|
+
|
|
182
|
+
## GitHub Action
|
|
183
|
+
|
|
184
|
+
The reusable Action is published on GitHub Marketplace.
|
|
185
|
+
|
|
186
|
+
```yaml
|
|
187
|
+
- uses: actions/checkout@v7
|
|
188
|
+
- uses: actions/setup-python@v7
|
|
189
|
+
with:
|
|
190
|
+
python-version: "3.13"
|
|
191
|
+
- uses: kohli217/codex-workspace-bootstrap@v0.4.0
|
|
192
|
+
with:
|
|
193
|
+
path: .
|
|
194
|
+
strict: "true"
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
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 can be uploaded to GitHub Code Scanning.
|
|
198
|
+
|
|
199
|
+
See [docs/GITHUB_ACTION.md](docs/GITHUB_ACTION.md).
|
|
200
|
+
|
|
201
|
+
## Where it fits
|
|
202
|
+
|
|
203
|
+
This project is a **preflight layer**, not an AI coding agent and not a deep security scanner.
|
|
204
|
+
|
|
205
|
+
| Need | Use |
|
|
206
|
+
| --- | --- |
|
|
207
|
+
| Edit or generate code | Codex, Copilot, Cline, Claude Code, Continue, etc. |
|
|
208
|
+
| Deep secret/vulnerability scanning | Gitleaks, Trivy, dedicated security tooling |
|
|
209
|
+
| Reproducible toolchain management | Dev Containers, mise, project-specific tooling |
|
|
210
|
+
| **Check whether a repository is ready before AI coding starts** | **codex-workspace-bootstrap** |
|
|
211
|
+
|
|
212
|
+
The intent is to complement those tools, not replace them.
|
|
213
|
+
|
|
214
|
+
## Safety model
|
|
215
|
+
|
|
216
|
+
- Core checks run locally.
|
|
217
|
+
- Suspected secret files are not opened or printed by the filename-risk check.
|
|
218
|
+
- Repository contents are not sent to a remote AI service by the core audit.
|
|
219
|
+
- Existing `AGENTS.md` files are protected unless overwrite is explicit.
|
|
220
|
+
- A passing preflight is evidence about the checks performed, **not a security guarantee**.
|
|
221
|
+
|
|
222
|
+
See [SECURITY.md](SECURITY.md).
|
|
223
|
+
|
|
224
|
+
## Maintainer workflow
|
|
225
|
+
|
|
226
|
+
The project itself uses issue → branch → pull request → CI → merge → release.
|
|
227
|
+
|
|
228
|
+
Automated validation includes:
|
|
229
|
+
|
|
230
|
+
- Windows and Ubuntu;
|
|
231
|
+
- Python 3.10 and 3.13;
|
|
232
|
+
- built-wheel smoke tests;
|
|
233
|
+
- Action self-tests;
|
|
234
|
+
- strict self-audit;
|
|
235
|
+
- CodeQL;
|
|
236
|
+
- Dependabot;
|
|
237
|
+
- SARIF validation;
|
|
238
|
+
- PyPI publishing through GitHub OIDC Trusted Publishing.
|
|
239
|
+
|
|
240
|
+
## Install
|
|
241
|
+
|
|
242
|
+
PyPI:
|
|
243
|
+
|
|
244
|
+
```powershell
|
|
245
|
+
py -m pip install codex-workspace-bootstrap
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
Pinned GitHub release artifact:
|
|
249
|
+
|
|
250
|
+
```powershell
|
|
251
|
+
py -m pip install "https://github.com/kohli217/codex-workspace-bootstrap/releases/download/v0.4.0/codex_workspace_bootstrap-0.4.0-py3-none-any.whl"
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
## Development
|
|
255
|
+
|
|
256
|
+
```powershell
|
|
257
|
+
git clone https://github.com/kohli217/codex-workspace-bootstrap.git
|
|
258
|
+
cd codex-workspace-bootstrap
|
|
259
|
+
py -m venv .venv
|
|
260
|
+
.\.venv\Scripts\Activate.ps1
|
|
261
|
+
python -m pip install -e . pytest
|
|
262
|
+
pytest -q
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
Contributions and real-world usage reports are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md), [SUPPORT.md](SUPPORT.md), [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md), and [docs/ADOPTION.md](docs/ADOPTION.md).
|
|
266
|
+
|
|
267
|
+
## License
|
|
268
|
+
|
|
269
|
+
MIT. See [LICENSE](LICENSE).
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
# codex-workspace-bootstrap
|
|
2
|
+
|
|
3
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/actions/workflows/ci.yml)
|
|
4
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/actions/workflows/codeql.yml)
|
|
5
|
+
[](https://github.com/kohli217/codex-workspace-bootstrap/releases/latest)
|
|
6
|
+
[](https://pypi.org/project/codex-workspace-bootstrap/)
|
|
7
|
+
[](LICENSE)
|
|
8
|
+
[](pyproject.toml)
|
|
9
|
+
|
|
10
|
+
**Preflight your repository before an AI coding agent touches it.**
|
|
11
|
+
|
|
12
|
+
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.
|
|
13
|
+
|
|
14
|
+
[日本語ガイド](docs/README.ja.md) · [Examples](docs/EXAMPLES.md) · [GitHub Action](docs/GITHUB_ACTION.md) · [Roadmap](docs/ROADMAP.md) · [Releases](https://github.com/kohli217/codex-workspace-bootstrap/releases)
|
|
15
|
+
|
|
16
|
+
> Community-maintained project. Not an official OpenAI product and not affiliated with OpenAI.
|
|
17
|
+
|
|
18
|
+
## The 20-second demo
|
|
19
|
+
|
|
20
|
+
```powershell
|
|
21
|
+
py -m pip install codex-workspace-bootstrap
|
|
22
|
+
cwb preflight .
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Typical output:
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
AI Repository Preflight
|
|
29
|
+
State: NEEDS ATTENTION
|
|
30
|
+
Project: Python
|
|
31
|
+
AI instructions: none detected
|
|
32
|
+
Audit: 10 passed, 4 warnings, 0 blocking
|
|
33
|
+
Next actions:
|
|
34
|
+
[P1] Add repository instructions for AI coding agents -> cwb init-agents .
|
|
35
|
+
[P2] Make the Codex CLI available when local Codex workflows are intended -> codex --version
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Fix the highest-value gap:
|
|
39
|
+
|
|
40
|
+
```powershell
|
|
41
|
+
cwb init-agents .
|
|
42
|
+
cwb preflight .
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
The goal is not a vanity score. The result is one of:
|
|
46
|
+
|
|
47
|
+
- **READY** — core repository signals and AI instructions are present, with no blocking finding;
|
|
48
|
+
- **NEEDS ATTENTION** — usable, but important repository or AI-instruction signals are missing;
|
|
49
|
+
- **BLOCKED** — a blocking finding such as a tracked secret-risk filename needs review.
|
|
50
|
+
|
|
51
|
+
## What it checks
|
|
52
|
+
|
|
53
|
+
### Repository readiness
|
|
54
|
+
|
|
55
|
+
- Git repository
|
|
56
|
+
- README
|
|
57
|
+
- license
|
|
58
|
+
- `.gitignore`
|
|
59
|
+
- common project manifests
|
|
60
|
+
- local Git / Python / Node.js / npm / PowerShell / WSL / Codex signals
|
|
61
|
+
|
|
62
|
+
### AI instruction coverage
|
|
63
|
+
|
|
64
|
+
The preflight detects repository instruction/config signals for:
|
|
65
|
+
|
|
66
|
+
- **Codex / OpenAI agents** — `AGENTS.md`
|
|
67
|
+
- **GitHub Copilot** — repository instructions
|
|
68
|
+
- **Cline**
|
|
69
|
+
- **Claude Code**
|
|
70
|
+
- **Gemini CLI**
|
|
71
|
+
- **Continue**
|
|
72
|
+
- **Cursor**
|
|
73
|
+
|
|
74
|
+
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.
|
|
75
|
+
|
|
76
|
+
### Risk signals
|
|
77
|
+
|
|
78
|
+
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.
|
|
79
|
+
|
|
80
|
+
This is intentionally a lightweight preflight check, not a replacement for deep scanners such as Gitleaks or Trivy.
|
|
81
|
+
|
|
82
|
+
## Why this exists
|
|
83
|
+
|
|
84
|
+
AI coding tools are good at editing code. They are not a substitute for repository hygiene.
|
|
85
|
+
|
|
86
|
+
Before handing a repository to an agent, maintainers still need answers to questions such as:
|
|
87
|
+
|
|
88
|
+
- Is this the right repository root?
|
|
89
|
+
- Is the expected toolchain available?
|
|
90
|
+
- Does the repository explain how to validate changes?
|
|
91
|
+
- Are AI instructions present?
|
|
92
|
+
- Are risky files accidentally tracked?
|
|
93
|
+
- Can CI surface the same checks for every pull request?
|
|
94
|
+
|
|
95
|
+
`codex-workspace-bootstrap` turns those questions into one repeatable preflight.
|
|
96
|
+
|
|
97
|
+
## Short CLI
|
|
98
|
+
|
|
99
|
+
The package installs both command names:
|
|
100
|
+
|
|
101
|
+
```powershell
|
|
102
|
+
cwb --version
|
|
103
|
+
codex-workspace-bootstrap --version
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Use `cwb` for day-to-day work.
|
|
107
|
+
|
|
108
|
+
## Commands
|
|
109
|
+
|
|
110
|
+
### One-command preflight
|
|
111
|
+
|
|
112
|
+
```powershell
|
|
113
|
+
cwb preflight .
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Write reports for automation or review:
|
|
117
|
+
|
|
118
|
+
```powershell
|
|
119
|
+
cwb preflight . --json preflight.json
|
|
120
|
+
cwb preflight . --markdown preflight.md
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Use strict mode when blocking findings should return a non-zero exit code:
|
|
124
|
+
|
|
125
|
+
```powershell
|
|
126
|
+
cwb preflight . --strict
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Detailed audit
|
|
130
|
+
|
|
131
|
+
```powershell
|
|
132
|
+
cwb audit .
|
|
133
|
+
cwb audit . --json audit.json
|
|
134
|
+
cwb audit . --sarif audit.sarif
|
|
135
|
+
cwb audit . --strict
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Non-destructive doctor
|
|
139
|
+
|
|
140
|
+
```powershell
|
|
141
|
+
cwb doctor .
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
`doctor` prints remediation guidance only. It does not install software or modify system configuration.
|
|
145
|
+
|
|
146
|
+
### Generate `AGENTS.md`
|
|
147
|
+
|
|
148
|
+
```powershell
|
|
149
|
+
cwb init-agents .
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Generation is evidence-based: the tool cross-checks project manifests, 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.
|
|
153
|
+
|
|
154
|
+
## GitHub Action
|
|
155
|
+
|
|
156
|
+
The reusable Action is published on GitHub Marketplace.
|
|
157
|
+
|
|
158
|
+
```yaml
|
|
159
|
+
- uses: actions/checkout@v7
|
|
160
|
+
- uses: actions/setup-python@v7
|
|
161
|
+
with:
|
|
162
|
+
python-version: "3.13"
|
|
163
|
+
- uses: kohli217/codex-workspace-bootstrap@v0.4.0
|
|
164
|
+
with:
|
|
165
|
+
path: .
|
|
166
|
+
strict: "true"
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
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 can be uploaded to GitHub Code Scanning.
|
|
170
|
+
|
|
171
|
+
See [docs/GITHUB_ACTION.md](docs/GITHUB_ACTION.md).
|
|
172
|
+
|
|
173
|
+
## Where it fits
|
|
174
|
+
|
|
175
|
+
This project is a **preflight layer**, not an AI coding agent and not a deep security scanner.
|
|
176
|
+
|
|
177
|
+
| Need | Use |
|
|
178
|
+
| --- | --- |
|
|
179
|
+
| Edit or generate code | Codex, Copilot, Cline, Claude Code, Continue, etc. |
|
|
180
|
+
| Deep secret/vulnerability scanning | Gitleaks, Trivy, dedicated security tooling |
|
|
181
|
+
| Reproducible toolchain management | Dev Containers, mise, project-specific tooling |
|
|
182
|
+
| **Check whether a repository is ready before AI coding starts** | **codex-workspace-bootstrap** |
|
|
183
|
+
|
|
184
|
+
The intent is to complement those tools, not replace them.
|
|
185
|
+
|
|
186
|
+
## Safety model
|
|
187
|
+
|
|
188
|
+
- Core checks run locally.
|
|
189
|
+
- Suspected secret files are not opened or printed by the filename-risk check.
|
|
190
|
+
- Repository contents are not sent to a remote AI service by the core audit.
|
|
191
|
+
- Existing `AGENTS.md` files are protected unless overwrite is explicit.
|
|
192
|
+
- A passing preflight is evidence about the checks performed, **not a security guarantee**.
|
|
193
|
+
|
|
194
|
+
See [SECURITY.md](SECURITY.md).
|
|
195
|
+
|
|
196
|
+
## Maintainer workflow
|
|
197
|
+
|
|
198
|
+
The project itself uses issue → branch → pull request → CI → merge → release.
|
|
199
|
+
|
|
200
|
+
Automated validation includes:
|
|
201
|
+
|
|
202
|
+
- Windows and Ubuntu;
|
|
203
|
+
- Python 3.10 and 3.13;
|
|
204
|
+
- built-wheel smoke tests;
|
|
205
|
+
- Action self-tests;
|
|
206
|
+
- strict self-audit;
|
|
207
|
+
- CodeQL;
|
|
208
|
+
- Dependabot;
|
|
209
|
+
- SARIF validation;
|
|
210
|
+
- PyPI publishing through GitHub OIDC Trusted Publishing.
|
|
211
|
+
|
|
212
|
+
## Install
|
|
213
|
+
|
|
214
|
+
PyPI:
|
|
215
|
+
|
|
216
|
+
```powershell
|
|
217
|
+
py -m pip install codex-workspace-bootstrap
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
Pinned GitHub release artifact:
|
|
221
|
+
|
|
222
|
+
```powershell
|
|
223
|
+
py -m pip install "https://github.com/kohli217/codex-workspace-bootstrap/releases/download/v0.4.0/codex_workspace_bootstrap-0.4.0-py3-none-any.whl"
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
## Development
|
|
227
|
+
|
|
228
|
+
```powershell
|
|
229
|
+
git clone https://github.com/kohli217/codex-workspace-bootstrap.git
|
|
230
|
+
cd codex-workspace-bootstrap
|
|
231
|
+
py -m venv .venv
|
|
232
|
+
.\.venv\Scripts\Activate.ps1
|
|
233
|
+
python -m pip install -e . pytest
|
|
234
|
+
pytest -q
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
Contributions and real-world usage reports are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md), [SUPPORT.md](SUPPORT.md), [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md), and [docs/ADOPTION.md](docs/ADOPTION.md).
|
|
238
|
+
|
|
239
|
+
## License
|
|
240
|
+
|
|
241
|
+
MIT. See [LICENSE](LICENSE).
|
|
@@ -4,13 +4,13 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "codex-workspace-bootstrap"
|
|
7
|
-
version = "0.
|
|
8
|
-
description = "
|
|
7
|
+
version = "0.4.0"
|
|
8
|
+
description = "Preflight AI coding repositories before Codex, Copilot, Cline, Claude, Gemini, Continue, or Cursor touches them."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
license = { text = "MIT" }
|
|
12
12
|
authors = [{ name = "kohli217" }]
|
|
13
|
-
keywords = ["codex", "openai", "windows", "
|
|
13
|
+
keywords = ["ai-coding", "codex", "openai", "windows", "github-actions", "developer-tools", "cli", "agents-md"]
|
|
14
14
|
classifiers = [
|
|
15
15
|
"Development Status :: 3 - Alpha",
|
|
16
16
|
"Environment :: Console",
|
|
@@ -34,6 +34,7 @@ Changelog = "https://github.com/kohli217/codex-workspace-bootstrap/blob/main/CHA
|
|
|
34
34
|
|
|
35
35
|
[project.scripts]
|
|
36
36
|
codex-workspace-bootstrap = "codex_workspace_bootstrap.cli:main"
|
|
37
|
+
cwb = "codex_workspace_bootstrap.cli:main"
|
|
37
38
|
|
|
38
39
|
[tool.setuptools.packages.find]
|
|
39
40
|
where = ["src"]
|