発見元
Codex CLI セカンドオピニオンレビュー(2026-04-05)→ コード検証済み
問題
packages/opencode/src/notification/index.ts:48 の terminalIsFocused() が macOS 以外で常に false を返す。
export async function terminalIsFocused(): Promise<boolean> {
if (platform() !== "darwin") return false // ← Linux/Windows は常に false
// ... macOS only: osascript でフォーカス検出
}
結果: Linux/Windows ではターミナルがフォーカスされていても session-complete 通知が発火する。
影響箇所
packages/opencode/src/notification/index.ts:48
packages/opencode/src/cli/cmd/tui/app.tsx:820,840
対策案
- Linux:
/proc/[pid]/fd/0 のターミナル比較
- Windows: Win32
GetForegroundWindow API
- または non-macOS ではデフォルトで通知を抑制
重要度: MEDIUM
発見元
Codex CLI セカンドオピニオンレビュー(2026-04-05)→ コード検証済み
問題
packages/opencode/src/notification/index.ts:48のterminalIsFocused()が macOS 以外で常にfalseを返す。結果: Linux/Windows ではターミナルがフォーカスされていても session-complete 通知が発火する。
影響箇所
packages/opencode/src/notification/index.ts:48packages/opencode/src/cli/cmd/tui/app.tsx:820,840対策案
/proc/[pid]/fd/0のターミナル比較GetForegroundWindowAPI重要度: MEDIUM