diff options
| author | Adam Malczewski <[email protected]> | 2026-05-20 20:40:35 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-05-20 20:40:35 +0900 |
| commit | 8151447758e6826a578363758a755c6cebd1c05f (patch) | |
| tree | 6afa780c28ca6e4622c1ab30238665caaad4371e /packages/api/src/app.ts | |
| parent | f05099d450748cc7508f8cbde4e6539db2105f6d (diff) | |
| download | dispatch-8151447758e6826a578363758a755c6cebd1c05f.tar.gz dispatch-8151447758e6826a578363758a755c6cebd1c05f.zip | |
feat: claude max oauth support with multi-account switching, reasoning effort, and dynamic model listing
Diffstat (limited to 'packages/api/src/app.ts')
| -rw-r--r-- | packages/api/src/app.ts | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/api/src/app.ts b/packages/api/src/app.ts index c2fbae5..3591281 100644 --- a/packages/api/src/app.ts +++ b/packages/api/src/app.ts @@ -33,7 +33,7 @@ app.get("/status", (c) => { }); app.post("/chat", async (c) => { - const body = await c.req.json<{ message?: unknown }>(); + const body = await c.req.json<{ message?: unknown; keyId?: unknown; modelId?: unknown; reasoningEffort?: unknown }>(); const message = body.message; if (typeof message !== "string" || message.trim() === "") { @@ -44,8 +44,15 @@ app.post("/chat", async (c) => { return c.json({ error: "agent is already running" }, 409); } + const keyId = typeof body.keyId === "string" ? body.keyId : undefined; + const modelId = typeof body.modelId === "string" ? body.modelId : undefined; + const validEfforts = ["none", "low", "medium", "high", "max"]; + const reasoningEffort = typeof body.reasoningEffort === "string" && validEfforts.includes(body.reasoningEffort) + ? (body.reasoningEffort as "none" | "low" | "medium" | "high" | "max") + : undefined; + // Non-blocking — let the agent run in the background - agentManager.processMessage(message).catch(console.error); + agentManager.processMessage(message, keyId, modelId, reasoningEffort).catch(console.error); return c.json({ status: "ok" }); }); |
