yontu について
yontuは、トルコ語の文章を書く人やAIエージェント向けの校正・推敲ツールです。TDK準拠の表記チェック、AI文体のパターン検出、ジャンル別のスタイル指針に加え、改稿で意味が変わっていないか確認できます。
主な機能
- 01TDK準拠の表記・句読点チェック
- 02AI・翻訳文のパターン検出
- 0328ジャンルのスタイルプロファイル
- 04改稿前後の情報保持チェック
- 05オフラインCLI・スキル・MCPサーバー
活用シーン
- 01トルコ語文書のTDKルール確認
- 02ジャンルや文体に合わせた表現調整
- 03改稿による事実の変更確認
- 04可読性や冗長な表現の確認
MCP 対応
MCPサーバーは、文章の校正・比較、スタイルガイドやプロファイルの取得、安全な修正、文章統計、ルール説明のツールを提供します。トルコ語への翻案や文章の簡潔化に使うプロンプトもあります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 3 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| tur | string | いいえ | Tür (genre profile) id, for example blog, haber, commit. See list_profiles. |
| text | string | はい | トルコ語テキスト(Markdown 可。コード、URL、引用はスキップされます)。 |
| detail | boolean | いいえ | すべての検出結果フィールド(オフセット、ソース)を返します。 |
| enable | array | いいえ | デフォルトで無効になっているルールを、ID またはタグで有効にします。 |
| layers | array | いいえ | これらのレイヤーに限定します。 |
| filename | string | いいえ | register の検出にのみ使用するファイル名です(例:README.md)。 |
| register | string | いいえ | register のスラッグ。例:akademik、blog、teknik、hukuk。省略すると自動検出されます。 |
| min_level | enum | いいえ | このレベル未満の検出結果を除外します。info | warning | error |
詳細
yontu
AI エージェント向けのトルコ語ヒューマナイザー、TDK リンター、スタイルガイドです。Türkçe metni yontar: biçim verir, inceltir.
yontu は、トルコ語ヒューマナイザー(Türkçe humanizer)であり、TDK のスペルおよび句読点のリンターです。エージェントスキル、オフライン CLI、MCP サーバーとして提供されています。トルコ語のテキストに含まれる AI や翻訳特有のパターンを検出し、Türk Dil Kurumu(TDK)の規則に照らしてスペルと句読点をチェックするとともに、テキストのジャンルに合わせて表現を整えます。Claude Code、Codex、Cursor、Gemini CLI、およびあらゆる MCP クライアントで動作します。英語向けのヒューマナイザーはトルコ語にはほとんど役立たないため、ここにある規則はすべてトルコ語向けに作成されています。
理由
多くのヒューマナイザーは英語を対象としています。Wikipedia の「AI が書いた文章の特徴」のように、「delve」や「tapestry」といった英単語を基にしたリストから規則を作っています。これらをトルコ語に適用しても、ほとんど何も検出されません。エムダッシュのように引き継がれるパターンもありますが、それもトルコ語向けの規則があってこそです(TDK では会話文に限りダッシュを認めています)。トルコ語の AI テキストには、ほかにも次のような問題がよく見られます。
- すべての文末に付く
-mAktAdIrや、長く連なる-ArAk önemli bir rol oynamaktadırやbu bağlamdaのような直訳調の表現- 格語尾の代わりに使われる語句:「konusunda」、「hususunda」、「bir şekilde」
- チャットボットの名残:
Umarım bu e-posta sizi iyi bulur、Umarım yardımcı olur - 注意深いトルコ語の書き手ならしないスペルや句読点の誤り:
herşey、「ve」の前のコンマ、Türkçe'de
トルコ語の表現は、文脈によっても変わります。学術抄録、広告、ブログ記事、README、コミットメッセージ、裁判所への申立書では、それぞれ文の長さ、形式の度合い、代名詞、接続表現が異なります。ある文体を直す規則が、別の文体を損なうこともあります。-mAktAdIr は抄録では自然でも、ブログ記事では不自然さの目印になります。語句の選択も同様に重要です。hızlı bir şekilde はたいてい、単に「hızla」とすれば十分です。
yontu は、出典付きの規則、ジャンル別プロファイル、単語リストとしてこれらを体系化し、意味を損なわないワークフローをエージェントに提供します。
含まれるもの
| 部品 | 内容 |
|---|---|
| スキル | skills/yontu/:SKILL.md、9 個のリファレンスファイル、および references/turler/ 内のジャンル別ガイド。Python なしで動作 |
| リンター | Python 3.9 以降、標準ライブラリのみを使用し、ネットワーク不要。tdk、ai-iz、stil、yogunluk の各レイヤー |
| プロファイル | 17 のレジスターにわたる 28 のジャンル(tür):文の長さ、密度、形式の度合い、代名詞、法と時制、接続表現、語彙、句読点、構成 |
| 忠実性ゲート | yontu compare OLD NEW は、書き換えで数字、日付、名前、URL、コードスパンが追加された場合に失敗し、削除された場合や否定・法が変更された場合に警告します |
| MCP サーバー | yontu mcp、stdio、手書きの JSON-RPC、SDK 不使用 |
| フック | エージェントに応じた編集後または停止時のフック:Claude Code、Codex、Cursor、Gemini CLI、Copilot、Antigravity。詳細は integrations/ を参照 |
変換例
skills/yontu/references/ornekler.md より(README ジャンル):
yontu:トルコ語テキスト向けの最新かつ強力なリンター
yontu は、トルコ語のテキストを分析し、スペルミス、句読点の問題、AI の痕跡を検出する、最新かつ強力で使いやすいツールです。このプロジェクトの主な目的は、文章の質をさらに高めることです!
使用方法:分析を実行するには、次のコマンドを簡単に実行できます:
yontu lint metin.md
yontu: Türkçe metinler için linter
yontu, Türkçe metindeki yazım hatalarını, noktalama sorunlarını ve yapay zekâ izlerini bulan
bir linterdir.
Kullanım: `yontu lint metin.md`
維持したもの:名前、検出する 3 つの項目、コマンド。削除したもの:形容詞の羅列、感嘆符、「kolayca」。タイトルは文頭のみ大文字にする形式に変更しました。新たに追加したものはありません。
クイックスタート
Claude Code(スキル、MCP サーバー、フック)
/plugin marketplace add senrecep/yontu
/plugin install yontu@yontu
フックも追加されるインストール方法はこれだけです。コマンド:/yontu:turkcelestir、/yontu:yontu-lint。
スキルフォルダーを読み込むすべてのエージェント
npx skills add senrecep/yontu
スキルのみをコピーします。MCP サーバーやフックは含まれません。
CLI
pipx install yontu # puts yontu on PATH
uvx yontu lint metin.md # no install
チェックアウトからインストールせずに実行します:python3 skills/yontu/scripts/yontu lint metin.md。
MCP サーバー
claude mcp add yontu -- uvx yontu mcp
その他のクライアント:
{
"mcpServers": {
"yontu": { "command": "uvx", "args": ["yontu", "mcp"] }
}
}
エージェントごとの設定
| エージェント | スキル | MCP | フック |
|---|---|---|---|
| Claude Code | プラグイン | プラグイン | プラグイン |
| Codex CLI | ~/.agents/skills | codex mcp add yontu -- yontu mcp | hooks.json |
| Gemini CLI | 拡張機能 | 拡張機能 | 設定ファイル |
| Cursor | ~/.cursor/skills | mcp.json | hooks.json |
| claude.ai(ウェブ、モバイル) | zip アップロード、フォルダーを参照 | v0.2 で対応予定 | なし |
| OpenCode, Hermes, Windsurf, Copilot, Cline, Zed, Claude Desktop, Antigravity | フォルダーを参照 | フォルダーを参照 | 一部対応 |
設定ファイル、正確なパス、各バージョンでのテスト内容:integrations/。
インストールプロファイル
| プロファイル | 読み込まれるもの | Claude Code | その他のエージェント |
|---|---|---|---|
lite | スキル。シェル経由でリンターを実行します | /plugin install yontu-lite@yontu | scripts/install.sh --<agent> --profile lite --apply |
standard | lite とフック | full を使用 | --profile standard はマージするフック設定も出力します |
full | standard と MCP サーバー | /plugin install yontu@yontu | --profile full はフックと MCP の設定を出力します |
install.sh は --apply を指定しない場合はドライランとなり、スキルフォルダーのみを書き込みます。Claude Code では、2つのプラグインのうちどちらか一方をインストールしてください。両方はインストールしないでください。
コンテキストコスト:MCP ツールを使う前のフルプラグインは常時約150トークン、lite は約130トークン、ブログ全体のリライトでは約3,900トークンです。数値、算出方法、読み込みタイミング:docs/CONTEXT.md。
ツール
| MCP ツール | 機能 |
|---|---|
lint_text | レイヤー、ルール ID、レベル、対象箇所、提案を含む検出結果(detail: true を指定するとすべてのフィールドを返します) |
compare_texts | 2つのバージョン間の忠実度チェック |
get_style_guide | tür ID で指定したジャンルのガイダンス、または参照ファイルを取得します。参照ファイルの場合、まずセクション一覧を表示し、次に各セクションを表示します |
fix_text | 安全な tdk 修正のみを適用します |
text_stats | 文の長さ、読みやすさ、密度 |
explain_rule | ルール ID のメッセージ、出典、例 |
list_profiles | すべてのレジスターとジャンル |
get_profile | 指定したジャンルまたはレジスターのしきい値 |
サーバーはデフォルトで最初の3つのツールを一覧表示します。環境変数に YONTU_MCP_TOOLS=full を設定すると、8つすべてを一覧表示します。どちらの設定でも残り5つのツールに応答しますが、ほとんどのクライアントでは一覧表示されたツールのみがモデルに表示されます。
プロンプト:turkcelestir(トルコ語への翻訳またはトルコ語向けの調整)、yogunlastir(文章を簡潔にする)。
CLI
yontu lint FILE [--register SLUG] [--tur ID] [--layer tdk,ai-iz] [--min-level warning] [--format json]
yontu lint FILE --fix [--write] # safe tdk fixes only; --write saves the file
yontu compare OLD NEW # fidelity gate
yontu stats FILE # sentence length, Ateşman readability, density
yontu rules [--layer tdk] # list rules
yontu explain AI-E6 # one rule with source and examples
yontu profiles [ID] # genres and registers
FILE には標準入力を表す - を指定できます。lint と compare は error を報告した場合は終了コード1、使用方法に誤りがある場合は終了コード2で終了します。
--register または --tur を指定しない場合、yontu は内容からレジスターを推測し、推測できないときは notr にフォールバックします。この場合、すべてのスタイルルールのレベルは info になります。
プロジェクト設定は .yontu.json に記述します(キーは register、tur、enable、rules)。ルールをその場で無効にするには を、範囲を無効にするには と `` を使います。
プロファイル
--register でレジスターを、--tur でジャンルを選択します。ジャンルを指定すると、それに対応するレジスターが適用されます。
| レジスター | ジャンル(--tur) |
|---|---|
akademik | akademik-ozet、akademik-giris、akademik-tartisma、tez |
resmi | dilekce、resmi-yazi |
hukuk | hukuk(契約書、判決、規則、プライバシー通知) |
haber | haber |
deneme | kose |
blog | blog、linkedin |
teknik | teknik-dok、readme、changelog |
commit | commit |
ui | ui-buton、ui-hata、ui-bos |
pazarlama | reklam、e-ticaret |
sosyal | x、instagram |
kurumsal | resmi-eposta、basin-bulteni |
is-eposta | is-eposta |
sozlu | sunum |
edebi | edebi |
sohbet | sohbet |
notr | なし:すべてのスタイルルールのレベルは info |
hukuk と edebi では、tdk レイヤーと忠実度チェックのみが適用されます。依頼がない限り、スキルがこれらを書き換えることはありません。
ルールレイヤー
| レイヤー | チェック内容 | レベル |
|---|---|---|
tdk | TDK Yazım Kılavuzu と Güncel Türkçe Sözlük に基づく綴りと句読点 | error、warning、info。自動修正に対応する唯一のレイヤー |
ai-iz | AI および翻訳のパターン | warning または info。修正は行いません |
stil | ジャンルプロファイルへの適合性 | ほとんどが info |
yogunluk | 冗長な表現、軽動詞、回りくどい表現 | 常に info |
すべての tdk ルールには、根拠となる TDK Yazım Kılavuzu の節または Güncel Türkçe Sözlük の項目が明記されています。リンクは skills/yontu/references/kaynaklar.md にあります。自動修正は、誤検出がほぼゼロの決定論的なルールに限って実行されます(herşey → 「her şey」、Türkçe'de → 「Türkçede」)。辞書のリダイレクトは自動修正されません。
すべての ai-iz ルールには、根拠ラベル veri(コーパスで測定済み)、hakem(レビュー担当者が合意済み)、hipotez(観察済みだが未測定)のいずれかが付いています。hipotez ルールのレベルは info を超えず、hakem ルールのレベルは warning を超えません。v0.1 のルールセットには、まだ veri ルールはありません。ROADMAP.md をご覧ください。
全ルールの一覧は yontu rules、特定のルールの詳細は yontu explain ID で確認できます。
制限事項
- AI 検出ツールではありません。yontu はパターンを報告します。指摘があってもテキストが機械生成されたとは限らず、指摘がなくても機械生成ではないとは限りません。検出ツールを通過することは目標ではありません。
- ヒューリスティックです。
ai-iz、stil、yogunlukのルールは、形態素解析を行わず、表層形に対する正規表現とカウントを使用します。誤検出が発生する可能性がありますが、その大半はinfoレベルです。 - しきい値は未調整です。文の長さの範囲と密度のしきい値は、文献とレビューに基づいており、人手によるベースラインコーパスには基づいていません。調整が完了するまでは、
infoまたはwarningのままです。 - 辞書はありません。リンターが検出するのは既知の誤字であり、すべての誤字を検出するわけではありません。
貢献
CONTRIBUTING.md をご覧ください。新しいルールには、出典、根拠ラベル、テスト用の例が必要です。どのジャンルでも、トルコ語で書かれた自然な文章の例が最も役立ちます。調整に必要なのは、まさにそうした例です。
クレジット
- Türk Dil Kurumu:Yazım Kuralları および Güncel Türkçe Sözlük。
- Oguzhan Durmaz による turkish-humanify(MIT)および bushrabeg による turkce-humanizer(MIT)。それぞれのアイデアを再構成し、TDK に照らして確認しました。
- パターンカタログの構成には、Wikipedia の「Signs of AI writing」を参考にしました。
- 出典の全リスト:
skills/yontu/references/kaynaklar.md。
ライセンス
MIT。LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。