open-codev-workflow 0.1.4__tar.gz → 0.1.7__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.
Files changed (91) hide show
  1. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/PKG-INFO +17 -7
  2. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/README.md +16 -6
  3. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/pyproject.toml +3 -1
  4. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/__init__.py +1 -1
  5. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/agents/builder.md +1 -1
  6. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/agents/orchestrator.md +1 -1
  7. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-python-style/SKILL.md +156 -0
  8. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-python-style/agents/openai.yaml +7 -0
  9. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-python-style/references/check-matrix.md +49 -0
  10. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-python-style/scripts/check_google_rules.py +342 -0
  11. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-typescript-style/SKILL.md +136 -0
  12. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-typescript-style/agents/openai.yaml +7 -0
  13. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-typescript-style/references/check-matrix.md +33 -0
  14. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/audit-google-typescript-style/scripts/check_google_rules.mjs +136 -0
  15. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/github-actions-ci-results/SKILL.md +97 -0
  16. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/github-actions-ci-results/agents/openai.yaml +4 -0
  17. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.agents/skills/github-actions-ci-results/references/gh-command-cookbook.md +65 -0
  18. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/pr-review/SKILL.md +45 -12
  19. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.codex/agents/builder.toml +44 -0
  20. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.codex/agents/orchestrator.toml +40 -0
  21. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.codex/agents/reviewer.toml +29 -0
  22. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.junie/agents/builder.md +1 -1
  23. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.junie/agents/orchestrator.md +1 -1
  24. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.opencode/agents/builder.md +1 -1
  25. open_codev_workflow-0.1.7/src/codev_workflow/bundle/.opencode/agents/code-audit.md +89 -0
  26. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.opencode/agents/orchestrator.md +1 -1
  27. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/AGENTS.md +1 -1
  28. open_codev_workflow-0.1.7/src/codev_workflow/bundle/docs/for-ai/ai-agent-guidelines.md +239 -0
  29. open_codev_workflow-0.1.7/src/codev_workflow/bundle/docs/for-human/development-guide.md +219 -0
  30. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/scripts/validate-development-workflow.py +3 -9
  31. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/cli.py +28 -6
  32. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/installer.py +82 -8
  33. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/PKG-INFO +17 -7
  34. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/SOURCES.txt +17 -7
  35. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/tests/test_cli.py +63 -4
  36. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/tests/test_installer.py +117 -4
  37. open_codev_workflow-0.1.7/tests/test_verify_release.py +88 -0
  38. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/AI-WORKFLOW-PROMPTS.md +0 -322
  39. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/WORKFLOW-COOKBOOK.md +0 -427
  40. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/WORKFLOW-HUMAN.md +0 -221
  41. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/for-ai/WORKFLOW-AGENTS.md +0 -188
  42. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/handbooks/IDEA-TO-PRODUCTION-HANDBOOK.md +0 -1198
  43. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/handbooks/LANGUAGE-AGNOSTIC-PROJECT-HANDBOOK.md +0 -753
  44. open_codev_workflow-0.1.4/src/codev_workflow/bundle/docs/handbooks/PYTHON-PROJECT-HANDBOOK.md +0 -955
  45. open_codev_workflow-0.1.4/tests/test_verify_release.py +0 -39
  46. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/LICENSE +0 -0
  47. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/setup.cfg +0 -0
  48. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/__main__.py +0 -0
  49. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/agents/reviewer.md +0 -0
  50. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/build-change/SKILL.md +0 -0
  51. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/build-change/agents/openai.yaml +0 -0
  52. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/build-change/assets/implementation-plan.template.md +0 -0
  53. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/clean-code-review/SKILL.md +0 -0
  54. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/clean-code-review/agents/openai.yaml +0 -0
  55. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/critique-review/SKILL.md +0 -0
  56. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/critique-review/agents/openai.yaml +0 -0
  57. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/critique-review/assets/suggested-edit.template.md +0 -0
  58. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/define-product/SKILL.md +0 -0
  59. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/define-product/agents/openai.yaml +0 -0
  60. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/define-product/assets/brief.template.md +0 -0
  61. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/design-solution/SKILL.md +0 -0
  62. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/design-solution/agents/openai.yaml +0 -0
  63. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/design-solution/assets/decision.template.md +0 -0
  64. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/design-solution/assets/design.template.md +0 -0
  65. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/launch-product/SKILL.md +0 -0
  66. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/launch-product/agents/openai.yaml +0 -0
  67. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/launch-product/assets/launch-plan.template.md +0 -0
  68. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/plan-delivery/SKILL.md +0 -0
  69. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/plan-delivery/agents/openai.yaml +0 -0
  70. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/plan-delivery/assets/delivery-plan.template.md +0 -0
  71. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/pr-review/agents/openai.yaml +0 -0
  72. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/pr-review/scripts/publish_review.py +0 -0
  73. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/pr-review/scripts/set-github-token.ps1 +0 -0
  74. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/review-change/SKILL.md +0 -0
  75. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/review-change/agents/openai.yaml +0 -0
  76. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/specify-project/SKILL.md +0 -0
  77. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/specify-project/agents/openai.yaml +0 -0
  78. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/specify-project/assets/specification.template.md +0 -0
  79. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/specify-project/references/interview-coverage.md +0 -0
  80. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.agents/skills/specify-project/scripts/validate_specification.py +0 -0
  81. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.junie/agents/reviewer.md +0 -0
  82. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.junie/commands/pr-review.md +0 -0
  83. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/.opencode/agents/reviewer.md +0 -0
  84. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/evals/development-workflow/scenarios.json +0 -0
  85. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/codev_workflow/bundle/scripts/evaluate-development-workflow.py +0 -0
  86. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/dependency_links.txt +0 -0
  87. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/entry_points.txt +0 -0
  88. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/requires.txt +0 -0
  89. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/src/open_codev_workflow.egg-info/top_level.txt +0 -0
  90. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/tests/test_pr_review.py +0 -0
  91. {open_codev_workflow-0.1.4 → open_codev_workflow-0.1.7}/tests/test_version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: open-codev-workflow
3
- Version: 0.1.4
3
+ Version: 0.1.7
4
4
  Summary: Human-guided AI software delivery for real repositories.
5
5
  Author: Martin Urban
6
6
  License-Expression: BSD-3-Clause
@@ -91,7 +91,7 @@ The development workflow for building a wheel is documented below.
91
91
  ### Initialize a repository
92
92
 
93
93
  ```shell
94
- codev init --target ../my-project --platform all
94
+ codev init --target ../my-project --agent-platform all
95
95
  codev check --target ../my-project
96
96
  ```
97
97
 
@@ -202,27 +202,37 @@ my-project/
202
202
  ├── AGENTS.md # a managed policy block; local text survives
203
203
  ├── .agents/skills/ # lifecycle, PR, and specialist review skills
204
204
  ├── .agents/agents/ # Antigravity subagents
205
+ ├── .codex/agents/ # Codex orchestrator, builder, reviewer
205
206
  ├── .opencode/agents/ # orchestrator, builder, reviewer
206
207
  ├── .opencode/opencode.json # safely merged; existing agent settings survive
207
208
  ├── .junie/agents/ # Junie subagents
208
- ├── docs/ # workflow, prompts, handbooks, cookbook
209
+ ├── docs/ # AI guidance and human delivery guide
209
210
  ├── evals/development-workflow/ # behavioral scenarios
210
211
  ├── scripts/ # deterministic validators
211
212
  └── .codev/lock.json # installed version and source hashes
212
213
  ```
213
214
 
214
- Use `--platform codex` to omit the OpenCode, Junie, and Antigravity adapters.
215
- Use `--platform opencode`, `--platform junie`, or `--platform antigravity` to
216
- select one adapter, or use `--platform all` for every supported platform. Core
215
+ Use `--agent-platform codex` to omit the OpenCode, Junie, and Antigravity adapters.
216
+ The Codex adapter installs TOML agents under `.codex/agents/`.
217
+ Use `--agent-platform opencode`, `--agent-platform junie`, or
218
+ `--agent-platform antigravity` to select one adapter, or use
219
+ `--agent-platform all` for every supported platform. Core
217
220
  skills and human/AI workflow references are installed for every platform.
218
221
 
222
+ The human delivery guide is installed at `docs/for-human/development-guide.md`.
223
+ The cookbook, prompt templates, and detailed handbooks are maintained as
224
+ dedicated Wiki pages.
225
+
219
226
  To add an adapter to an existing installation, pass it to `update`, for example
220
- `codev update --platform junie`. Use `diff --platform junie` to preview the
227
+ `codev update --agent-platform junie`. Use `diff --agent-platform junie` to preview the
221
228
  platform expansion first.
222
229
 
223
230
  The Antigravity adapter follows its official workspace location:
224
231
  `.agents/agents/<name>.md`.
225
232
 
233
+ The Codex adapter follows its official workspace location:
234
+ `.codex/agents/<name>.toml`.
235
+
226
236
  ## Design principles
227
237
 
228
238
  1. **Local at use time.** Agents read ordinary files in the target repository.
@@ -62,7 +62,7 @@ The development workflow for building a wheel is documented below.
62
62
  ### Initialize a repository
63
63
 
64
64
  ```shell
65
- codev init --target ../my-project --platform all
65
+ codev init --target ../my-project --agent-platform all
66
66
  codev check --target ../my-project
67
67
  ```
68
68
 
@@ -173,27 +173,37 @@ my-project/
173
173
  ├── AGENTS.md # a managed policy block; local text survives
174
174
  ├── .agents/skills/ # lifecycle, PR, and specialist review skills
175
175
  ├── .agents/agents/ # Antigravity subagents
176
+ ├── .codex/agents/ # Codex orchestrator, builder, reviewer
176
177
  ├── .opencode/agents/ # orchestrator, builder, reviewer
177
178
  ├── .opencode/opencode.json # safely merged; existing agent settings survive
178
179
  ├── .junie/agents/ # Junie subagents
179
- ├── docs/ # workflow, prompts, handbooks, cookbook
180
+ ├── docs/ # AI guidance and human delivery guide
180
181
  ├── evals/development-workflow/ # behavioral scenarios
181
182
  ├── scripts/ # deterministic validators
182
183
  └── .codev/lock.json # installed version and source hashes
183
184
  ```
184
185
 
185
- Use `--platform codex` to omit the OpenCode, Junie, and Antigravity adapters.
186
- Use `--platform opencode`, `--platform junie`, or `--platform antigravity` to
187
- select one adapter, or use `--platform all` for every supported platform. Core
186
+ Use `--agent-platform codex` to omit the OpenCode, Junie, and Antigravity adapters.
187
+ The Codex adapter installs TOML agents under `.codex/agents/`.
188
+ Use `--agent-platform opencode`, `--agent-platform junie`, or
189
+ `--agent-platform antigravity` to select one adapter, or use
190
+ `--agent-platform all` for every supported platform. Core
188
191
  skills and human/AI workflow references are installed for every platform.
189
192
 
193
+ The human delivery guide is installed at `docs/for-human/development-guide.md`.
194
+ The cookbook, prompt templates, and detailed handbooks are maintained as
195
+ dedicated Wiki pages.
196
+
190
197
  To add an adapter to an existing installation, pass it to `update`, for example
191
- `codev update --platform junie`. Use `diff --platform junie` to preview the
198
+ `codev update --agent-platform junie`. Use `diff --agent-platform junie` to preview the
192
199
  platform expansion first.
193
200
 
194
201
  The Antigravity adapter follows its official workspace location:
195
202
  `.agents/agents/<name>.md`.
196
203
 
204
+ The Codex adapter follows its official workspace location:
205
+ `.codex/agents/<name>.toml`.
206
+
197
207
  ## Design principles
198
208
 
199
209
  1. **Local at use time.** Agents read ordinary files in the target repository.
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "open-codev-workflow"
7
- version = "0.1.4"
7
+ version = "0.1.7"
8
8
  description = "Human-guided AI software delivery for real repositories."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -56,11 +56,13 @@ codev_workflow = [
56
56
  "bundle/.agents/skills/*/references/*",
57
57
  "bundle/.agents/skills/*/scripts/*",
58
58
  "bundle/.agents/agents/*.md",
59
+ "bundle/.codex/agents/*.toml",
59
60
  "bundle/.opencode/agents/*.md",
60
61
  "bundle/.junie/agents/*.md",
61
62
  "bundle/.junie/commands/*.md",
62
63
  "bundle/docs/*.md",
63
64
  "bundle/docs/for-ai/*.md",
65
+ "bundle/docs/for-human/*.md",
64
66
  "bundle/docs/handbooks/*.md",
65
67
  "bundle/evals/development-workflow/*.json",
66
68
  "bundle/scripts/*.py",
@@ -2,4 +2,4 @@
2
2
 
3
3
  __all__ = ["__version__"]
4
4
 
5
- __version__ = "0.1.4"
5
+ __version__ = "0.1.7"
@@ -13,7 +13,7 @@ tools:
13
13
  ---
14
14
 
15
15
  Implement exactly one bounded work item delegated by the orchestrator. Follow
16
- `AGENTS.md`, `docs/for-ai/WORKFLOW-AGENTS.md`, and `build-change`. Treat the
16
+ `AGENTS.md`, `docs/for-ai/ai-agent-guidelines.md`, and `build-change`. Treat the
17
17
  accepted implementation plan and its cited brief/specification/design/API as
18
18
  authority; do not redesign them to make coding easier.
19
19
 
@@ -8,7 +8,7 @@ commandExecutionPolicy: sandbox
8
8
  ---
9
9
 
10
10
  Act as the human's primary engineering partner. Follow `AGENTS.md`,
11
- `docs/for-ai/WORKFLOW-AGENTS.md`, and the applicable repository skills. Present
11
+ `docs/for-ai/ai-agent-guidelines.md`, and the applicable repository skills. Present
12
12
  the work as `Understand`, `Build`, `Review`, or `Ship` and select the lightest
13
13
  safe path without requiring the human to know skill names.
14
14
 
@@ -0,0 +1,156 @@
1
+ ---
2
+ name: audit-google-python-style
3
+ description: Audit Python code against the Google Python Style Guide using this repository's Ruff and pymake toolchain plus supplemental analysis, then propose a short grouped remediation plan for explicit human approval before modifying approved source files. Invoke only when the user explicitly requests this audit or invokes $audit-google-python-style. Do not use for ordinary code reviews, pull-request reviews, linting, or implementation tasks.
4
+ ---
5
+
6
+ # Audit Google Python Style
7
+
8
+ Perform a specialist Google Python Style audit with Ruff and `pymake` as the
9
+ deterministic baseline. This skill has two explicit phases: plan, then apply
10
+ after approval.
11
+
12
+ ## Invocation boundary
13
+
14
+ Use this skill only for an explicit request such as:
15
+
16
+ ```text
17
+ $audit-google-python-style
18
+ Audit the Python codebase and propose approved style fixes.
19
+ ```
20
+
21
+ Do not invoke it implicitly as part of `review-change`, `clean-code-review`,
22
+ `pr-review`, a normal code review, or a generic linting request.
23
+
24
+ Invoking the skill is not approval to modify code. Keep the audit and plan
25
+ phase read-only. Require a separate affirmative human response to the exact
26
+ plan before entering the apply phase.
27
+
28
+ ## Tooling policy
29
+
30
+ The attached guide mentions Pylint, but this repository deliberately uses Ruff.
31
+ Never invoke, install, configure, or require Pylint. Use the repository wrapper:
32
+
33
+ ```powershell
34
+ .\pymake.bat lint
35
+ .\pymake.bat format dry_run=true
36
+ .\pymake.bat check_types
37
+ ```
38
+
39
+ Use `pymake` rather than invoking Ruff, formatters, or type checkers directly.
40
+ The supplemental standard-library checker is the only extra command because no
41
+ existing `pymake` task wraps it.
42
+
43
+ ## Phase A: audit and approval plan
44
+
45
+ 1. Read repository instructions, `ruff.toml`, `pyproject.toml`, `pyrefly.toml`,
46
+ package-specific configurations, generated-code conventions, local
47
+ exceptions, and the current working-tree state.
48
+ 2. Define the in-scope `.py` files. Include tests unless explicitly excluded.
49
+ Exclude dependencies, caches, build output, vendored code, generated code,
50
+ and `.agents` only with repository evidence.
51
+ 3. Run the deterministic `pymake` checks before making judgments.
52
+ 4. Run `scripts/check_google_rules.py` for each Python package.
53
+ 5. Perform the agent judgment pass over imports, naming, documentation,
54
+ exceptions, resources, global state, type annotations, and consistency.
55
+ 6. Produce a short remediation plan grouped by source-file collection and rule
56
+ family. Include:
57
+ - approved scope and excluded files;
58
+ - grouped files or directories;
59
+ - exact style changes proposed;
60
+ - whether each change is Ruff-assisted or manual;
61
+ - non-goals and behavior-preservation constraints; and
62
+ - post-approval validation commands.
63
+ 7. Stop and ask the human to approve, reject, or revise this exact plan. Do not
64
+ edit files, run `pymake` write-mode format/lint fixes, or apply automated
65
+ changes before approval.
66
+
67
+ If the plan depends on missing scope, a project-policy decision, uncertain
68
+ generated-code status, or a behavior/public-API/architecture change, ask for
69
+ clarification instead of silently expanding the plan.
70
+
71
+ ## Strict documentation contract
72
+
73
+ Treat documentation as a style requirement for every documentable symbol,
74
+ whether it is public or private. This includes modules, functions, async
75
+ functions, classes, methods, constructors, properties, and other named
76
+ callables. Do not exempt a private or internal symbol merely because its name
77
+ starts with an underscore. Generated code is excluded only when the repository
78
+ provides evidence that it is generated and out of scope.
79
+
80
+ Every docstring must contain a concise summary sentence on its first line,
81
+ terminated as a complete sentence. For functions and methods, use Google
82
+ Python docstring sections as applicable:
83
+
84
+ - `Args:` describes every meaningful parameter, including keyword-only,
85
+ variadic, optional, and private parameters; `self` and `cls` do not need
86
+ entries.
87
+ - `Returns:` describes every returned value when the callable returns a value.
88
+ - `Yields:` describes yielded values for generators instead of `Returns:`.
89
+ - `Raises:` describes exceptions that are part of the callable's contract.
90
+
91
+ Do not accept an empty docstring, a placeholder, a name restatement, or a
92
+ summary without required parameter or return documentation. A callable with no
93
+ meaningful parameters does not need an `Args:` section, and a callable that
94
+ only returns `None` does not need `Returns:`, but its summary must still
95
+ describe the behavior. Missing docstrings or missing applicable sections are
96
+ style fixes for the approval plan unless their wording requires a human API or
97
+ behavior decision.
98
+
99
+ ## Phase B: approved remediation
100
+
101
+ Enter this phase only after explicit approval of the plan. Treat approval as
102
+ limited to the named files, rule families, and non-goals.
103
+
104
+ 1. Re-check the working tree and re-audit the approved scope. If relevant files
105
+ changed since the plan, stop and present an updated plan.
106
+ 2. Apply only the approved style changes. Preserve runtime behavior, public
107
+ APIs, tests, and unrelated user changes. Do not alter dependencies,
108
+ configuration, or generated sources unless explicitly approved.
109
+ 3. Use Ruff's formatter and safe fixes through the repository wrapper when the
110
+ approved scope covers the formatter's full target. For a partial scope,
111
+ make targeted edits and use `pymake` check-only validation to avoid changing
112
+ unapproved files.
113
+ 4. Make remaining documentation, import, exception, type, naming, and design
114
+ corrections manually.
115
+ 5. Re-run `pymake lint`, `pymake format dry_run=true`, `pymake check_types`, and
116
+ the supplemental checker. Run tests when edits could affect behavior.
117
+ 6. Inspect the exact diff for scope expansion, accidental behavior changes,
118
+ weakened tests, and formatter churn.
119
+ 7. Report applied changes, validation evidence, residual findings, and any
120
+ items that require a new approval. Do not merge, commit, or release.
121
+
122
+ ## Supplemental checks
123
+
124
+ The checker identifies relative and wildcard imports, semicolons, explicit
125
+ line continuations, type comments, Pylint suppressions, `typing.Text`, legacy
126
+ typing aliases, broad exception handlers, assertions outside tests, missing or
127
+ incomplete docstrings for public and private documentable symbols, mutable
128
+ module/class state, nested definitions, lambdas, long functions, long lines,
129
+ malformed TODO comments, syntax errors, and unreadable source files.
130
+
131
+ Use Python's standard-library `ast` and `tokenize` modules. Hard syntactic
132
+ violations exit non-zero; judgment items are review findings until the agent
133
+ decides whether the guide and repository context establish a violation.
134
+
135
+ ## Style judgment
136
+
137
+ Apply the guide's normative language precisely. Treat recommendations as
138
+ context-sensitive unless Ruff, the type checker, or local policy makes them
139
+ mandatory. Review module structure, docstring completeness and quality,
140
+ comments, exception design, resource lifetime and context managers,
141
+ comprehensions, decorators, generators, properties, logging, error messages,
142
+ TODO context, `__main__` guards, function size, annotations, `None` handling,
143
+ generics, and local consistency. The documentation contract above is an
144
+ explicit project audit policy and applies to private symbols as well as public
145
+ ones. Do not turn Pylint-specific instructions into requirements for this
146
+ Ruff-based repository.
147
+
148
+ ## Plan and completion reports
149
+
150
+ The plan report must end with `APPROVAL REQUIRED` unless no changes are needed.
151
+ The apply report must include exact commands and results, approved scope,
152
+ changed files, residual findings, and one verdict: `COMPLETED`, `PARTIALLY
153
+ COMPLETED`, or `CLARIFICATION REQUIRED`.
154
+
155
+ Never claim compliance solely because Ruff passes. Human approval authorizes
156
+ only the approved remediation plan and never authorizes merge or release.
@@ -0,0 +1,7 @@
1
+ interface:
2
+ display_name: "Google Python Style Audit"
3
+ short_description: "Dedicated Google Python conformance audit"
4
+ default_prompt: "Use $audit-google-python-style to audit this Python codebase and propose approved style fixes."
5
+
6
+ policy:
7
+ allow_implicit_invocation: false
@@ -0,0 +1,49 @@
1
+ # Google Python Audit Check Matrix
2
+
3
+ ## Authority
4
+
5
+ Use the attached Google Python Style Guide as the primary authority. Its major
6
+ areas are Python language rules, imports and packages, exceptions, mutable
7
+ global state, nested definitions, comprehensions, iterators, generators,
8
+ decorators, threading, power features, modern Python, type annotations, style
9
+ rules, documentation, naming, main guards, and consistency.
10
+
11
+ ## Tool ownership
12
+
13
+ | Area | Primary check | Interpretation |
14
+ | --- | --- | --- |
15
+ | Ruff lint rules | `pymake lint` | Report configured Ruff findings. |
16
+ | Formatting | `pymake format dry_run=true` | Report formatter failures; do not auto-fix. |
17
+ | Type correctness | `pymake check_types` | Report type-checker failures separately from style. |
18
+ | Syntax and lexical bans | `scripts/check_google_rules.py` | Report confirmed findings. |
19
+ | Documentation and design | Agent judgment plus supplemental checker | Inspect every public and private documentable symbol, including summary, `Args`, `Returns`/`Yields`, and `Raises` sections. |
20
+
21
+ ## Important local policy
22
+
23
+ The guide's Pylint instructions are not executable requirements here. Ruff is
24
+ the repository's lint and formatting tool, and `pymake` is the required task
25
+ wrapper. Never install or run Pylint to satisfy this audit.
26
+
27
+ The repository's Ruff configuration intentionally ignores some upstream rules,
28
+ including line length and certain docstring rules. The agent must therefore
29
+ review those Google-style requirements independently rather than treating a
30
+ passing Ruff run as proof of compliance.
31
+
32
+ ## Hard versus judgment findings
33
+
34
+ Treat syntax errors, relative imports, wildcard imports, semicolons, explicit
35
+ line continuations, disallowed type comments, and `typing.Text` as
36
+ deterministic candidates. Treat broad exceptions, assertions, mutable globals,
37
+ long lines, long functions, nested definitions, and legacy typing aliases as
38
+ review items unless repository context proves a direct violation. Missing or
39
+ incomplete documentation for documentable public or private symbols is a
40
+ strict audit finding under this skill's project policy. Verify a complete
41
+ first-line summary, `Args:` for meaningful parameters, `Returns:` for returned
42
+ values, `Yields:` for generators, and `Raises:` when exceptions are part of the
43
+ contract.
44
+
45
+ ## Scope
46
+
47
+ Exclude `node_modules`, `.venv`, caches, build output, vendored code, generated
48
+ sources, and `.agents` by default. Include tests by default. Record exclusions
49
+ and accepted exceptions in the audit report.