0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

oh-my-agent: vendor hookを単一ABIに統合、oma-refactorスキル追加、hook起動を0.54秒から0.32秒に短縮

0
Last updated at Posted at 2026-06-12

今週のoh-my-agentは7日間で175コミット、リリースはCLI 8.42.0から9.0.2まで進みました。中心はベンダーhook基盤の刷新です。これまで8つのベンダーへ個別にコピーしていたhookスクリプト群を単一の oma hook ABIに集約し、あわせてリファクタリング専門スキル oma-refactor が加わりました。

新機能

  • oma hook ABI: ベンダーごとのスクリプトコピー方式を廃止し、oma hook --vendor <v> --event <e> の単一ディスパッチに統合しました。hook対応の8ベンダーすべてで、ロジックの実体が1か所にまとまります
  • oma-refactor スキル: 振る舞いを変えずにコードを段階的に整理するリファクタリング専門スキルです。コードスメル・SATD・ホットスポットを対象に選び、characterization testを安全網として使います。utility evalではベースライン比 +57.1% のリフトを確認しています
  • refactor-engineerresearch-explorer の2エージェントを追加しました。前者は予算枠つきのリファクタリングを、後者は出典と信頼ラベル付きのクロスソース調査を担当します
  • 新ベンダー対応: commandcode をhook・エージェント・認証検出込みでサポートし、マルチプロバイダのproxyランタイムである pi をper-agentディスパッチ先に加えました
  • serena-primer: Serenaを有効化したプロジェクトで、セッション開始時にsymbolicツールの利用ガイダンスを注入するprompt handlerです
  • oma ralph:verify: ralphワークフローのEXECゲートを、手順書頼みのチェックからCLIによる機械的な判定へ移しました。不足アーティファクトと対処を構造化JSONで返します
  • oma update が、テンプレートにあってユーザーの oma-config.yaml にないトップレベルキーを自動追記するようになりました。既存キーには触れず、ユーザーの記述はバイト単位で保たれます
  • エージェントIDを retrieval から explore へ改名しました(v9.0.0の破壊的変更)。migration 014がユーザーconfigを自動で書き換えます

修正

  • docs検証の誤検知を大きく減らしました。リポジトリ全体のbroken refsは6,611件から394件に、web/docs サブセットは491件から29件になりました
  • セキュリティ強化として、shell文字列での実行を execFileSync のargv渡しに置き換え、SSRF・パストラバーサル・slide --inline-fonts のXSSをそれぞれ遮断しました
  • antigravityでユーザー登録のhookを上書きしてしまう問題を修正しました。oma管理のエントリだけをマージし、ユーザー定義はそのまま残します
  • クラッシュした oma install / oma update が残すロックの回収を、最大10分から60秒に短縮しました
  • ベンダーがstdinを閉じない場合にhookディスパッチが18秒以上ブロックされる問題を、2秒のfail-openタイムアウトで解消しました
  • ワークフロー名に言及しただけでralphの永続モードが起動する誤検知を、プロンプト言語に依存しない判定ロジックで根本から直しました

改善

  • oma hook の起動を高速化しました。コマンドツリーの遅延ロードとargvのfast pathにより、実行時間は約0.54秒から約0.32秒になりました
  • 500行を超える非テストファイル28本をサブモジュールへ分割しました。最大ファイルは491行になり、公開APIは変わっていません(vitest 3043件パス)
  • 15モジュールに重複していた isRecord ガード、ベンダーごとのauth probe定型、exit code定義などを共通モジュールへ集約しました
  • 5系統以上に散らばっていたバックアップ先を .agents/backup/ 配下に統一しました。gitignoreは1行で済み、oma update の成功後に自動でクリアされます
  • cross-slice境界チェックの check-boundaries.mjs を修復し、CIゲートとして復活させました

インストール

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.ps1 | iex

複数のコーディングエージェントCLIを1つのSSOTで運用しているエンジニア、特にベンダーごとのhookの挙動差やリファクタリングの安全性に悩んでいる人に効く更新です。v9.0.0で explore への改名が入ったため、oma-config.yaml を手で編集している場合は新しいキー名を確認してください。


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?