conventions
Discover project conventions and configure .pk.json by analyzing the codebase
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Discover project conventions and configure .pk.json by analyzing the codebase
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Emit the init commands for a new plankit-tooled project — GitHub repo, pk setup --baseline, v0.0.0 tag, develop branch, .pk.json release config
Ship a release: changelog, tag, merge, and push in one pass
Ship a release: changelog, tag, merge, and push in one pass
Discover project conventions and configure .pk.json by analyzing the codebase
Deep-analyze the project's rule set (.claude/rules + CLAUDE.md) for coherence, redundancy, tensions, gaps, and actionable fixes
Preserve the most recently approved plan to docs/plans/
| name | conventions |
| description | Discover project conventions and configure .pk.json by analyzing the codebase |
| disable-model-invocation | true |
| pk_sha256 | f5075409af69d244ed868f3ddd7147f7b9d9ad2a9fe35cefb6571d7df3488382 |
Analyze this project and generate or refresh the Project Conventions section in CLAUDE.md.
Run this after pk setup to add project-specific conventions, or re-run anytime as the project evolves.
# CLAUDE.md
IMPORTANT: Follow these rules at all times.
## Critical Rules
- NEVER take shortcuts without asking. STOP, ASK, WAIT for approval.
- NEVER force push. Make a new commit to fix mistakes.
- NEVER commit secrets to version control.
- Only do what was asked. No scope creep.
- Understand existing code before changing it.
- If you don't know, say so. Never guess.
- Test before and after every change.
- Surface errors clearly. No silent fallbacks.
## Project Conventions section already exists, read it carefully — this is a refresh, not a blank slate. Preserve conventions that are still accurate, update what has changed, and add anything new..github/workflows/) — whether GitHub Actions are pinned to commit SHAs or use mutable tags, and whether Dependabot is configured for GitHub Actions updatesgit branch --list, git branch -r, and git tag --list 'v*' --sort=-v:refname; when the default branch has an upstream, also run git log origin/<branch>..<branch> --oneline. Summarize the findings in a sentence (e.g. "main only, 2 unpushed commits, no version tags") so the next step's questions read as a transition from this setup, not a quiz.main, develop)main, production)main).pk.json based on step 5 answers. If the user specified no protected branches, no release branch, and no custom changelog types, skip this step — do not create an empty .pk.json. Otherwise include only the opted-in keys: {"guard": {"branches": [...]}}, {"release": {"branch": "..."}}, {"changelog": {"types": [...]}}. If .pk.json already exists, merge the keys — do not overwrite existing config. Field-merge the guard object: pk setup writes guard.mode and guard.push (and preserve.mode) into .pk.json, so when you add guard.branches merge it into the existing guard object and keep those mode fields — never replace the whole object. Sort top-level keys alphabetically.main but step 4 found only main). If the branching point is ambiguous because the default branch is ahead of its origin, show the git log origin/<branch>..<branch> --oneline output and ask:
<branch> or from origin/<branch>?
Then preview the exact commands and run them only after the user confirms:git branch develop <start-ref>
git switch develop
git push -u origin develop
## Project Conventions section with the discovered conventions. Each convention should be a concise bullet point. Group technical conventions and business/domain rules under separate subheadings. Only include a "never commit directly to X" convention if the user specified protected branches in step 5.pk status: its Readiness section confirms the new setup or lists exactly what is still missing (baseline tag, branches on origin).## Project Conventions section already exists, replace it with the updated version — do not duplicate it.<!-- pk:sha256:... -->, remove it. Once customized, the file is user-owned and the marker is stale..pk.json with configured commit types, include them in the conventions.pk release to trunk flow.git branch develop <branch> carries the unpushed commits onto the new working branch; git branch develop origin/<branch> leaves them on the default branch until the user pushes. Never pick one silently; when local and origin match, the local branch is the start ref and no question is needed.guard.branches, release branch configures release.branch, custom changelog types configures changelog.types. Default commit types: build, chore, ci, deprecate, docs, feat, fix, perf, plan (hidden), refactor, revert, security, style, test.@v4), report this to the user as a security finding — mutable tags are vulnerable to supply chain attacks. If .github/dependabot.yml is missing or does not cover GitHub Actions, mention it as a way to keep pinned SHAs current. Include relevant conventions in the draft if the project has workflow files.