親Epic: #38
概要
Hook実行の基本モデル(イベント種別、マッチャー、実行順序)と設定スキーマを定義する。
イベント種別
PreToolUse — ツール実行前(ブロック可能)
PostToolUse — ツール実行後(コンテキスト注入)
SessionStart — セッション開始時
Notification — 通知イベント
設定スキーマ(opencode.json拡張)
{
"hooks": {
"PreToolUse": [
{
"matcher": "bash",
"command": "~/.opencode/hooks/factcheck.sh",
"timeout": 10000
}
],
"SessionStart": [
{
"command": "~/.opencode/hooks/session-init.sh"
}
]
}
}
対象ファイル
packages/opencode/src/config/config.ts — hooks設定スキーマ追加
- 新規:
packages/opencode/src/hook/ ディレクトリ
schema.ts — Hook型定義
index.ts — 公開API
受入基準
親Epic: #38
概要
Hook実行の基本モデル(イベント種別、マッチャー、実行順序)と設定スキーマを定義する。
イベント種別
PreToolUse— ツール実行前(ブロック可能)PostToolUse— ツール実行後(コンテキスト注入)SessionStart— セッション開始時Notification— 通知イベント設定スキーマ(opencode.json拡張)
{ "hooks": { "PreToolUse": [ { "matcher": "bash", "command": "~/.opencode/hooks/factcheck.sh", "timeout": 10000 } ], "SessionStart": [ { "command": "~/.opencode/hooks/session-init.sh" } ] } }対象ファイル
packages/opencode/src/config/config.ts— hooks設定スキーマ追加packages/opencode/src/hook/ディレクトリschema.ts— Hook型定義index.ts— 公開API受入基準