一键导入
reconcile
LLM-powered standards reconciliation for a Punt Labs project
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
LLM-powered standards reconciliation for a Punt Labs project
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Execute an automation playbook — deterministic scripts with LLM error recovery
Check compliance against Punt Labs standards
Scaffold missing files for a Punt Labs project
Scan for personally identifiable information
| name | reconcile |
| description | LLM-powered standards reconciliation for a Punt Labs project |
| disable-model-invocation | true |
Analyze a project against Punt Labs standards and surgically apply fixes. This command handles files that need contextual judgment — workflow customizations, CLAUDE.md quality, pyproject.toml drift — where a deterministic tool would be too blunt.
If the user provided a project path as an argument, use it. Otherwise default to ..
Read the project's pyproject.toml or package.json to determine:
server.py or MCP-related deps)[project.scripts])Also read the project's CLAUDE.md if it exists — it may document intentional overrides.
Run the mechanical checks first:
punt audit <project-path>
Report the output to the user. The deterministic layer catches missing files, config
gaps, and formatting issues. This command focuses on what punt audit cannot: contextual
reconciliation.
Read the following files from the punt-kit standards directory. If punt-kit is a sibling
directory (i.e., ../punt-kit/ relative to the project), read from the local filesystem.
Otherwise, read from the punt-kit repo on GitHub.
standards/python.md — toolchain, quality gates, project layoutstandards/github.md — CI workflows, markdownlint config, action SHA pinsstandards/cli.md — required subcommands, init rulesstandards/distribution.md — install paths, PyPI publishingstandards/plugins.md — plugin structure (if applicable)For each workflow file in .github/workflows/:
Read the project's current workflow
Read the corresponding punt-kit template from src/punt_kit/templates/workflows/
Identify:
Apply changes surgically — preserve project-specific content, add missing standard elements, update stale pins.
Decision framework for workflows:
| What you see | Action |
|---|---|
| Project has extra steps not in template | PRESERVE — these are intentional |
| Template has steps the project is missing | ADD — explain what and why |
| Action versions differ (project is older) | UPDATE — with the template's version |
| Action versions differ (project is newer) | PRESERVE — project may have intentionally upgraded |
| Project has different cache/dependency config | PRESERVE — project knows its own deps |
| Project is missing timeout-minutes | ADD — use template's value |
| Template has a whole new workflow the project lacks | CREATE — but only the workflow file, not modifications to existing ones |
Check the project's CLAUDE.md for:
Required sections present:
## Standards References — with links to relevant punt-kit standards## Quality Gates — with the actual commands for this project's toolchainQuality gate accuracy:
Apply fixes:
Compare the project's [tool.*] sections against the Python standard:
| Section | Standard | Check |
|---|---|---|
[tool.ruff] | line-length=88, target-version="py313" | Report if different |
[tool.ruff.lint] | select includes E, F, I, UP, B, SIM, TCH | Report missing rule sets |
[tool.mypy] | strict=true | Report if not strict |
[tool.pyright] | typeCheckingMode="strict" | Report if not strict |
[tool.pytest.ini_options] | testpaths=["tests"] | Report if missing |
Do NOT auto-fix pyproject.toml — these settings affect build behavior and need human judgment. Report drift with a clear recommendation. Example:
[tool.ruff] target-versionis"py312"but standard is"py313". This may be intentional if the project supports Python 3.12. Confirm before updating.
After all checks, print a structured summary:
## Reconciliation Report
### Applied (safe fixes)
- Applied: Added timeout-minutes to lint.yml
- Applied: Created release.yml from template
- Applied: Added Standards References section to CLAUDE.md
### Needs Review (human judgment required)
- Review: pyproject.toml: ruff target-version is py312, standard is py313
- Review: lint.yml: uses actions/checkout@abc123 but template uses @def456
### Already Compliant
- OK: docs.yml matches template
- OK: CLAUDE.md has all required sections
- OK: pyproject.toml tool configs are standard-compliant
Never delete project-specific content. Reconciliation is additive. If you're unsure whether something is intentional, preserve it and flag it for review.
Explain every change. Before applying an edit, tell the user what you're changing and why. Reference the specific standard that requires it.
Respect CLAUDE.md overrides. If a project's CLAUDE.md explicitly says "we use X instead of Y", that override wins. Don't flag it as drift.
One project at a time. Even if you can see sibling directories, only reconcile the specified project path.
Deterministic checks belong in punt audit. If you find yourself wanting to add
a mechanical check (file exists? config key present?), note it as a potential
punt audit enhancement instead.