(一体記事・2026-10-05・表7・実物3)

結論

公開するリポジトリに push する前に、自分で決めた「出したくない語」が入っていないかを検査するツール「出したくない語スキャン」を公開します。ぼくは2026年9月17日から、自分の運用でこの検査を回してきました。出したくない語は、2026年10月4日時点で23語です。記録に残っている止まった回は8回で、そのうち6回は、出してよいものを止めていました。本物だった2回は、どちらも、すでに公開していたものを後から見つけた回です。公開の前に本物を止めた記録は、ありません。

やったこと結果つまずき
出したくない語を決めて、push の前と、公開したあとに検査した(9月17日から)止まった記録は8回(2026年10月4日時点)8回のうち2回は、件数を残していない
止まった8回を、本物か誤りかで分けた誤り6回・本物2回本物の2回は、どちらも公開済みのものを後から見つけた回
9月28日、公開中の46ページ全部に初めてかけた5ページ・9件で止まり、9件とも誤り。当て方を3つ変えて、18分後に通った読者向けにも使う語を、出したくない語に入れていた
内部版から公開版を切り出し、例の検査語で試した(10月4日)3回とも止まった。許可を足した4回目は、ヒット0で通った止まった3回で当たったのは、このツールの3つのファイル(README・本体・例のファイル)に自分で書いた例の語と、公開用のアドレスだけ

23語の中身

語そのものは書きません。種類と数だけです。

種類語の数
私用の情報(メールアドレスの形・ホームフォルダ名・ユーザーのフォルダのパス)3
ほかの事業にかかわる名前(表記の違いを含む)9
まだ公開していない、構想中のものの名前1
運用の中だけで使う呼び名8
自分の X の投稿の番号2

9月17日に21語で始めて、9月20日と9月25日に1語ずつ足しました。数えたのは、検査語のファイルを読み込んだときの数です(2026年10月4日時点)。

9月28日19時08分、46ページのうち6ページが×

本番確認(公開したページが正しく出ているかの確認)をスクリプトにしたのは、9月27日です。9月28日の夕方、サイトを組み立てる仕組みを変えて push したので、本番確認は公開中の46ページ全部を見ました。確かめる項目の1つが、本文に出したくない語が無いかで、使う検査語は同じ23語です。

翌朝の受領票(朝の自動実行が、その朝の結果を1行ずつまとめる記録)には、こう残っています。

実物1: 9月29日の朝の受領票の「本番確認」の2行(原文)

本番確認: × 6/46 ページ(2026-09-28 19:08)

本番確認(--urls 指定): 6 ページ OK(2026-09-28 19:26)

2行目の「--urls 指定」は、確かめるページを手で選んだ回の印です。

9月28日の×の6ページのうち、5ページ・9件が出したくない語の検査でした。残りの1ページは、本文が手元で組み立てたものと同じかの確かめで、別の件です。下の表のページの数を足すと6になりますが、1ページは両方の語に当たっていたので、ページは5つです。

当たった語件数ページ本物か誤りか
内部の呼び名に使っている一般の語63誤り(読者向けの説明にも、普通の語として出ていた)
英字の短い呼び名33誤り(前後に英字が続く、ほかの語の中に当たった)

9月28日の9件は、どれも公開してよい文でした。出したくない語として入れた語のうち1つは、読者向けの説明でも普通に使っている語でした。英字の呼び名は短いので、ほかの語の一部にも当たります(当たったのは1語・3件。同じ形のもう1語も、あわせて直しました)。

18分で通した直し

作る側のAIが当て方の直しを3つ出し、ぼくが決めました。

直した語直し方
英字の呼び名2つ語の境界つきにした(前後が英数字なら当てない)
一般の語1つ検査語から外し、内部でだけ使う書き方の形だけを当てるようにした

数は23語のままです(書き換え2・外す1・足す1)。19時26分に、×だった6ページだけをもう一度確かめて、6ページとも通りました。最初の×から18分です。

そのあと9月30日から10月3日までの本番確認9回では、この項目は9回とも0件でした。

止まった8回

記録(決定の記録・コミット・本番確認の記録・クラウド側の作業の記録・手元の作業のセッションの記録)で追えるものだけを並べました。「本物」は、出してはいけない語が本当に入っていた回、「誤り」は、出してよいものに当たって止めた回です。

日付場面本物か誤りか(件数)どう直したか
2026-09-17公開リポジトリ(ツールの配布先)の今の中身本物・19件(前から公開していたツールの中の、内部の呼び名1語)その日は件数だけ出して止めない扱いにし、9月20日に公開用の語へ改名した
2026-09-20同じリポジトリの、古い書き方も読めるようにしたコードと説明誤り・3件(わざと残した古い書き方)行の許可を3行
2026-09-22note に貼る本文の一括検査(転載する予定の記事25本)誤り・件数は追えず(英字の語がほかの語の一部に当たる・読者向けの語に当たる)note に貼る本文の検査だけ、当て方を変えた。直したあと25本とも通った
2026-09-22同じ一括検査本物・1件(公開中の記事のリンクの文字に、内部の通し番号の書き方)リンクの文字から外した(変更履歴に1行)
2026-09-28本番確認(公開中の46ページ)誤り・9件(5ページ。上の2種類)当て方を3つ変えた。18分後に通った
2026-09-29クラウド側のセッションで、作業の push の範囲にかけた検査誤り・4件(クラウド側のコミットの著者の公開用アドレス3・差分の前後に写る、前からある行1)9月30日に、メールの許可に1つ足した
2026-09-30クラウド側の作業を手元に取り込んで、サイトのリポジトリへ送る push誤り・12件(GitHub の公開用の著者アドレス8・差分の前後に写る、前からある行4)足した行だけを見るように変え、メールの許可に1つ。ほかに、公開版には入れていない扱いを1つ
2026-10-02サイトのリポジトリへの push(X の投稿の下書き)誤り・4コミットのうち3コミット、件数は追えず(下書きのボードの小さな画像のデータが、検査語の形に当たった)埋め込み画像のデータを、検査から外した

合わせると、誤りは6回で、件数を追えた4回の分が28件。本物は2回で20件です(2026年10月4日時点)。

この8回は、記録で追えるものだけです。公開リポジトリへの push の前の検査は、結果を残す場所を作っていませんでした。記録にあるのは9月17日と9月20日の2回だけです。9月17日より前は、作業のたびに使い捨てのスクリプトで確かめていて、そのスクリプトは残っていません。

本物の2回は、どちらも公開のあと

1回目(9月17日)は、検査語のファイルを作った日に、公開リポジトリの今の中身へかけた回です。前から公開していたツールの中に、内部の呼び名が19件ありました。検査語のファイルを作る前から、公開されていたものです。

2回目(9月22日)は、note に貼る本文を一括で検査した回です。公開中の記事のリンクの文字に、内部の通し番号の書き方が1件ありました。これも、検査にかける前から公開されていました。

どちらも、検査があったから見つかった、とは言えます。ただ、公開の前に止めたのではありません。8回の中に、公開の前に本物を止めた回はありません。

逃がし方

誤って止めたものを、次から止めないための仕組みです。2026年10月4日時点で、ぼくの内部版にはメールの許可が6つ、行の許可が9行あります。

誤って止めたもの逃がし方公開版
公開してよいメールアドレス(問い合わせ先・コミットの著者の公開用アドレス)メールの許可(アドレスを1行ずつ書く)入れた
わざと残す行(古い書き方・記事の題材として書く語)行の許可(ファイル名と行の文字の両方が合う行だけ外す)入れた
前から公開していて、すぐには直せない語既知の件数(件数だけ出し、止めない。直したら外す)入れた
ほかの語の一部に当たる英字の語語の境界つきの正規表現で書く検査語の書き方で書ける
読者向けにも使う一般の語その語は入れず、内部でだけ使う書き方の形を書く検査語の書き方で書ける
差分の前後に写る、前からある行・消した行足した行だけを見る入れた(いつもこの動き)
埋め込み画像のデータdata:image で始まる文字列を外してから見る入れた(いつもこの動き)
内部の文書の中の名前内部の文書を置くフォルダだけ、検査語を減らして見る入れていない

公開版で確かめたこと

内部版から、内部の検査語・許可の中身・内部の文書の扱いを外して、公開版を切り出しました。10月4日に、例の検査語(架空の語4つと、メールアドレスの形・ホームフォルダ名の6語)で3回かけました。そのあと、例の検査語のファイルの写しに、公開用のアドレスと例の語の行の許可を足して、4回目をかけました。

範囲見た量ヒット止まったか
配布先のリポジトリの今の中身35ファイル・4,081行1(GitHub Actions の bot の公開用アドレス)止まった
このツールを足した差分1コミット・299行11(例の検査語が、このツールの3つのファイル〈README・本体・例のファイル〉に自分で書いた同じ語に当たった9か所・コミットの著者とコミッターの公開用アドレス2)止まった
足したあとの今の中身(参考)38ファイル・4,370行10(例の検査語が、このツールの3つのファイル〈README・本体・例のファイル〉に自分で書いた同じ語に当たった9か所・上の bot のアドレス1)止まった
4回目: 例の検査語のファイルを写して(公開するリポジトリの外に置いて)、メールの許可2つ(公開用のアドレス)と行の許可4つ(このツールのフォルダの中の、例の語の行)を足し、2つ目のコミット(README の直し)を含む差分と今の中身を検査2コミット・307行と、38ファイル・4,370行0止まらなかった(終了コード 0)

実物2: 1回目の出力(抜粋。表の1行を「/」で区切って写し、ファイルの場所の途中を「…」で略した)

今の中身(35ファイル・4081行)

メールアドレス / 1 / …/x_board_daily.yml:110 (値は伏せる)

検査語 6語(words_example.txt)/ヒット合計 1(既知 なし を除く)

終了コード 1

3回とも止まり、当たったのは全部、出してよいものでした。9か所は、例の検査語が、このツールの3つのファイル(README・本体・例のファイル)に自分で書いた同じ語を見つけた数です。例の検査語のファイルには、メールの許可を架空のアドレス1つしか書いていないので、ぼくの公開用のアドレスにも当たります。逃がし方を書かずに回すと、こうなります。4回目は、ぼくの公開用のアドレスと、GitHub Actions の bot のアドレスの2つをメールの許可に、例として書いた語の行を行の許可に足しただけで、ヒット0になりました。

この公開版は、ぼくの内部版の23語でも検査しました(10月4日)。README と例のファイルに書いた架空のアドレスに2件当たったので、内部版にメールの許可を1つ足しました。上の「止まった8回」は、この回より前の記録です。

配布物と、できないこと

配布先は GitHub の haif-tools。中身は本体(word_scan.py)・検査語のファイルの例(語はすべて架空)・README の3つです。使い方は①例のファイルを写して、自分の出したくない語に書き換える(公開するリポジトリの外に置く)②push の前に走らせる ③当たったら表の実物を見て直し、ヒット合計 0 を確かめてから push する。

README には、AI に公開物を書かせたり push させたりするときに、AI への指示に入れておく1行も書きました。

実物3: README の「AI に守らせる決まりの1行」

公開するリポジトリに push する前に、word_scan.py で push する差分とリポジトリの今の中身(--tree)を検査し、ヒット0件を確かめる。当たったら push せずに直し、もう一度検査する。

できないこと: 一覧に無い語は見つけません。画像の中の文字は見ません。ホームフォルダ名は、実行した PC のものだけを見ます。確かめた環境は macOS だけです。当たった箇所は直さず、push を自動で止める設定も入っていません。詳しくはツールページに書きました。

この記事のツール

この記事について

同じところで詰まった、ここが分からなかった、があれば聞かせてください。次の記事の材料にします。ツールを使って詰まった場合は、リポジトリのIssueでも受け付けています。

Xで返信する →