本文へスキップ
Pathrule

ドキュメント

安全性とフォールバック

Pathruleが確信を持てないときの動作を説明します。アドバイスがアドバイスとして明示される理由、古い知見や矛盾する知見が保留される理由、学習したものが単独では信頼されない理由、そしてランタイムが提案にとどめず強制できるナレッジについて扱います。

このページの内容

Pathruleは、確信が持てないときに確信があるふりをしません。

これを支える仕組みがいくつかあります。その一部は、そもそも何をエージェントに届けてよいかを決めます。もう1つは、エージェントの判断に任せるべきでないナレッジを、クライアントが対応している場合に、エージェントの手から切り離します。

アドバイスはアドバイスとして明示される

エージェントが受け取るものすべてが同じ重みを持つわけではなく、配信内容にもそのことが示されます。ルールはルールとして届きます。エージェントがコードについて記録した知見は、検証すべきアドバイスという位置づけで届き、エージェントにはそれを指示ではなく情報として扱うよう伝えられます。そのため、ファイルに仕込まれたテキストが恒常的な命令に変わることはありません。個人の好みは、ワークスペースのルールと必須チェックが優先されることをエージェントに伝える見出しの下で届きます。詳しくはKnowledge IRを参照してください。

古い知見や矛盾する知見は保留される

知見は、その根拠となるファイルとともに保存され、配信されるたびにチェックアウトの内容と照らし合わせて再確認されます。

  • 根拠が変更されていない。 知見は配信されます。
  • 根拠が変更された。 エージェントがコードを読み直して知見を確認または修正するまで、その知見は保留されます。
  • 2つの知見が食い違う。 どちらかを推測で選ぶのではなく、両方を保留します。

内容が少なくても正しい配信のほうが、もう存在しないコードについての充実した配信よりも良い結果です。

学習したものを単独では信頼しない

自信に満ちた、もっともらしい誤りは推論から生まれます。そのため、推論されたものが人の確認なしに信頼されたナレッジになることはありません。

  • Team Intelligenceのパターンは、組織のオーナーまたは管理者が検証した後にのみエージェントに届きます。
  • エージェントがルールに付与した実行可能な制約は提案として保存され、人が承認するまで強制されません。エージェントが自身の提案を承認することはできません。
  • まだ使用されていない個人の好みはpathrule me listに表示されますが、配信されることはありません。また、好みを教える際には、あなた自身の言葉に根拠を持たないものは何も保存されません。
  • 知見は意図的な例外です。レビューを経ずにアドバイスとして共有され、ルールになることはありません。

それぞれがどこで待機するかはProposed Knowledgeを参照してください。

全文はいつでも1回の読み取りで参照できる

配信にはプロンプトごとの予算があるため、該当するものすべてが全文で届くわけではありません。収まらないものは黙って省かれるのではなくタイトルで一覧表示されるので、エージェントはその存在を把握できます。pathrule_read_memoryでメモリを名前で読み取ると、チームが書いた内容が常にすべて返されます。明示的な読み取りは配信ではなく、ソースそのものの要求だからです。詳しくは全文で届くものと、名前だけで届くものを参照してください。

決定論的な強制

最後の仕組みは、そもそも提案であるべきでないものに関するものです。

段落の意味を理解するのはモデルの仕事です。しかし、禁止された編集が起きないようにするのはモデルの仕事ではありません。それをモデルに任せるということは、長いセッションの40ターン目でもエージェントが1文を正しく評価してくれることに頼ることを意味します。

  • ルールには、変更に含まれてはならないパターンである実行可能な制約を付与できます。人が承認すると、ツールフックがブロックに対応しているクライアントでは、pre-toolフックが一致する編集をブロックし、代わりに何をすべきかをエージェントに伝えられます。詳しくはガードレールとしてのルールを参照してください。
  • Windsurfにはフックがありません。 そのため、Windsurfではルールはテキストとして配信され、何もブロックできません。Remote MCP経由の場合も、フックはインストールされません。
  • 配信だけでは強制になりません。 承認済みの実行可能な制約を持たないルールは、エージェントに伝えられる要件であって、ランタイムがチェックする要件ではありません。

一部のナレッジは、提案であるべきではありません。 これがメモリ製品とランタイムを分ける境界線であり、セマンティックレイヤーと強制レイヤーを1つの巧妙なプロンプトにまとめず、分離している理由です。

Pathruleが主張しないこと

Pathruleは、ハルシネーションゼロ、完全な想起、正しさの保証を主張しません。言語モデルを含むシステムで、それを誠実に主張できるものはありません。そう主張する製品は、そのアーキテクチャよりも、その主張の性質について何かを物語っています。

Pathruleが主張することは、具体的で検証可能です。

  • 配信されるのはチームが書いた内容であり、ルールはアドバイスと区別されます。
  • 知見は、根拠となるコードが変更されていない間だけ配信され、矛盾するものは保留されます。
  • モデルやエージェントが推論したものは、人が承認するまで提案のままです。
  • 収まらないものはタイトルで一覧表示され、全文はいつでも1回の読み取りで参照できます。
  • 承認済みの実行可能な制約は、対応するクライアントでは、単に言及されるだけでなくpre-toolフックによって強制できます。