From 3aef5217cbe4796f4e03e8f2c65857b0d4460c26 Mon Sep 17 00:00:00 2001 From: Dex Miller Date: Fri, 10 Apr 2026 22:36:32 +0800 Subject: [PATCH] Restore first-class OMO Slim council support (#1981) (#1982) cc-switch could already persist arbitrary OMO Slim agent keys and top-level fields, but the built-in metadata and UI copy still reflected the pre-council agent set. This made the upstream council feature look unsupported and pushed users toward manual JSON-only setup. Promote council to a built-in OMO Slim agent, add copy that points top-level plugin settings at Other Fields, and lock the behavior with regression tests. Constraint: oh-my-opencode-slim exposes council through both agents.council and top-level council config Rejected: Add a dedicated council editor UI now | too much surface area for issue #1981 Confidence: high Scope-risk: narrow Reversibility: clean Directive: Keep OMO Slim built-in agent metadata aligned with upstream agent additions before shipping UI support Tested: pnpm exec vitest run tests/utils/omoConfig.test.ts tests/components/OmoFormFields.mergeCustomModelsIntoStore.test.ts Tested: pnpm typecheck Not-tested: End-to-end validation against a live oh-my-opencode-slim installation Related: farion1231/cc-switch#1981 --- .../providers/forms/OmoFormFields.tsx | 22 ++++++++--- src/i18n/locales/en.json | 7 +++- src/i18n/locales/ja.json | 7 +++- src/i18n/locales/zh.json | 7 +++- src/types/omo.ts | 9 +++++ tests/utils/omoConfig.test.ts | 38 +++++++++++++++++++ 6 files changed, 78 insertions(+), 12 deletions(-) diff --git a/src/components/providers/forms/OmoFormFields.tsx b/src/components/providers/forms/OmoFormFields.tsx index 52cced9cb..c1a316515 100644 --- a/src/components/providers/forms/OmoFormFields.tsx +++ b/src/components/providers/forms/OmoFormFields.tsx @@ -1264,12 +1264,22 @@ export function OmoFormFields({ ) : undefined, maxHeightClass: "max-h-[500px]", children: ( -