Skip to content

Commit 7d5f697

Browse files
authored
Merge pull request #46 from odefun/ode_1770430108.764709
fix: add codex channel selection and skip model validation
2 parents d8edaca + 926c407 commit 7d5f697

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

packages/ims/slack/client.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ function describeSettingsIssues(channelId: string): string[] {
201201
issues.push(`Agent not enabled: ${provider}`);
202202
}
203203

204-
if (provider === "opencode" || provider === "codex") {
204+
if (provider === "opencode") {
205205
const models = getOpenCodeModels();
206206
const modelSet = new Set(models.map(normalizeModel));
207207
if (!model) {

packages/web-ui/src/routes/local-setting/slack-bot/[workspaceName]/+page.svelte

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
import { localSettingStore } from "$lib/local-setting/store";
55
import { getSelectedWorkspace, getWorkspacePath, slugify } from "$lib/local-setting/workspaces";
66
7-
type AgentProvider = "opencode" | "claudecode";
7+
type AgentProvider = "opencode" | "claudecode" | "codex";
88
99
const providerLabels: Record<AgentProvider, string> = {
1010
opencode: "OpenCode",
1111
claudecode: "Claude Code",
12+
codex: "Codex",
1213
};
1314
1415
let isCanonicalizingWorkspaceRoute = false;
1516
1617
$: selectedWorkspace = getSelectedWorkspace($page.params.workspaceName ?? "", $localSettingStore.config.workspaces);
1718
$: enabledProviders = (Object.keys(providerLabels) as AgentProvider[]).filter((provider) => {
1819
if (provider === "opencode") return $localSettingStore.config.agents.opencode.enabled;
19-
return $localSettingStore.config.agents.claudecode.enabled;
20+
if (provider === "claudecode") return $localSettingStore.config.agents.claudecode.enabled;
21+
return $localSettingStore.config.agents.codex.enabled;
2022
});
2123
$: maybeCanonicalizeWorkspaceRoute();
2224
@@ -35,6 +37,7 @@
3537
3638
function getChannelProvider(channel: { agentProvider?: string }): AgentProvider {
3739
if (channel.agentProvider === "claudecode") return "claudecode";
40+
if (channel.agentProvider === "codex") return "codex";
3841
return "opencode";
3942
}
4043
@@ -59,7 +62,12 @@
5962
}
6063
6164
function onChannelProviderChange(workspaceId: string, channelId: string, event: Event): void {
62-
const provider = (event.currentTarget as HTMLSelectElement).value === "claudecode" ? "claudecode" : "opencode";
65+
const selected = (event.currentTarget as HTMLSelectElement).value;
66+
const provider = selected === "claudecode"
67+
? "claudecode"
68+
: selected === "codex"
69+
? "codex"
70+
: "opencode";
6371
localSettingStore.updateWorkspace(workspaceId, (workspace) => ({
6472
...workspace,
6573
channelDetails: workspace.channelDetails.map((channel) => {

0 commit comments

Comments
 (0)