From ee51c5e5fbaea694e65bb0a4908f75bcaf9707d1 Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Mon, 8 Jun 2026 20:55:51 +0300 Subject: feat: use pty-first agent detection --- src/detect/agents/opencode.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/detect/agents/opencode.rs') diff --git a/src/detect/agents/opencode.rs b/src/detect/agents/opencode.rs index 219f69ed..ab8a424f 100644 --- a/src/detect/agents/opencode.rs +++ b/src/detect/agents/opencode.rs @@ -2,7 +2,7 @@ use super::super::{has_interrupt_pattern, AgentState}; pub(super) fn detect(content: &str) -> AgentState { // Blocked - if content.contains("△ Permission required") || has_opencode_question_prompt(content) { + if has_visible_blocker(content) { return AgentState::Blocked; } @@ -17,6 +17,10 @@ pub(super) fn detect(content: &str) -> AgentState { AgentState::Idle } +pub(super) fn has_visible_blocker(content: &str) -> bool { + content.contains("△ Permission required") || has_opencode_question_prompt(content) +} + fn has_opencode_question_prompt(content: &str) -> bool { let lower = content.to_lowercase(); let has_enter_action = lower.contains("enter confirm") -- cgit v1.2.3