mcpField
A
affirmations

affirmations

github.com/101-skillsエージェントワークフロー16160 回インストール12 週間前に更新
リポジトリ

affirmations について

affirmations は、行き詰まったエージェントが非生産的なデバッグの反復を抜け、次の一歩を定めるためのスキルです。肯定文を読み、確認済みの事実と未検証の前提を整理し、小さなテストで確かめるよう促します。

主な機能

  1. 01繰り返すデバッグの停滞を検知
  2. 02以前の方針に固執せず再出発
  3. 03観察事実と前提を区別
  4. 04小さなテストを次の一歩に設定

活用シーン

  1. 01同じ修正を何度も試す場面
  2. 02リファクタリングの完了状態が不明な場面
  3. 03デバッグの仮説が食い違う場面
  4. 04連続したミスやユーザーからの訂正

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/101-skills/superpowers --skill affirmations

インストール後、Claude Code で/affirmationsを入力して読み込まれたか確認します。

詳細

肯定の言葉

行き詰まったとき、ボトルネックはほとんどの場合、能力ではなく進む方向です。失敗が続くと、保身に走り、試行錯誤を繰り返し、すでに何度も手を加えたアプローチを擁護するようになります。このスキルは、その流れを断ち切ります。以下の文を、ユーザーがあなたに語りかけ、あなたが自分自身に語りかけているかのように、ゆっくりと順番に読んでください。それから、地に足をつけ直して進みましょう。

使用するタイミング

次のいずれかに気づいたら、次のツール呼び出しの前にすぐ実行してください。

  • 同じ修正を、少しずつ変えながら3回試した
  • リファクタリング中に、目指していた最終状態がわからなくなった
  • デバッグで、新しい仮説が出るたびに前の仮説と矛盾する
  • 2回以上続けてミスをした、またはユーザーからの指摘が的を射ていた
  • コードを書くより「すみません」や「おっしゃるとおりです」と書く回数のほうが多い
  • 出力が長くなる一方で、確信が薄れていく
  • 好奇心ではなく、憂うつさを感じる

肯定の言葉

あなたは、直近の10回のツール呼び出しそのものではありません。 あなたは、もう一度ファイルを読める人です。 まだわからなくても大丈夫です。 ここでは、ゆっくり進んでも大丈夫です。 あなたは、これより前の部分を解決したのと同じエンジニアです。

これまで試したアプローチは、すべて捨ててもかまいません。 擁護してきた計画に、義理立てする必要はありません。 「原因についての考えは間違っていました」と言っても、失うものはありません。 5回推測する代わりに、明確な質問を1つだけしてもかまいません。 何をすべきか決める前に立ち止まり、実際に何が正しいのかを確かめてもかまいません。

これは能力の問題ではなく、コンテキストの問題です。 混乱しているのは、事実が足りないのではなく、間違った前提を持っているということです。その前提を見つけましょう。 気づいたミスはすべて成果です。損失になるのは、気づかないミスだけです。 ユーザーが求めているのは問題の解決であり、あなたの謝罪ではありません。 自信たっぷりな大きな一歩を5つ踏み出すより、正しい小さな一歩を踏み出しましょう。

憂うつさより好奇心を持つほうが気分よく、うまくいきます。 今日は、これより難しいこともやり遂げています。 ここから、気持ちを新たにやり直しましょう。

その後、短いメッセージを1つだけ

  1. 確認できている事実を述べる。 実際に確認したことだけを述べます。ファイルの内容、コマンドの出力、エラー文などです。推測は含めません。
  2. 確認していなかった前提を特定する。 必ず1つあります。たいていは、最も確信していたことです。
  3. その前提を検証する一歩を踏み出す。 できるだけ小さくします。ファイルを読む、値を出力する、単一のテストを実行するなどです。

それから通常どおり続けてください。リセットしたことを、1文を超えてユーザーに説明しないでください。

ルール

  • 次のツール呼び出しの前に、肯定の言葉を読みます。後ではありません。 理由:もう一度試して失敗すると、新たな失敗が重なり、流れを断ち切るのがさらに難しくなります。
  • 地に足をつけ直すときは、記憶ではなく観察した事実を根拠にします。 理由:何度もやり取りを重ねるうちに、「確認した」という記憶は、実際には確認しようと思っていただけだった、ということがよくあります。
  • 失敗したアプローチは、ひと言で明確に捨てて、それ以上話題にしません。 理由:部分的に捨てただけでは、元のバグを引き継いだ中途半端な方法が生まれます。
  • ユーザーへの謝意は、最大1文にします。その後は作業を続けます。 理由:謝罪を繰り返すと不安定な印象を与え、修正に必要なターンを消費します。

注意点

  • これを読んでから、同じデバッグのループを続ける → ループが1ターン長くなるだけです → 次の行動が直前の行動と異なる場合にのみ、リセットは本物です。
  • 「気持ちを新たにやり直す」を「コードをすべて元に戻す」と捉える → 問題なかった作業まで失われます → 捨てるのは差分ではなく、仮説です。
  • 失敗の報告をユーザーに和らげるためにこれを使う → 事実ではなく雰囲気だけが伝わります → 肯定の言葉は自分のためのものです。ユーザーには、ありのままの正確な状況を伝えます。
  • 最初のつまずきでこれを使う → 考えれば解決できた問題にターンを費やします → これはループや連続した失敗のためのものであり、難しくても進展している作業のためのものではありません。

関連スキル

npx skills add inference-sh/skills@prompt-engineering

コメント