Diego Rodrigues de Sa e Souza
0ec476b755
feat(cli): setup-qwen — configure Qwen Code for OmniRoute (settings.json modelProvider) (#4301)
CLI #11 of the series. `omniroute setup-qwen` writes Qwen Code's file-based
~/.qwen/settings.json: an openai `modelProvider` (id omniroute, authType openai,
baseUrl WITH /v1, envKey OMNIROUTE_API_KEY — secret stays in the env), selects it,
sets the model. Merges (de-dupes the omniroute provider, preserves the rest).
Remote-aware; model via --model or interactive pick; headless test `qwen -p`.
Researched against QwenLM/qwen-code: modelProviders authType openai, baseUrl /v1,
envKey reference. Qwen's wire (/v1/chat/completions) already validated → "OK".
Tests: resolveQwenTarget (/v1, key), buildQwenSettings (openai provider + /v1 +
envKey + model, de-dupe + preserve). 4 unit tests; cli-i18n green.
2026-06-19 17:26:38 -03:00
..
2026-05-15 02:08:12 -03:00
2026-05-15 01:30:18 -03:00
2026-06-11 04:01:24 -03:00
2026-05-26 23:51:47 -03:00
2026-05-15 02:24:45 -03:00
2026-05-14 23:24:52 -03:00
2026-05-15 00:28:36 -03:00
2026-05-15 01:51:55 -03:00
2026-05-15 02:47:49 -03:00
2026-05-15 03:24:50 -03:00
2026-05-26 23:51:47 -03:00
2026-05-26 23:51:47 -03:00
2026-06-19 06:49:01 -03:00
2026-06-19 06:49:01 -03:00
2026-05-15 02:47:49 -03:00
2026-06-19 06:49:01 -03:00
2026-05-15 00:52:15 -03:00
2026-05-15 05:11:18 -03:00
2026-05-26 23:51:47 -03:00
2026-05-14 23:24:52 -03:00
2026-05-15 09:13:56 -03:00
2026-05-15 02:24:45 -03:00
2026-05-15 03:24:50 -03:00
2026-05-15 10:24:30 -03:00
2026-06-19 11:40:53 -03:00
2026-06-19 11:40:53 -03:00
2026-05-15 10:24:30 -03:00
2026-05-15 02:05:06 -03:00
2026-06-01 14:30:17 -03:00
2026-05-14 23:54:49 -03:00
2026-05-15 02:27:20 -03:00
2026-05-15 09:13:56 -03:00
2026-05-15 02:47:49 -03:00
2026-05-15 03:00:52 -03:00
2026-05-15 02:47:49 -03:00
2026-05-20 23:41:39 -03:00
2026-05-26 23:51:47 -03:00
2026-05-15 02:25:58 -03:00
2026-05-14 22:38:59 -03:00
2026-05-20 02:05:50 -03:00
2026-05-14 23:24:52 -03:00
2026-06-19 17:26:38 -03:00
2026-05-15 04:51:23 -03:00
2026-05-20 09:12:49 -03:00
2026-05-15 02:26:41 -03:00
2026-05-14 23:11:30 -03:00
2026-06-14 02:02:02 -03:00
2026-06-14 02:02:02 -03:00
2026-05-15 02:47:49 -03:00
2026-06-19 10:27:24 -03:00
2026-06-19 12:30:51 -03:00
2026-06-19 10:27:24 -03:00
2026-06-19 13:19:12 -03:00
2026-06-19 16:38:48 -03:00
2026-06-19 13:21:55 -03:00
2026-06-19 17:04:44 -03:00
2026-06-19 12:57:22 -03:00
2026-06-19 11:09:12 -03:00
2026-06-19 11:09:12 -03:00
2026-06-19 17:26:38 -03:00
2026-06-19 16:13:26 -03:00
2026-06-12 23:49:22 -03:00
2026-05-15 00:45:35 -03:00
2026-05-15 01:24:36 -03:00
2026-05-26 23:51:47 -03:00
2026-05-15 00:18:53 -03:00
2026-05-15 00:36:41 -03:00
2026-05-15 02:27:56 -03:00
2026-05-15 02:47:49 -03:00
2026-05-15 02:47:49 -03:00
2026-05-15 09:48:30 -03:00
2026-06-19 06:49:01 -03:00
2026-05-15 02:25:24 -03:00
2026-05-15 04:07:20 -03:00
2026-05-15 10:24:30 -03:00
2026-06-19 06:49:01 -03:00
2026-05-15 00:59:21 -03:00
2026-05-15 01:53:09 -03:00