Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/Morrison-Lab/ai-config --skill r-pkg-spellcheck명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
| name | r-pkg-spellcheck |
| description | Spellcheck before git push. |
| user-invocable | true |
| allowed-tools | ["Read","Edit","Write","Bash"] |
Verifies spelling locally before pushing R-package changes that touch text the
Spellcheck CI workflow scans. The repo runs spelling::spell_check_package()
in CI and treats unknown words as a failure — the only allow-list is
inst/WORDLIST.
Why this exists: a push that adds new words (e.g. assignees, PR's,
SHA) to NEWS.md without updating inst/WORDLIST fails Spellcheck CI and
forces a follow-up push.
Before git push if the diff touches any of:
NEWS.md (or NEWS)R/*.R roxygen comments (#')man/*.Rdvignettes/*.Rmdvignettes/**/*.qmd --- including a change that only renames or repoints a
Quarto {{< include >}}, since the include path is itself scanned as prose
(see step 3)README.Rmd / README.mdDESCRIPTION Title: / Description: fieldsCI-only / workflow-YAML changes alone don't need a spellcheck pass.
Confirm this is an R package. Check that DESCRIPTION exists at the
repo root. If not, skip — this skill doesn't apply.
Run the same check CI runs:
Rscript -e 'spelling::spell_check_package()'
WORD FOUND IN
blocks. No output = clean.spelling isn't installed: Rscript -e 'install.packages("spelling")'
then retry. If R isn't available at all, fall back to step 4.Triage each flagged word:
inst/WORDLIST.PR's) → usually rewrite as PR
or the PR's foo; only WORDLIST it if rewriting hurts clarity.{{< include >}} path rather than from the
prose -> rename the subfile so its name is made of dictionary words.
Don't backtick the shortcode (that disables the transclusion), and prefer
renaming over a WORDLIST add, which puts a path artifact into a word list.
Check FOUND IN before assuming a token is prose: a hit whose only
occurrence is an include line is this case, not a misspelling.Add to inst/WORDLIST correctly. This is the easy place to break CI.
python3 -c 'import sys; lines=sorted(set(open("inst/WORDLIST","rb").read().decode().splitlines())); open("inst/WORDLIST","wb").write(("\r\n".join(lines)+"\r\n").encode())'
Rscript -e 'spelling::update_wordlist()' interactively (it
handles sort + line endings automatically).Re-run step 2 to confirm clean before pushing.
Manually scan the added text for:
PR's, repo's)Compare against inst/WORDLIST. Acronyms and possessives are the usual misses.
This pattern applies to any R package using the spelling package's GitHub
Actions workflow.
This skill only spellchecks text that's already there. For the broader
R-package release workflow it's one narrow slice of, see
r-pkg-check (a full devtools::check()/
R CMD check sweep), r-pkg-news (drafting a new
NEWS.md entry, as opposed to spellchecking one already written), and
r-pkg-cran-checklist (the full CRAN
submission checklist).