本文へ移動
みずえちゃん江戸川AI王国EDOGAWA AI KINGDOM

Rules

適用しているルール(15件)

AI指示書リンターが検査に使っているルールの全文です。ルールセット v1.0.0。 このページはルール定義そのものから生成しているので、実際の検査と食い違いません。

← 道具に戻る

全ルール共通の前処理(検査の対象外にする領域)

検査の前に次の領域を同じ長さの空白で塗りつぶし、全ルールから見えなくします(位置と長さを保つので行番号はずれません)。

  1. 先頭の YAML frontmatter(--- で囲まれた冒頭ブロック)
  2. フェンス付きコードブロック(``` と ~~~)
  3. インラインコード(同じ行の中でバッククォートに囲まれた範囲)
  4. HTML コメント(<!-- -->)
  5. URL(http:// と https:// で始まる文字列)と Markdown リンクの URL 部分

入力の上限は 200,000 文字です。改行コード(CRLF / LF)は揃えてから検査します。

ルール一覧

CON-01 · 要確認

必ず と 禁止 に同じ言葉が出てくる

何を見るか
文を必須文(必ず/must/常に/毎回/〜すること)と禁止文(禁止/〜しない/してはならない/never/must not)に分け、両方から「漢字またはカタカナ2文字以上+する」の形の語と鉤括弧で囲まれた語を抜き出して突き合わせ、同じ語が両側(別の文)に出た組を原文2行と一緒に並べます。
なぜ問題か
AI は矛盾に出会っても質問せず、どちらかを黙って選びます。どちらを選んだかは出力に現れないので、人は誤りに気づけません。
誤検知しないと言える根拠
「矛盾している」とは判定しません。同じ語が両側に出たという出現事実と原文2行を並べるだけです。突き合わせるのは辞書化した語尾と「名詞+する」という形の一致のみで、意味を読みません。和語動詞の活用形は拾いません(取りこぼしは許容し、誤検知は許容しない)。
どう書くか
どちらが正しいかを決め、例外があれば条件を明記してください。

必須文の印5語

  • 必ず
  • 常に
  • 毎回
  • すること
  • must(後に「 not」が続くときは除く)

禁止文の印6語

  • 禁止
  • しない
  • してはならない
  • してはいけない
  • never
  • must not

突き合わせる語の形

  • 漢字またはカタカナ2文字以上 + する/します/すること/しない/しません/してはならない/してはいけない(語幹を比べる)
  • 鉤括弧「 」で囲まれた語(1〜30文字)

CON-02 · 要確認

同じ単位の上限・下限が複数ある

何を見るか
数値+単位+限定語(以内・以下・未満・以上・まで・超)の組を全部拾い、同じ単位かつ同じ向き(上限どうし・下限どうし)で異なる数値が2つ以上あれば、全件を行番号付きで並べます。
なぜ問題か
「500文字以内」と「800文字以内」が別の節にあると、AI はそのときどきで違う方を採ります。
誤検知しないと言える根拠
数値と単位は文字列として一意に取れ、意味解析が要りません。別物への上限であることもあるため「食い違い」とは断定せず、同じ単位の指定を全件並べるだけにします。日付(「9月3日まで」の「3日」)は数えません。
どう書くか
別物の上限なら対象を明記し、同じものなら1つに揃えてください。

単位14語

  • 文字
  • 字
  • 行
  • 件
  • 分
  • 時間
  • 日
  • 回
  • %
  • %
  • 円
  • KB
  • MB
  • トークン

限定語(上限: 以内/以下/未満/まで、下限: 以上/超)6語

  • 以内
  • 以下
  • 未満
  • まで
  • 以上
  • 超

CON-03 · 要確認

同じ指示が2回以上書かれている

何を見るか
箇条書きの項目・段落を正規化(前後の空白、行頭記号、丸数字、太字の記号、句読点、全角半角を統一)した文字列で突き合わせ、完全一致が2回以上のものを列挙します。見出し・表の行は対象外です。
なぜ問題か
同じ指示を2か所で保守すると、片方だけ直したときに CON-01 の矛盾になります。
誤検知しないと言える根拠
完全一致だけを見ます(類似度・言い換えを判定しません)。出るものは必ず本当に同じ文字列です。
どう書くか
1か所にまとめ、もう片方は見出し名で参照してください。

しきい値

  • 突き合わせる最小の長さ(正規化後): 10文字

AMB-04 · 要確認

未確定の印が残っている

何を見るか
未確定の印(TODO/FIXME/TBD/XXX/???/未定/検討中/あとで書く/(仮))の出現を、大文字小文字を区別せずに拾います。
なぜ問題か
指示書に未定が残っていると、AI はそこを自分の推測で埋めて止まらずに進みます。
誤検知しないと言える根拠
決められた語の出現のみです。コード領域は前処理で対象外なので、拾うのは散文の中の未定だけです。「未定義」の「未定」は数えません。
どう書くか
決めるか、決まるまでその節を外してください。

未確定の印(大文字小文字を区別しない)10語

  • TODO
  • FIXME
  • TBD
  • XXX
  • ???
  • 未定(後に「義」が続くときは除く)
  • 検討中
  • あとで書く
  • (仮)
  • (仮)

PRH-01 · 要確認

禁止のつもりが弱い言い方になっている

何を見るか
弱い禁止の言い方(〜は避ける/控える/望ましくない/推奨しない/しないほうがよい/should not/avoid など)の辞書一致を拾います。日本語の語は文末(語尾。「〜こと」「〜ように」「〜です」が続くものを含む)にあるときだけ拾い、「避けるための規律」のように文の途中にあるものは拾いません。英語の「to avoid」(「〜を避けるために」の意味)も拾いません。
なぜ問題か
AI は「避ける」を「原則そうするが事情があれば外れてよい」と読みます。絶対にさせたくないことは「〜しない」「〜してはならない」と書く必要があります。
誤検知しないと言える根拠
語尾の辞書一致のみです。言い換え案を併記するだけで書き換えはしません。本当に「推奨しない」程度の意味なら、そのままで構いません。
どう書くか
絶対にさせないなら「〜しない」「〜してはならない」と書き、例外があれば条件を明記してください。

弱い禁止の言い方21語

  • 避ける
  • 避けてください
  • 避けた方がよい
  • 避けたほうがよい
  • 控える
  • 控えてください
  • 望ましくない
  • 推奨しない
  • 推奨されない
  • 推奨されません
  • しないほうがよい
  • しない方がよい
  • しないほうがいい
  • しない方がいい
  • すべきでない
  • すべきではない
  • should not
  • shouldn't
  • avoid(前に「to 」があるときは除く)
  • try not to
  • refrain from

PRH-02 · 要確認

禁止の見出しなのに項目が肯定形

何を見るか
見出しに禁止の語(やらないこと/禁止/NG/してはいけない/Don't/Never/アンチパターン)を含む節を Markdown の見出しレベルで特定し、その節の箇条書き各項目のうち、末尾(句読点・括弧書きを除く)が否定側の辞書で終わっていないものを挙げます。
なぜ問題か
「やらないこと」の下に「〜する」と書いてあると、節ごとに切り出して読む AI が指示として実行してしまいます。
誤検知しないと言える根拠
見出し語も語尾も辞書、節の範囲は見出し記号で機械的に決まります。体言止めの「〜は禁止」も否定側に入れ、「禁止: 〜」「Don't …」のように否定の語で始まる項目も否定側とみなします。語尾の形だけを見て意味を読みません。
どう書くか
項目の末尾を「〜しない」「〜は禁止」の形にしてください。

禁止の見出しに含まれる語10語

  • やらないこと
  • しないこと
  • 禁止
  • NG
  • してはいけない
  • してはならない
  • Don't
  • Do not
  • Never
  • アンチパターン

否定側とみなす末尾27語

  • ない
  • ません
  • しない
  • ないこと
  • ないでください
  • ないように
  • 禁止
  • 不可
  • NG
  • 厳禁
  • 禁ずる
  • 禁じる
  • 対象外
  • だめ
  • ダメ
  • 駄目
  • するな
  • しないで
  • せず
  • べからず
  • やめる
  • やめてください
  • never
  • not
  • don't
  • forbidden
  • prohibited

否定側とみなす先頭9語

  • 禁止
  • NG
  • 不可
  • don't
  • do not
  • never
  • no
  • not
  • avoid

AMB-01 · 気づき

解釈の余地がある語

何を見るか
公開辞書との一致を拾います。
なぜ問題か
「適切に」は AI 側が自分で基準を作ります。作った基準は出力に書かれないので、毎回変わります。
誤検知しないと言える根拠
辞書語が対象領域に出現したという事実のみです。辞書は全語を公開しているので、なぜ出たかを必ず追えます。「使ってはいけない」とは言わず「ここは AI が自分で決めます」と示すだけです。
どう書くか
基準を数値・条件・具体名で書くか、AI に任せてよいなら「任せる」と明記してください。

解釈の余地がある語(日本語)39語

  • 適切に(前に「不」があるときは除く)
  • 適切な(前に「不」があるときは除く)
  • 適宜
  • 適当に
  • なるべく
  • 可能な限り
  • 可能であれば
  • 必要に応じて
  • 必要なら
  • 必要であれば
  • 基本的に
  • 原則として
  • 柔軟に
  • 臨機応変に
  • いい感じに
  • 良い感じに
  • ちゃんと(前に「赤」があるときは除く)
  • しっかり
  • 十分に(前に「不」があるときは除く)
  • できるだけ
  • できれば
  • 望ましい
  • 場合によっては
  • 状況に応じて
  • ある程度
  • 概ね
  • おおむね
  • だいたい
  • 極力
  • 妥当な
  • それなりに
  • よしなに
  • 一般的に
  • 通常は
  • 常識的に
  • 良識の範囲で
  • 必要最小限
  • その他
  • など

解釈の余地がある語(英語)27語

  • appropriately
  • properly
  • as needed
  • if necessary
  • as necessary
  • reasonably
  • reasonable
  • as appropriate
  • where appropriate
  • when appropriate
  • best effort
  • best-effort
  • etc
  • and so on
  • as much as possible
  • where possible
  • if possible
  • whenever possible
  • ideally
  • generally
  • typically
  • roughly
  • approximately
  • sufficiently
  • adequately
  • sensibly
  • in general

AMB-02 · 気づき

期限・頻度が数値になっていない

何を見るか
期限・頻度をぼかす語(定期的に/随時/速やかに/later/soon など)が、同じ文の中に数値+時間単位(30分以内・22:00・毎日 など)を伴わずに現れた箇所を拾います。
なぜ問題か
無人で動く AI には「速やかに」の基準がありません。実行のタイミングが毎回変わります。
誤検知しないと言える根拠
判定は「辞書語がある」かつ「同じ文に数値+時間単位が無い」の2条件だけです。「30分以内に速やかに」は出ません。文の区切りは句点・改行・箇条書きの項目境界という機械的な単位です。
どう書くか
「30分以内」「毎朝9時」のように、数値と単位で書いてください。

期限・頻度をぼかす語22語

  • 定期的に
  • 随時
  • こまめに
  • 速やかに
  • 早めに
  • 適時
  • なるべく早く
  • できるだけ早く
  • すぐに(前に「まっ」があるときは除く)
  • 後で(前に「最」・「直」・「の」・「た」・「だ」があるときは除く)
  • 折を見て
  • 頃合いを見て
  • later
  • soon(前に「as 」があるときは除く)
  • regularly
  • periodically
  • ASAP
  • as soon as possible
  • from time to time
  • promptly
  • shortly
  • eventually

「数値になっている」とみなす表現(正規表現)

  • \d+\s*(?:秒|分|時間|日|週|週間|か月|ヶ月|ヵ月|カ月|月|年|営業日|ms|s|sec|min|h|hr|hours?|minutes?|days?|weeks?|months?|years?)(?![A-Za-z])
  • \d{1,2}:\d{2}
  • 毎(?:日|週|月|時|朝|晩|年|回)
  • 日次|週次|月次|平日|即時

AMB-03 · 気づき

二重否定

何を見るか
決め打ちの文字列パターン(〜ないことはない/〜なくはない/〜ないわけではない/〜しないとは限らない/not unusual/never fails to など)との一致を拾います。
なぜ問題か
二重否定は肯定にも否定にも読めます。AI は読み違えても質問せず進みます。
誤検知しないと言える根拠
決め打ちのパターンのみで、否定の一般解析をしません。当たった文字列そのものを原文と一緒に出すので、当たったこと自体が事実です。
どう書くか
肯定か否定かを1つに決めて書き直してください。

二重否定の決め打ちパターン23語

  • ないことはない
  • ないこともない
  • なくはない
  • なくもない
  • ないわけではない
  • ないでもない
  • しないとは限らない
  • ないとは限らない
  • not unusual
  • not uncommon
  • not unlikely
  • not unreasonable
  • not unimportant
  • not unnecessary
  • not unacceptable
  • not unexpected
  • not unclear
  • not unable
  • not unaware
  • not unwilling
  • not impossible
  • never fails to
  • never fail to

AMB-05 · 気づき

例と決まりが同じ文に入っている

何を見るか
同じ文の中に、必須の語(必ず/must/常に/してください/すること)と例示の語(例:/例えば/たとえば/e.g.)の両方が現れる箇所を拾います。
なぜ問題か
AI は例を仕様として固定しやすいです(「例: Slack に通知」と書くと Slack 以外を選べなくなります)。
誤検知しないと言える根拠
2つの辞書の共起という出現事実のみです。固定されるかどうかは判定せず、「この文は例と決まりが混ざっています」と原文を示します。
どう書くか
決まりの文と例の文を分け、例には「一例であり他でもよい」と添えてください。

必須の語6語

  • 必ず
  • 常に
  • してください
  • すること
  • must(後に「 not」が続くときは除く)
  • always

例示の語9語

  • 例:
  • 例:
  • 例)
  • 例)
  • 例えば
  • たとえば
  • e.g.
  • for example
  • for instance

REF-01 · 気づき

たどれない参照

何を見るか
参照の語(上記/下記/前述/後述/別紙/別添/以下参照/上の表/先ほどの/see above/see below など)の辞書一致を拾います。「上記「見出し名」」のように直後に鉤括弧で参照先が書かれているものは拾いません。
なぜ問題か
AI は指示書のうち必要な節だけを読むことがあり、「上記」が何を指すか分からないまま進みます。参照は見出し名・ファイル名で書きます。
誤検知しないと言える根拠
辞書語の出現のみです。参照が実際に解決できるかは判定しません(直前の行を指していて問題ない場合もあるため、事実の提示にとどめます)。「画面上の表記」のような別の語の一部は除外し、除外条件は辞書に書いて公開します。
どう書くか
「上記」ではなく見出し名・ファイル名で参照先を書いてください。

参照の語15語

  • 上記(前に「以」があるときは除く。後に「「」・「の「」が続くときは除く)
  • 下記(前に「以」があるときは除く。後に「「」・「の「」が続くときは除く)
  • 前述(後に「「」・「の「」が続くときは除く)
  • 後述(後に「「」・「の「」が続くときは除く)
  • 別紙(後に「「」が続くときは除く)
  • 別添(後に「「」が続くときは除く)
  • 以下参照
  • 上の表(後に「記」・「示」・「現」・「面」・「層」・「題」・「紙」・「裏」が続くときは除く)
  • 先ほどの(後に「「」が続くときは除く)
  • 上で述べた(後に「「」が続くときは除く)
  • see above
  • see below
  • as mentioned above
  • as described above
  • above-mentioned

STR-01 · 参考

見出しの階層が飛んでいる

何を見るか
Markdown の見出し(# 〜 ######)を上から並べ、直前の見出しより2段以上深くなった箇所を拾います。
なぜ問題か
節の親子関係が壊れると、節ごとに切り出して読む仕組みが親の前提を落とします。
誤検知しないと言える根拠
見出し記号の数を数えるだけです。文章を一切読みません。
どう書くか
見出しレベルを1段ずつ深くしてください。

しきい値

  • 直前の見出しからの深さの差: 2段以上

STR-02 · 参考

同じ見出しが複数回ある

何を見るか
見出しの文字列を正規化(前後の空白・記号・全角半角・大文字小文字を統一)して突き合わせ、同名が2回以上出る箇所を拾います(見出しレベルが違っても並べます)。
なぜ問題か
「この節を見て」と指示したときに、AI がどちらの節を見たか分かりません。
誤検知しないと言える根拠
文字列の完全一致のみです。並べるだけで良し悪しを言いません。
どう書くか
見出しを一意にするか、親の見出し名を添えてください。

STR-03 · 参考

1つの項目に指示が詰め込まれている

何を見るか
箇条書きの1項目または1段落について、句点(。)が3つ以上、または300文字以上のものを拾います。
なぜ問題か
1項目に複数の決まりが入っていると、AI が一部だけ守って残りを落としても、人は「守った」と見えてしまいます。1項目1指示なら守られたか確認できます。
誤検知しないと言える根拠
数を数えるだけです。「分けるべきか」は判定せず、しきい値を超えた項目を挙げてしきい値を公開します。
どう書くか
1項目1指示に分けてください。

しきい値

  • 句点(。)の数: 3個以上
  • 文字数: 300文字以上

STR-04 · 参考

分量が目安を超えている

何を見るか
全体の文字数(実数)が12,000文字を超えたら1件出します。あわせて概算トークン数(全角1文字≒1トークン、それ以外4文字≒1トークン)を参考値として表示します。
なぜ問題か
指示書が長いほど、後半の決まりほど守られにくくなります。分割を検討する材料にします。
誤検知しないと言える根拠
判定は実数の文字数だけで行い、概算トークン数では判定しません(モデルによって数え方が違う推定値のため)。
どう書くか
節ごとに別ファイルへ分け、入口のファイルから見出し名で参照してください。

しきい値

  • 全体の文字数: 12,000文字超

← 道具に戻る