Show HN: STE80 Humanizer – ASD-STE100の80%まで書いてAIテキストを人間らしくする
Show HN: STE80 Humanizer – de-AI text by writing 80% of the way to ASD-STE100 (github.com)
要約
STE80 Humanizerは、AIによって生成されたテキストを、内容を変えずに、注意深く書かれたかのように読みやすくするツールです。これは、AIライティングの兆候を取り除く「ヒューマナイザー」手法と、航空機整備マニュアルの制御英語であるASD-STE100のスタイルに80%近づける「STE80」手法を組み合わせています。これにより、AI検出を回避するのではなく、人間が容易に読めるテキストを作成することを目指しています。
全文翻訳
[画像: skills.sh installs] [画像: validate] [画像: License: MIT]
STE80 Humanizerは、AIによって書かれたテキストを、内容を変えずに、注意深く書かれたように読めるようにします。これは2つの手法を組み合わせています。
- ヒューマナイザー手法。 WikipediaのAIライティングの兆候にある26の兆候を、blader/humanizerのカタログから削除します。
- KarpathyのSTE80手法。 文を「ASD-STE100の80%まで」再構築します。これは航空機整備マニュアルの制御英語です。
変更前:
素晴らしい質問です!Kubernetesのlivenessプローブは、kubeletがコンテナが正常かどうかを判断できる強力なメカニズムです。これは単なるヘルスチェックではなく、あなたの最初の防御線です。プローブが失敗すると、コンテナはkubeletによって自動的に再起動され、アプリケーションが利用可能であることを保証します。ただし、プローブの設定ミスが連鎖的な再起動を引き起こす可能性があることに注意することが重要です。そのため、
initialDelaySecondsやfailureThresholdのようなパラメータは慎重に調整する必要があります。これを正しく行えば、クラスターは自己修復します。
変更後:
livenessプローブは、コンテナが正常かどうかをkubeletに伝えます。プローブが失敗すると、kubeletはコンテナを再起動します。これにより、アプリケーションが利用可能になります。
不良なプローブは、多くの再起動を引き起こす可能性もあります。例えば、タイムアウトが短すぎると、正常なコンテナでもプローブに失敗します。これを防ぐために、
initialDelaySecondsとfailureThresholdをアプリケーションに適した値に設定してください。
目標は、人々が容易に読めるテキストです。AI検出器を通過することは目標ではありません。
2つのパスを使う理由
ほとんどのヒューマナイザーはフレーズを削除するだけです。テキストは「素晴らしい質問です!」や「シームレス」を失いますが、3つのアイデアを運ぶ長い文、主語の隠蔽、およびヘッジ(婉曲表現)はそのまま残ります。それでもAIのように読めます。これはSKILL.mdの作業例で見ることができます。
| ステップ | 残っているもの |
|---|---|
| 元のテキスト | チャットボットのオープナー、ダッシュ、 「Xではない」 、 「-ing」の修飾語、 「しかし」 、 「〜する可能性がある」 、ドラマチックな締めくくり |
| パス1(兆候)後 | 「…コンテナはkubeletによって自動的に再起動され、アプリケーションが利用可能であることを保証します。プローブの設定ミスは連鎖的な再起動を引き起こす可能性があるため、パラメータ…は慎重に調整する必要があります。」クリーンな単語ですが、重い文です。 |
| パス2(STE80)後 | 短い文、1つのアイデアずつ、能動態、説明から分離された指示。 |
手法:Karpathyが言ったこと
2026年10月2日、Andrej Karpathyは投稿しました、LLMが作業の多くを行うにつれて、人々はモデルが生成したものを読み、理解するのに多くの時間を費やすという問題に対するヒントを。彼の最初のヒントは次のとおりです。
LLMにASD-STE100で何かを説明するように依頼してください。これは元々航空宇宙保守文書のために開発された制御言語仕様です。LLMはこの言語に精通しており、私がしばしばより読みやすいと感じるクリーンなライティングスタイルに厳しい制約があります。時には、例えば「ASD-STE100の80%」を要求するなど、少し柔らかくしようと試みることがあります。なぜなら、仕様は非常に厳格だからです。
投稿は次に、図、HTMLページ、解説ビデオへと進みます。彼の結論は、私たちの仕事は「監視と理解へと抽象度を上げる」ということです。明確な出力がボトルネックであり、ライティングはその最初のステップです。
STEの概要グラフィックはKarpathyの投稿から。クリックで拡大。注:後日のファクトチェックで辞書パネル(D)に誤りが見つかりました。ASD-STE100 Issue 9では、「approximately」は承認されています。「TEST」は名詞としてのみ承認されており(動詞としては不可)、「in order to」のエントリはありません。このスキルはIssue 9に従います。
ASD-STE100(Simplified Technical English)は、1980年代の航空宇宙産業のものです。母国語が英語でない整備士のために作られました。なぜなら、航空機での手順の誤読は死につながる可能性があるからです。そのルールは以下の通りです。
- 指示あたり20語、説明あたり25語
- 1文あたり1つの指示
- 能動態と単純時制
- 単語あたり1つの意味、約900の承認された単語
- 段落あたり1つのトピック、最大6文
「80%」とは? 100%では、「check」と「test」は名詞のみ、「may」と「should」は禁止され、多くの一般的な単語は許可されません。通常の散文は硬く聞こえます。80%では、完全な構造と、自然に聞こえるだけの語彙を保持します。
| STEルール | 100%(厳格モード) | 80%(デフォルト) |
|---|---|---|
| 文長 20 / 25 | ハードリミット | 数語オーバーはOK |
| 1文に1つのアイデア | 常に | 常に |
| 能動態、単純時制 | 常に | 常に |
| 承認された辞書のみ | はい | いいえ、一般的な単語を使用 |
| 動詞としての「check」、「test」 | いいえ | はい |
| 「may」、「should」 | いいえ | 本当の不確実性のために、はい |
| 短縮形 | いいえ | カジュアルなテキストでは、はい |
| セミコロン | いいえ | いいえ |
Karpathyは人間らしく聞こえることではなく、読みやすさについて話しています。このスキルは、2つの手法が互いのギャップを補完するため、その部分を追加します。
スキルの読み方
SKILL.mdには2つの番号付きリストがあります。
- §1から§26: AIの兆候(パス1)。
- S1からS15: STE80の構造ルール(パス2)。
各エントリには、注意すべき点、問題、変更前、変更後という同じフィールドがあります。パス2のエントリには、80%と厳格の間の変更点も記載されています。単独では弱いは、他の兆候が近くにある場合にのみ作用することを意味します。スキルは編集を番号で報告します(例:「§1、§8、S2」)。そのため、各項目を調べることができます。
インストール
インストールされると、スキルは /ste80-humanizer に応答します。テキストのヒューマナイズ、簡略化、AI除去、またはSTEを要求すると、自動的に開始されます。
任意の剤(skills.sh)
npx skills add Dodaios/ste80-humanizer
1つのエージェント、またはすべてにグローバルインストールします。
npx skills add Dodaios/ste80-humanizer --global --agent claude-code
npx skills add Dodaios/ste80-humanizer --global --agent codex
npx skills add Dodaios/ste80-humanizer --global --agent cursor
npx skills add Dodaios/ste80-humanizer --global --agent '*'
--globalなしの場合、スキルは現在のプロジェクトのみに適用されます。Vercelのskills CLIは、Claude Code、Codex、Cursor、OpenCodeなど多くのエージェントと連携します。
Claude Code プラグイン
/plugin marketplace add Dodaios/ste80-humanizer
/plugin install ste80-humanizer@ste80-humanizer
Claude.ai および Claude Desktop
このリポジトリをZIP(Code → Download ZIP)としてダウンロードします。Settings → Capabilities → Skills でアップロードします。
使用方法
/ste80-humanizer
<テキストを貼り付け>
または単に尋ねてください。
これはChatGPTが書いたように聞こえます。人間らしくしてください。
このREADMEをASD-STE100の80%まで書き直してください。
TLSハンドシェイクがどのように機能するかをSTEで説明してください。
軽いタッチ:docs/intro.mdのAI部分だけを削除してください。
docs/runbook.mdを厳格なSTEに変換してください。
このメールはAIのように聞こえますか?教えてください、書き直さないでください。
| モード | いつ | 何をするか |
|---|---|---|
| ヒューマナイズ(デフォルト) | 通常のリクエスト | パス1を完全に、パス2を80%で実行します。あなたの声(スタイル)を維持します。 |
| ライト | 「軽いタッチ」、「AI部分だけを削除」 | パス1、およびパス2の最も悪い文のみを実行します。 |
| 厳格STE | 「厳格」、「完全なSTE」、手順、安全に関する注意 | パス1とパス2のすべてを100%で実行します。 |
あなたの声に合わせる。 あなた自身の書き込みのサンプルを追加してください。スキルはあなたの文の長さ、単語、句読点を模倣します。
忠実性を最優先。 スキルはすべての事実を維持し、「may」を「may」のままにし、「40+」を「40+」のままにし、何も追加せず、ソースの矛盾をフラグします。テストでは、これが通常のプロンプトとの明確な違いでした(テストを参照)。
パス1:26のAIの兆候
| # | 兆候 | 変更前 | 変更後 |
|---|---|---|---|
| A. 陳述ではなく段階化 | |||
| 1 | XではなくY | これは単に高速なビルドツールではなく、新しい考え方です。 | ビルドツールは各ステップをキャッシュします。 |
| 2 | 1行の締めくくり | …コールドスタートなし。言い訳なし。それがエッジの力です。 | レイテンシは40ミリ秒に低下しました。 |
| 3 | 深遠に聞こえる格言 | その核心において、オブザーバビリティは信頼の言語です。 | 共有ダッシュボードは両方のチームに同じデータを示します。 |
| 4 | 段階的な導入 | さあ始めましょう。知っておくべきことは次のとおりです。 | APIは1分あたり100リクエストを許可します。 |
| 5 | 誰もいない議論 | 明確にするために、マイクロサービスが悪いとは言っていません… | まず請求サービスを分離しました。 |
| B. ルールによるリズム | |||
| 6 | 強制的な三連句 | 高速、直感的、そして強力 | 1秒未満でロード |
| 7 | 繰り返しの開始 (単独では弱い) | それは読みます…それはチェックします…それは開始します… | 設定を読み、スキーマをチェックします… |
| 8 | いたるところにダッシュ | 移行 — 6週間かかりました — は完了しました。 | 移行は6週間かかり、完了しました。 |
| 9 | 積み重ねられた修飾語 (単独では弱い) | 潜在的に可能性として引き起こす可能性がある | 壊す可能性がある |
| 10 | ハイフン付きペア (単独では弱い) | APIは十分に文書化されています。 | APIはよく文書化されています。 |
| 11 | 受動態、主語の欠落 (単独では弱い) | アカウントは不要です。 | アカウントは必要ありません。 |
| C. インフレと権威の借用 | |||
| 12 | 過剰使用されるAI単語 | 強力なキャッシュレイヤーを活用し、…を示しています | デバイス上でAPIレスポンスをキャッシュします |
| 13 | 誇張された重要性 | プロジェクトの旅における重要な瞬間をマークします | CLIを追加し、Node 16をドロップします |
| 14 | 曖昧な関連付け | 障害はDNS変更に関連していました。 | DNS変更が障害を引き起こしました。 |
| 15 | 浅い「-ing」修飾語 | …アクセシビリティへのコミットメントを強調して | (削除) |
| 16 | セールストーク | 私たちの画期的な、世界クラスのエディター | エディターはVS Code内で実行されます。 |
| 17 | 借用された権威 | 専門家は同意します…TechCrunch、Wiredで紹介… | 5月にHacker Newsのフロントページに掲載されました。 |
| 18 | is / hasを避ける | 中央ハブとして機能し、40のオプションを備えています | 設定を保持します。40のオプションがあります。 |
| D. ルールによるフォーマット | |||
| 19 | 装飾としての太字 | パフォーマンス: パフォーマンスが向上しました。 | リリースによりページロードが高速化されます。 |
| 20 | 装飾的な見出し | ## 🚀 CLIの開始方法 → | ## CLIをインストールする |
| 21 | カーリークォート (単独では弱い) | 「true」 | "true" |
| E. チャットとドラフトからの残り物 | |||
| 22 | チャットボットの残骸 | 素晴らしい質問です!…お役に立てば幸いです! | (ラッパーを削除) |
| 23 | 知識制限のヘッジ | 詳細が限られている間は、おそらく2015年頃に作成されたと考えられます。 | 情報源は述べていません。 |
| 24 | ドキュメントの見出しの繰り返し | ## セキュリティ / セキュリティは重要です。 | (行を削除) |
| 25 | ドキュメントについて書く | この関数は古いアプローチを置き換えるために追加されました… | この関数はハッシュマップでユーザーを検索します。 |
| F. 間違った読者のために書く | |||
| 26 | 読者が知っていることを再説明する | 全診断を最初に説明する返信 | 同意します。ジョブをUTCに切り替えます。 |
パス2:15のSTE80ルール
| # | ルール | 80% vs 厳格 |
|---|---|---|
| S1 | 1文に1つのアイデア | 80%は「and」または「because」で2つの関連する事実を許可します |
| S2 | 短い文:20語(指示)、25語(説明) | 80%は数語の超過を許可します |
| S3 | 条件を先に:「もしXなら、Yを実行する。」 | 同じ |
| S4 | 単語を省略しない(「the」、「a」、「that」) | 80%はテーブルや見出しの断片を許可します |
| S5 | 手順と複雑なコンテンツのためのリスト | 同じ |
| S6 | 能動態 | 同じ |
| S7 | 単純時制のみ | 同じ |
| S8 | 名詞ではなく動詞、 「-ing」の連鎖なし | 厳格: 「check」と「test」は名詞です |
| S9 | 正直な助動詞:can、must、will | 80%は本当の疑問に対して「may」と「should」を保持します |
| S10 | 平易な単語、1つの意味ずつ、句動詞なし | 80%は自然な単語を保持します |
| S11 | 1つの用語につき1つの意味 | 同じ |
| S12 | 3語以上の名詞のスタックなし | 同じ |
| S13 | 段落あたり1つのトピック、最大6文 | 同じ |
| S14 | 説明から手順を分離、警告を先に | 同じ |
| S15 | 単純な句読点、セミコロンなし | 厳格:短縮形もなし |
その他の例:references/ste80-rules.md。完全な厳格ルールとチェックリスト:references/strict-mode.md。100以上の平易な単語の置き換え:references/word-swaps.md。
チェッカー
scripts/ste_check.pyは、依存関係のない小さなPythonリンターです。これは、not-X-but-Y、チャットボットフレーズ、ランナップ、偽の深み、積み重ねられたヘッジ、曖昧な権威と関連付け、 「-ing」修飾語、誇張された主張、AI単語、ハイフンペア、カーリークォートなどの多くのパス1の兆候をフラグします。また、測定可能なパス2ルール(文と段落の長さ、セミコロン、ダッシュ、受動態、完了形と進行形、 「-ing」形式、句動詞)もフラグします。
python scripts/ste_check.py README.md
python scripts/ste_check.py --strict docs/runbook.md
cat draft.txt | python scripts/ste_check.py -
これはヒューリスティックであり、AI検出器でもコンプライアンスチェッカーでもありません。
テスト
evals/には、claude plugin eval形式で4つのケースがあります:READMEのリライト、ゼロからの説明、厳格なランブック、STEに言及しないカジュアルなLinkedIn投稿。これらはclaude plugin eval . --allow-tools Write,Edit,Bashで実行します。
私たちが観察したこと:プロンプトでASD-STE100を指定すると、ベースモデルはすでにスタイルをほぼ正しく取得しています。スキルが違いを生んだのは忠実性です。LinkedInのリライトでは、スキルなしの実行は引用を捏造し、「40+ customers」を「40-odd」に変更しました。スキルありの実行はすべての事実を維持しました。READMEのリライトでは、「you may need to」を維持し、ソースの矛盾をフラグしました。これらは小さなテストなので、証拠ではなくヒントとして扱ってください。
制限事項
- STEは明確な説明テキスト用です。 フィクション、スピーチ、ブランドコピーの場合、スキルはパス1のみを実行します。
- STEは英語の標準です。 他の言語の場合、スキルは兆候と構造ルールを適用しますが、英語の単語リストは適用しません。
- 「STEスタイル」は「STE準拠」ではありません。 準拠には、公式の辞書、訓練されたライター、およびレビューが必要です。
ソースとクレジット
- Andrej Karpathy on X, 2 October 2026: https://x.com/karpathy/status/2105819303471976479
- ASD-STE100 Issue 9 (2025): https://www.asd-ste100.org
- Wikipedia, Signs of AI writing (WikiProject AI Cleanup)
- blader/humanizer by Siqi Chen (MIT)。パス1は、新しい例とともに、その26パターンのカタログと順序に従います。そのライセンス通知はLICENSEにあります。
- Hacker News discussion of STE skills (July 2026): https://news.ycombinator.com/item?id=49114639
免責事項
このスキルにはASD-STE100仕様またはその辞書は含まれていません。STEルールは言い換えられ、簡略化されています。ASD-STE100およびSimplified Technical Englishは、ASD(AeroSpace, Security and Defence Industries Association of Europe)の商標です。このプロジェクトはASDと提携または承認されていません。