Word counter
Deterministic word-count skill for Codex and Claude Code, with consistent Chinese, English, and mixed-text counting rules.
npx -y skills add Moosphan/word-counter-skill --skill word-counterAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Deterministic counting for Chinese, English, and mixed-language text such as articles, essays, novels, chapters, outlines, transcripts, and pasted paragraphs. Use when the user asks for word count, character count, manuscript length, bilingual text count, chapter length, or wants a stable count instead of a model estimate.
SKILL.md
2.9 KB, as published. Nobody here has run it
Word Counter
Use the bundled script to produce a reproducible count. Prefer this skill whenever "roughly how many words" is not good enough.
If the user asks in Chinese, run the script with --locale zh so the report is returned in Chinese. If the user asks in English, use --locale en. Only use --details when the user explicitly asks for detailed statistics.
Pick A Profile
- Use
zhfor Chinese-style content counting. This treats CJK characters, Latin letters, digits, and other letters as countable content characters, while ignoring whitespace and punctuation. - Use
enfor English-style word counting. This counts English words, numeric tokens, and other non-CJK word tokens. - Use
mixedwhen the text contains both Chinese and English and the user wants one total. This counts each CJK character as1, then adds English words, number tokens, and other non-CJK word tokens.
If the user does not specify a profile, run mixed and report the alternative zh and en totals as context.
Run The Script
For short single-line text:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/word-counter/scripts/word_counter.py" --profile mixed --locale en --format markdown --text "Hello world from OpenAI"
For multi-line text, prefer stdin:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/word-counter/scripts/word_counter.py" --profile zh --locale zh --format markdown <<'EOF'
第一段……
EOF
For file input:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/word-counter/scripts/word_counter.py" --profile en --locale en --format markdown ./chapter-01.txt
Report The Result
Return the result in this compact Markdown format. Default to the English example below:
# Word Count Result
- Selected profile: `mixed` (Mixed-language count)
- Selected total: `1234`
- Applied formula: `mixed_count = cjk_chars + english_words + number_tokens + other_words`
| Metric | Value |
| --- | ---: |
| Chinese count | 1300 |
| English words | 45 |
| Mixed total | 1234 |
| Line count | 12 |
| Paragraph count | 4 |
When the user asks in Chinese, return the same compact structure with Chinese labels. Do not show CJK characters, English words, or Number tokens unless the user explicitly asks for detailed statistics, in which case run with --details.
Prefer using the script's Markdown output directly, then optionally add a very short interpretation sentence below it.
Counting Rules
Read references/counting-rules.md when you need the exact formulas, edge-case handling, or ready-to-use examples.