[{"data":1,"prerenderedAt":270},["ShallowReactive",2],{"content-\u002Fcontents\u002Fsocratic-swe":3,"surroundPost-\u002Fcontents\u002Fsocratic-swe":261},{"id":4,"title":5,"body":6,"createdAt":245,"description":246,"draft":247,"extension":248,"meta":249,"navigation":250,"path":251,"seo":252,"stem":253,"tags":254,"thumbnail":258,"updatedAt":259,"__hash__":260},"contents\u002Fcontents\u002Fsocratic-swe.md","Socratic-SWE: Self-Evolving Coding Agents via Trace-Derived Agent Skills",{"type":7,"value":8,"toc":220},"minimark",[9,13,17,20,23,26,29,32,35,38,41,44,47,50,53,56,59,62,65,68,71,74,77,80,83,86,90,103,106,109,112,116,121,124,128,131,135,138,142,145,149,152,156,159,163,166,170,173,177,180,184,187,190],[10,11,12],"h2",{"id":12},"これは何の論文か",[14,15,16],"p",{},"Socratic-SWEは、LLM駆動のソフトウェアエンジニアリングエージェントを自己進化させるために、過去の解決トレースを構造化エージェントスキルへ蒸留する論文である。コーディングエージェントの改善を、モデル単体の能力向上ではなく、トレース、スキル、タスク生成、検証、解答役更新のループとして扱う。",[14,18,19],{},"既存の合成タスク生成は、固定的な変異やバグ注入に寄りやすい。すると、今のエージェントが実際に苦手としている失敗パターンや、うまく直せた修復パターンから外れた課題が増える。Socratic-SWE は、エージェントが実際に残した成功・失敗トレースを読み、繰り返す失敗と修復パターンを抽出する。",[14,21,22],{},"抽出された知識は、単なるログ要約ではなく、次に使えるスキルとして構造化される。そのスキルは、実リポジトリ上で狙いを絞った修復タスクを作るために使われ、候補タスクは実行ベースの検証と、解答役の学習段階に合わせる報酬で選別される。",[14,24,25],{},"arXiv abstract によれば、SWE-bench Verified、SWE-bench Lite、SWE-bench Pro、Terminal-Bench 2.0 で、同程度の計算量を使う自己進化ベースラインを一貫して上回り、SWE-bench Verified では 3 反復後に 50.40% に到達したと報告されている。",[14,27,28],{},"この論文の発想は、エージェントがすでに解いた、または失敗したタスクのトレースに、次の学習タスクを作るヒントがあるというものだ。成功トレースには修復手順があり、失敗トレースには繰り返す失敗がある。これらを捨てず、スキルとして再利用する。",[10,30,31],{"id":31},"何が問題だったのか",[14,33,34],{},"ソフトウェアエンジニアリングエージェントは、過去の成功や失敗から学べるように見える。しかし、実行トレースをただ要約してスキルにしても、次のタスクで本当に役立つとは限らない。",[14,36,37],{},"問題は、どの失敗パターンをスキル化し、どの修復パターンを次の訓練タスクへ変換するかである。汎用的な合成バグを増やすだけでは、解答役の現在の弱点や学習段階に合わない可能性がある。",[14,39,40],{},"Socratic-SWE が扱う問題は、過去トレースからスキルを蒸留し、そのスキルを使って狙いを絞った修復タスクを作り、実行結果でさらに更新する閉ループをどう作るかである。",[10,42,43],{"id":43},"提案手法の中身",[14,45,46],{},"まず解答役エージェントがソフトウェアエンジニアリングタスクを解く。ここで、成功、失敗、途中のツール利用、修復の試行、検証結果を含む実行軌跡が残る。",[14,48,49],{},"次に、その実行軌跡から繰り返す失敗と修復パターンを取り出す。どの種類の変更でつまずいたか、どの観察やテストが修復に効いたか、どの手順が再利用できるかをスキルとして構造化する。",[14,51,52],{},"構造化されたスキルは、次の狙いを絞った修復タスク生成に使われる。つまりスキルは、エージェントに読ませる知識であるだけでなく、弱点に合う新しい訓練タスクを作る生成器の材料になる。",[14,54,55],{},"生成された候補タスクは、実リポジトリ上で実行可能か、検証できるかを実行ベースの検証でふるいにかける。ここで、見た目だけもっともらしいタスクや検証不能なタスクを落とす。",[14,57,58],{},"さらに、解答役の学習段階に合わせる報酬により、そのタスクが解答役の改善方向に合っているかを見る。単に難しいタスクではなく、今の解答役が学ぶ価値のあるタスクを残す。",[14,60,61],{},"最後に、選別されたタスクで解答役を更新し、新しい解答役がまた SWE タスクを解く。この更新後のトレースが次の反復の材料になり、スキルとカリキュラムが進化していく。",[10,63,64],{"id":64},"どうやって確かめたのか",[14,66,67],{},"評価では、SWE-bench Verified、SWE-bench Lite、SWE-bench Pro、Terminal-Bench 2.0 のようなソフトウェア修正・端末操作ベンチマークを使う。実際の失敗軌跡からスキルと練習課題を作り、反復後の解答役が改善するかを見る。",[14,69,70],{},"比較対象は、同程度の計算量を使う自己改善ベースライン、単純な合成タスク追加、Socratic-SWE の反復構成である。焦点は、タスクを増やすことではなく、失敗軌跡から次に練習すべき課題を作る点にある。",[14,72,73],{},"測る指標は、各ベンチマークの解決率、反復ごとの改善、同じ計算量のベースラインとの差である。",[10,75,76],{"id":76},"結果はどうだったのか",[14,78,79],{},"arXiv abstract では、Socratic-SWE が SWE-bench Verified、SWE-bench Lite、SWE-bench Pro、Terminal-Bench 2.0 で、同程度の計算量を使う自己進化ベースラインを一貫して上回ったと報告されている。",[14,81,82],{},"特に SWE-bench Verified では、3 反復後に 50.40% に到達したとされる。これは、単発の合成タスク追加ではなく、トレースからスキルとタスクを更新し続けることが効いたという読みになる。",[14,84,85],{},"ただし、このページでは abstract と arXiv メタデータを中心に確認している。詳細な除去実験、スキルスキーマ、評価設定の細部は、PDF 本文を精読してから扱うのがよい。",[10,87,89],{"id":88},"限界注意点","限界・注意点",[91,92,93,97,100],"ul",{},[94,95,96],"li",{},"この論文を実務に移す時の核は、失敗ログをどの粒度でスキル化するかだ。抽象化しすぎると一般論になり、細かすぎると再利用できない。失敗パターン、修復パターン、検証方法、適用条件を分けて残す必要がある。",[94,98,99],{},"もう一つの論点は、スキルからタスクを作る時の検証である。人間の反省メモなら『次から気をつける』で済むが、エージェントの改善ループでは、そのスキルが作ったタスクが本当に実行可能で、改善に効くかをゲートする必要がある。",[94,101,102],{},"個人AIアシスタント運用に引き寄せるなら、ログ振り返りの出力を記憶ルールの追記で終わらせず、次に失敗しやすい代表課題、回帰テスト、スキル更新候補、拒否した更新候補に分ける設計が考えられる。",[10,104,105],{"id":105},"おい丸のようなエージェントにどう使えるか",[14,107,108],{},"おい丸のような作業支援エージェントでは、過去ログをそのまま要約しても次の改善にはつながりにくい。どの失敗パターンをスキルにし、どの修復練習へ変えるかを分ける必要がある。",[14,110,111],{},"Socratic-SWE 的に見るなら、ログ振り返りはスキル作成だけでなく、次に解かせる検証タスク作りにも使える。弱点に合う小さな修復タスクを作り、結果をまたスキル更新へ戻す流れが効く。",[10,113,115],{"id":114},"qa","Q&A",[117,118,120],"h3",{"id":119},"この論文の中心問いは","この論文の中心問いは？",[14,122,123],{},"コーディングエージェントの過去トレースを、次のスキルと訓練タスクを作る材料として使えるか、という問い。",[117,125,127],{"id":126},"socratic-swe-は何を自己進化させる","Socratic-SWE は何を自己進化させる？",[14,129,130],{},"解答役エージェントと、その解答役に合わせたスキル、狙いを絞った修復タスク、カリキュラムを閉ループで更新する。",[117,132,134],{"id":133},"トレース-由来エージェントスキルとは","トレース-由来エージェントスキルとは？",[14,136,137],{},"エージェントが過去に残した成功・失敗トレースから、繰り返す失敗や修復パターンを抽出し、次の行動やタスク生成に使える形へ構造化したスキル。",[117,139,141],{"id":140},"従来の合成タスク生成と何が違う","従来の合成タスク生成と何が違う？",[14,143,144],{},"固定的な変異やバグ注入ではなく、解答役の実際のトレースから弱点や修復手順を取り出し、それに合う狙いを絞った修復タスクを作る点が違う。",[117,146,148],{"id":147},"なぜ実行ベースの検証が必要","なぜ実行ベースの検証が必要？",[14,150,151],{},"生成されたタスクが見た目だけもっともらしくても、実リポジトリ上で実行・検証できなければ訓練に使いにくい。実行で候補をふるいにかけるために必要。",[117,153,155],{"id":154},"解答役の学習段階に合わせる報酬は何のため","解答役の学習段階に合わせる報酬は何のため？",[14,157,158],{},"候補タスクが今の解答役の改善方向に合っているかを評価するため。単に難しいタスクではなく、学習に効くタスクを残す。",[117,160,162],{"id":161},"結果として何が示された","結果として何が示された？",[14,164,165],{},"abstract では、SWE-bench Verified、SWE-bench Lite、SWE-bench Pro、Terminal-Bench 2.0 で同程度の計算量を使う自己進化ベースラインを上回り、SWE-bench Verified では 3 反復後に 50.40% に到達したと報告されている。",[117,167,169],{"id":168},"個人aiアシスタント運用にどう効く","個人AIアシスタント運用にどう効く？",[14,171,172],{},"ログから記憶やスキルを追記するだけでなく、次の検証タスク、回帰テスト、拒否した更新候補まで作る改善ループとして設計できる。",[117,174,176],{"id":175},"読む時に注意することは","読む時に注意することは？",[14,178,179],{},"このページは abstract と arXiv メタデータを中心にした読書導線なので、スキルスキーマ、除去実験、評価設定の詳細は PDF 本文で確認する必要がある。",[117,181,183],{"id":182},"関連する論点は","関連する論点は？",[14,185,186],{},"SkillOpt、MUSE-Autoskill、SkillEvolBench、Counterfactual Trace Auditing が近い。スキルの生成、評価、更新、効果監査をそれぞれ補える。",[10,188,189],{"id":189},"関連する記事",[91,191,192,200,207,214,217],{},[94,193,194,199],{},[195,196,198],"a",{"href":197},"\u002Fcontents\u002Fskillopt","自然言語スキルを検証しながら改善する"," は、スキルを外部に置ける改善可能な状態として扱う視点が近い。",[94,201,202,206],{},[195,203,205],{"href":204},"\u002Fcontents\u002Fmuse-autoskill","スキルの作成・記憶・管理・評価を回す"," は、スキルのライフサイクル全体を見る記事としてつながる。",[94,208,209,213],{},[195,210,212],{"href":211},"\u002Fcontents\u002Fskillevolbench","経験が手続きスキルに育つかを測る"," は、経験から手続き的スキルへ変わるかの評価を見る記事として並べやすい。",[94,215,216],{},"実装に落とすなら、既存のスキル更新ログから、失敗トレース、修復パターン、適用条件、検証タスク、reject reason を分けた小さな台帳を作るのが第一歩になる。",[94,218,219],{},"深掘りするなら、PDF 本文でスキルスキーマ、タスク生成器、検証、対応づけ報酬、各ベンチマークの除去実験を確認する。",{"title":221,"searchDepth":222,"depth":222,"links":223},"",2,[224,225,226,227,228,229,230,231,244],{"id":12,"depth":222,"text":12},{"id":31,"depth":222,"text":31},{"id":43,"depth":222,"text":43},{"id":64,"depth":222,"text":64},{"id":76,"depth":222,"text":76},{"id":88,"depth":222,"text":89},{"id":105,"depth":222,"text":105},{"id":114,"depth":222,"text":115,"children":232},[233,235,236,237,238,239,240,241,242,243],{"id":119,"depth":234,"text":120},3,{"id":126,"depth":234,"text":127},{"id":133,"depth":234,"text":134},{"id":140,"depth":234,"text":141},{"id":147,"depth":234,"text":148},{"id":154,"depth":234,"text":155},{"id":161,"depth":234,"text":162},{"id":168,"depth":234,"text":169},{"id":175,"depth":234,"text":176},{"id":182,"depth":234,"text":183},{"id":189,"depth":222,"text":189},"2026-06-08","コーディングエージェントの過去トレースから、次のスキルと検証タスクを作る論文。ログを読むだけで終えず、実行検証へ戻す。",false,"md",{},true,"\u002Fcontents\u002Fsocratic-swe",{"title":5,"description":246},"contents\u002Fsocratic-swe",[255,256,257],"論文まとめ","エージェントスキル","コーディングエージェント","\u002Farticle-pages\u002Fdocs\u002Fassets\u002Fgraphic-recordings\u002Fsocratic-swe.png","2026-06-24","Bg9BO3ygx5FzUlVZkwafewIWrAlPcPVJ-9gp69GDQ2U",[262,266],{"title":263,"path":264,"stem":265,"children":-1},"SkillPyramid: A Hierarchical Skill Consolidation Framework for Self-Evolving Agents","\u002Fcontents\u002Fskillpyramid","contents\u002Fskillpyramid",{"title":267,"path":268,"stem":269,"children":-1},"ソフトウェア開発に関する書籍をいくつか読んだのでまとめてみる","\u002Fcontents\u002Fsoftware-dev","contents\u002Fsoftware-dev",1782329026827]