원클릭으로
version-impact
Assess a diff for version-bump implications, missing CHANGELOG entries, and stale docs. Run before opening a PR.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Assess a diff for version-bump implications, missing CHANGELOG entries, and stale docs. Run before opening a PR.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Motor-aware pacing — decomposes a goal, shows each estimate padded by the profile buffer, names why.
Motor-aware pacing — decomposes a goal, shows each estimate padded by the profile buffer, names why.
Morning brief — what changed overnight, what matters today, one next-action per project.
Transcript → four-section brief (my asks, others' asks, decisions, ambiguous items with verbatim quotes). Records decisions into the cognitive graph.
/resume command — reconstruct yesterday's mental state from the cognitive graph, without inventing facts.
Reformats responses to Answer-First when sessions run long; surfaces the user's own prior intent if past their break threshold. Also activates on design-critique contexts (Figma reviews, comp reviews, prototype walk-throughs, spec reviews) so the verdict lands before the reasoning.
| name | version-impact |
| description | Assess a diff for version-bump implications, missing CHANGELOG entries, and stale docs. Run before opening a PR. |
Pre-flight check for any PR that might touch a published package. It does
not call out to any service; it just runs git, cat, grep, and jq
against the local checkout and reports what it sees.
The CI workflow .github/workflows/pr-version-check.yml runs the same
deterministic logic via .github/scripts/version-impact.sh and posts a
sticky comment on the PR. Running this skill locally is a faster preview
of that same comment.
packages/git diff <base>...HEAD --name-only (default base: origin/main).major / minor / patch / none).
b. Reads the current version from package.json or pyproject.toml.
c. Diffs that version against the file at <base> to see if it was
already bumped, and whether the bump matches the recommended kind.
d. Checks whether the package's local CHANGELOG.md got a new entry
for the new version.
e. Greps the root CHANGELOG.md and docs/ for hardcoded references
to the old version that may now be stale.From the repo root:
bash .github/scripts/version-impact.sh
To diff against a different base:
BASE_REF=origin/release-0.3 bash .github/scripts/version-impact.sh
To get JSON instead of markdown (useful for piping into other tooling):
FORMAT=json bash .github/scripts/version-impact.sh
This is the authoritative mapping the skill and the workflow share. If
the workspace layout changes, both this section and the matching
case in .github/scripts/version-impact.sh must be updated.
| Path glob | Package | Publish target |
|---|---|---|
packages/cli/** | @neurodock/cli | npm |
packages/core/** | @neurodock/core | npm |
packages/native-host/** | @neurodock/native-host | npm |
packages/extension-browser/** | @neurodock/extension-browser | private (bumps still flagged) |
packages/mcp-chronometric/** | neurodock-mcp-chronometric | PyPI |
packages/mcp-cognitive-graph/** | neurodock-mcp-cognitive-graph | PyPI |
packages/mcp-guardrail/** | neurodock-mcp-guardrail | PyPI |
packages/mcp-task-fractionator/** | neurodock-mcp-task-fractionator | PyPI |
packages/mcp-translation/** | neurodock-mcp-translation | PyPI |
packages/clinical/** | neurodock-clinical | PyPI |
packages/evals/** | neurodock-evals | PyPI |
packages/skills/*/** | skill bundle (no semver; flag SKILL.md frontmatter changes) | n/a |
plugins/*/** | community plugin (version lives in the plugin) | n/a |
profiles/* | profile preset | n/a |
docs/** | documentation site | n/a (but flagged if referencing a stale version) |
.github/**, root markdown, scripts/** | meta | n/a |
Per-package, look at what was touched inside the package directory:
schemas/ lost a field or renamed a required fieldpackages/cli/src/commands/)src/tools/ or
src/server.py-level registration removed)src/tests/**, *.test.ts, *.spec.ts, test_*.py)README.md, CHANGELOG.md of
older entries)tsconfig*.json, pytest.ini, vitest.config.ts)The detection is conservative — when in doubt the skill picks the higher bump kind and explains why in the report so the contributor can override it if the heuristic was too cautious.
After identifying touched packages, the skill greps for:
docs/**/*.md* file that mentions the package's old version
string (v0.4.2, 0.4.2) — flagged as potentially stale.CHANGELOG.md — if a publish-path package's version changed
in this PR but the root index has no entry for the new repo-wide
release, that gets flagged too (only an info-level note; root-index
entries are batched and not required per-PR).CHANGELOG.md — if the version bumped but no new
entry exists for that version, that's a hard "missing CHANGELOG" flag..changeset/*.md — if no changeset file exists and a publish-path
package's source changed, the skill suggests running pnpm changeset.The skill prints a markdown report with these sections, in order:
## Touched packagesA table. Columns: package | files changed | recommended bump | current version | suggested new version | status.
Status is one of:
ok — version bumped, CHANGELOG presentneeds-bump — source changed, version unchangedbump-mismatch — version bumped but smaller than recommendedmissing-changelog — version bumped but no CHANGELOG entryno-changeset — no .changeset/*.md for a publish-path change## CHANGELOG checkPer-package one-line entries:
✓ packages/cli/CHANGELOG.md — entry for v0.4.4✗ packages/mcp-cognitive-graph/CHANGELOG.md — needed for v0.0.4## Docs cross-references that may be staleEach line: <file>:<line> — references "v0.4.2" — should be "v0.4.3"?
If no stale references found, prints (none).
## Suggested next stepsA numbered checklist the contributor can paste into the PR or follow locally. Examples:
[ ] Bump @neurodock/cli from 0.4.3 to 0.4.4 in packages/cli/package.json[ ] Add a CHANGELOG entry under packages/cli/CHANGELOG.md[ ] Run pnpm changeset and commit the new file under .changeset/Keep it factual. No marketing copy, no enthusiasm markers. The output goes into a PR comment that contributors read while they're already tired; lead with what's wrong, not what's right.