by coji
仕事の日本語文書を読みやすくわかりやすく書く・直す Agent Skill。議事録・調査レポート・社内ガイド・リサーチメモ・スライド構成に対応し、AI臭さの除去も工程に含む。sudachipy 形態素解析による機械検出付き。
# Add to your Claude Code skills
git clone https://github.com/coji/natural-japaneseGuides for using ai agents skills like natural-japanese.
natural-japanese is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by coji. 仕事の日本語文書を読みやすくわかりやすく書く・直す Agent Skill。議事録・調査レポート・社内ガイド・リサーチメモ・スライド構成に対応し、AI臭さの除去も工程に含む。sudachipy 形態素解析による機械検出付き。. It has 51 GitHub stars.
natural-japanese's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/coji/natural-japanese" and add it to your Claude Code skills directory (see the Installation section above).
natural-japanese is primarily written in Python. It is open-source under coji on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh natural-japanese against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
仕事の日本語を、読みやすくわかりやすく書く・直すための Agent Skill です。議事録・調査レポート・社内ガイド・リサーチメモ・スライド構成といった仕事の文書から、note・ブログ・エッセイまで。AIと文書を作るとき毎回プロンプトに書いている指示——結論から書いて、論旨を明確に、見出しは端的に、専門用語は文中で説明して——を、書く前の設計・書くときの制約・書いた後の検査の全工程に組み込みます。AI臭さ(AIっぽい/機械翻訳っぽい)の除去は工程の一部です。
An Agent Skill for writing clear, readable Japanese work documents — designing the argument before writing, constraining generation with a 12-article style constitution, then mechanically detecting "AI-smelling" patterns via sudachipy morphological analysis and iterating until the text converges.
軸は二つあります。
第一に「検出は機械、判断は人間(またはAI)」。AI は自分自身の AI 臭さを認識しにくい、という前提に立ち、修正の前にまず skills/natural-japanese/scripts/lint.py が形態素解析(sudachipy)で決定的に検出します。何をどう直すかはエージェント(あなた)の判断に委ねます。
skills/natural-japanese/references/forbidden-patterns.md)第二に「事後修正より生成時制約」。書いた後にAI臭を消すより、書く前の設計(読者・主メッセージ・見出しスケルトン)と書くときの制約(skills/natural-japanese/references/writing-constitution.md の文体憲法12箇条)で発生自体を防ぐほうが効きます。文書タイプ別の型——議事録・調査レポート・社内ガイド・リサーチメモ/ディスカッションペーパー・スライド構成——は skills/natural-japanese/references/doctypes/ にまとめてあります。
一方で、語順・読点の位置・一文一義・主語述語の距離といった「そもそも読みにくい」領域は、コーパス検証の結果、機械的な閾値化ができない判断領域だと判明しています(corpus/reports/readability-sweep.md)。この領域は検出器を増やすのではなく、skills/natural-japanese/references/readability-principles.md(ジャンル横断の一般原則)と skills/natural-japanese/references/readability-antipatterns.md(悪文パターンカタログ)を参照しながら、AI自身が周回ごとに目視でレビューする設計にしています。ジャンル(tech/business/essay/公用文)ごとの判断の重みづけの違いは skills/natural-japanese/references/genre-notes.md にまとめてあります。
Python スクリプトの実行には uv が必要です。
brew install uv
Homebrew を使わない場合は uv 公式のインストールガイド を参照してください。
pip install や venv の手動セットアップは不要です。依存関係(sudachipy, sudachidict-core)は
検査層の3エントリスクリプト(skills/natural-japanese/scripts/ の lint.py / outline.py / terms.py)
それぞれの冒頭にある PEP 723 インラインメタデータで宣言されており、uv run が実行時に自動解決します
(共有基盤の textcore.py はエントリポイントではないため、このメタデータを持ちません)。
このスキルは4つのチャネルで配布しています。
npx skills add(推奨・シンプル)npx skills add coji/natural-japanese
skills/natural-japanese/ を読み取り、~/.agents/skills/ などエージェントの設定ディレクトリにインストールします。
npx openskills install(Claude Code 以外のエージェントでも使う場合)npx openskills install coji/natural-japanese
npx openskills sync
AGENTS.md を経由して Cursor / Windsurf / Aider / Codex など、AGENTS.md を読めるあらゆるエージェントから利用できます。
/plugin marketplace add coji/natural-japanese
/plugin install natural-japanese@natural-japanese
.claude-plugin/marketplace.json と .claude-plugin/plugin.json を使い、skills/natural-japanese/ をプラグインとして配布します。
.skill(zip)をダウンロードReleases から natural-japanese.skill をダウンロードして展開し、任意のエージェントのスキルディレクトリに配置してください。タグ v* を push すると GitHub Actions(.github/workflows/release.yml)が自動でビルド・添付します。
スキルをインストールした状態で、以下のような場面で自動的に発動します。
--genre business を使う)/natural-japanese score <ファイル> — 書き換えずに自然度スコア(0〜100、高いほど自然)と理由を返す)style-profile.md)のセットアップフローは一回検出して終わりではありません。lint の指摘を「直した / 理由を付けて残す」に仕分けし、修正が新しい指摘を生まなくなるまで収束するまでループします。周回ごとの差分は lint の --baseline オプションで機械的に追跡できます(解消・新規・継続の分類)。作業中の中間ファイルは完了時にすべて削除され、残るのは完成した文書だけです。
詳しいフローは SKILL.md を参照してください。
スキル経由ではなく、検査層の3スクリプトだけを直接使うこともできます。役割ごとに分かれています
(共有基盤 skills/natural-japanese/scripts/textcore.py は3スクリプトが内部で使うのみで、直接実行するものではありません)。
lint.py — 疑いの検出uv run skills/natural-japanese/scripts/lint.py path/to/draft.md
uv run skills/natural-japanese/scripts/lint.py path/to/draft.md --json
CI ゲートではなく lint であるため、検出件数に関わらず exit code は 0 です。検出結果をどう直すかは
書き手(またはAI)の判断に委ねます。ファイル不在・ディレクトリ指定・読み取り不可などの入力エラーのときだけ exit code 1 になります。
outline.py / terms.py — 判断ではなく素材の抽出findings の代わりに構造・用語の「素材」だけを機械的に抽出するスクリプトもあります(どちらも判断はせず抽出のみ。exit code の方針は lint.py と同じ)。
uv run skills/natural-japanese/scripts/outline.py path/to/draft.md # 見出し・各段落の先頭文・箇条書きプレースホルダを行番号付きで抽出
uv run skills/natural-japanese/scripts/terms.py path/to/draft.md # カタカナ複合語/ASCII略語/固有名詞らしき語を初出順に抽出(説明マーカーの有無つき)
uv run skills/natural-japanese/scripts/semantic.py path/to/draft.md # [EXPERIMENTAL・opt-in] 文埋め込みによる話題平板性の検出。torch+sentence-transformers依存、初回~1GBダウンロード。lint.pyには非組み込み
skills/natural-japanese/ # スキル本体(single source of truth)
SKILL.md # スキル定義
references/ # 文体憲法・禁止パターン・チェックリスト・翻訳調ガイド・読みやすさ原則/悪文カタログ/ジャンル差分など
references/doctypes/ # 文書タイプ別の型(議事録・調査レポート・社内ガイド・メモ/DP・スライド)
scripts/ # textcore.py(共有基盤)/ lint.py・outline.py・terms.py(検査層エントリ)/ semantic.py(EXPERIMENTAL・opt-in)/ calibrate.py / fixtures
assets/ # style-profile テンプレート
.claude-plugin/ # Claude Code plugin manifest / marketplace 定義
dev/check-fixtures.sh # fixture 回帰チェック(開発用)
.githooks/pre-commit # lint/fixtures 変更時に fixture 回帰チェックを実行
スキル本体は skills/natural-japanese/ の1か所だけにあります(かつてはルートに正本、skills/ にコピーという二重管理でしたが、
npx skills add がルートの SKILL.md を単一ファイルスキルとして拾ってしまい scripts/ が配布されない問題があったため一本化しました)。
git config core.hooksPath .githooks
skills/natural-japanese/scripts/ の lint.py / textcore.py や fixtures/ を変更した場合は ./dev/check-fixtures.sh で
期待検出件数(fixture 回帰)を確認してください。同条件で変更が staged されていれば pre-commit hook が
自動実行し、リリース時は .github/workflows/release.yml でも実行されます。
このスキルの設計は、次の2つの公開資料に大きく影響を受けています。感謝します。
MIT. See LICENSE.