feat(omp): add native OMP provider (#2067)

Pi and OMP share only the JSONL child-process transport while retaining provider-owned launch, RPC, runtime, session, history, and permission behavior. Removes captured fixtures in favor of typed harnesses and real-provider coverage.

Closes #2006
Closes #2060
This commit is contained in:
Ethan Greenfeld
2026-07-16 23:20:59 +02:00
committed by GitHub
parent d9a0b3e8d8
commit d2308f4835
72 changed files with 12992 additions and 740 deletions
+22 -4
View File
@@ -142,6 +142,24 @@ const OPENCODE_MODES: AgentProviderModeDefinition[] = [
},
];
export const OMP_MODES: AgentProviderModeDefinition[] = [
{
id: "full",
label: "Full Access",
description: "Launches OMP with yolo approval mode so tools run without prompts.",
icon: "ShieldOff",
colorTier: "dangerous",
isUnattended: true,
},
{
id: "ask",
label: "Always Ask",
description: "Launches OMP with always-ask approval mode for write and exec tools.",
icon: "ShieldCheck",
colorTier: "safe",
},
];
const MOCK_LOAD_TEST_MODES: AgentProviderModeDefinition[] = [
{
id: "load-test",
@@ -217,11 +235,11 @@ export const AGENT_PROVIDER_DEFINITIONS: AgentProviderDefinition[] = [
},
{
id: "omp",
label: "OMP",
description: "Pi-compatible coding agent distributed as Oh My Pi",
label: "Oh My Pi",
description: "Multi-provider coding agent with native approvals, host tools, and subagents",
enabledByDefault: false,
defaultModeId: null,
modes: [],
defaultModeId: "full",
modes: OMP_MODES,
},
];