merlion 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +28 -6
  2. package/dist/cli/markdown.d.ts.map +1 -1
  3. package/dist/cli/markdown.js +193 -42
  4. package/dist/cli/markdown.js.map +1 -1
  5. package/dist/cli/status.js +1 -1
  6. package/dist/cli/status.js.map +1 -1
  7. package/dist/config/store.d.ts +8 -1
  8. package/dist/config/store.d.ts.map +1 -1
  9. package/dist/config/store.js +1 -0
  10. package/dist/config/store.js.map +1 -1
  11. package/dist/config/wizard.d.ts +8 -2
  12. package/dist/config/wizard.d.ts.map +1 -1
  13. package/dist/config/wizard.js +103 -10
  14. package/dist/config/wizard.js.map +1 -1
  15. package/dist/index.js +133 -11
  16. package/dist/index.js.map +1 -1
  17. package/dist/runtime/loop.d.ts +3 -0
  18. package/dist/runtime/loop.d.ts.map +1 -1
  19. package/dist/runtime/loop.js +93 -4
  20. package/dist/runtime/loop.js.map +1 -1
  21. package/dist/runtime/prompt_observability.d.ts +4 -0
  22. package/dist/runtime/prompt_observability.d.ts.map +1 -1
  23. package/dist/runtime/prompt_observability.js +23 -5
  24. package/dist/runtime/prompt_observability.js.map +1 -1
  25. package/dist/tools/builtin/bash.d.ts.map +1 -1
  26. package/dist/tools/builtin/bash.js +16 -5
  27. package/dist/tools/builtin/bash.js.map +1 -1
  28. package/dist/tools/builtin/config.d.ts.map +1 -1
  29. package/dist/tools/builtin/config.js +11 -1
  30. package/dist/tools/builtin/config.js.map +1 -1
  31. package/dist/tools/builtin/config_get.js +2 -2
  32. package/dist/tools/builtin/config_get.js.map +1 -1
  33. package/dist/tools/builtin/config_set.d.ts.map +1 -1
  34. package/dist/tools/builtin/config_set.js +15 -2
  35. package/dist/tools/builtin/config_set.js.map +1 -1
  36. package/package.json +4 -3
package/README.md CHANGED
@@ -3,6 +3,7 @@
3
3
  Merlion is a terminal coding agent focused on two goals:
4
4
  - high coding quality (benchmarking Claude Code / Codex style workflows)
5
5
  - lower token cost through practical context + tool design
6
+ - provider-agnostic OpenAI-compatible runtime (`openrouter` / `openai` / custom URL)
6
7
 
7
8
  ## Quick Start (Recommended)
8
9
 
@@ -10,7 +11,7 @@ Merlion is a terminal coding agent focused on two goals:
10
11
 
11
12
  ```bash
12
13
  npm install -g merlion
13
- export OPENROUTER_API_KEY=your_key_here
14
+ # first run will guide provider/key/model setup interactively
14
15
  merlion --repl
15
16
  ```
16
17
 
@@ -18,7 +19,7 @@ If you prefer local install in a project:
18
19
 
19
20
  ```bash
20
21
  npm install merlion
21
- export OPENROUTER_API_KEY=your_key_here
22
+ # first run will guide provider/key/model setup interactively
22
23
  npx merlion --repl
23
24
  ```
24
25
 
@@ -28,10 +29,20 @@ npx merlion --repl
28
29
  git clone https://github.com/StevenSLXie/Merlion.git
29
30
  cd Merlion
30
31
  npm install
31
- export OPENROUTER_API_KEY=your_key_here
32
+ # first run will guide provider/key/model setup interactively
32
33
  npm run merlion -- --repl
33
34
  ```
34
35
 
36
+ Optional non-interactive env configuration:
37
+
38
+ ```bash
39
+ export MERLION_PROVIDER=openrouter # openrouter | openai | custom
40
+ export MERLION_API_KEY=your_key_here
41
+ export MERLION_MODEL=qwen/qwen3-coder
42
+ export MERLION_BASE_URL=https://openrouter.ai/api/v1
43
+ merlion --repl
44
+ ```
45
+
35
46
  ## Common Usage
36
47
 
37
48
  ```bash
@@ -52,6 +63,7 @@ merlion --resume <session-id>
52
63
  Merlion 是一个终端代码代理,核心目标是:
53
64
  - 代码质量对标 Claude Code / Codex 这类工程化工作流
54
65
  - 通过上下文与工具设计尽量节省 token,从而降低成本
66
+ - 支持 OpenAI-compatible provider(`openrouter` / `openai` / 自定义 URL)
55
67
 
56
68
  ## 快速开始(推荐)
57
69
 
@@ -59,7 +71,7 @@ Merlion 是一个终端代码代理,核心目标是:
59
71
 
60
72
  ```bash
61
73
  npm install -g merlion
62
- export OPENROUTER_API_KEY=your_key_here
74
+ # 首次运行会交互引导 provider/key/model 配置
63
75
  merlion --repl
64
76
  ```
65
77
 
@@ -67,7 +79,7 @@ merlion --repl
67
79
 
68
80
  ```bash
69
81
  npm install merlion
70
- export OPENROUTER_API_KEY=your_key_here
82
+ # 首次运行会交互引导 provider/key/model 配置
71
83
  npx merlion --repl
72
84
  ```
73
85
 
@@ -77,10 +89,20 @@ npx merlion --repl
77
89
  git clone https://github.com/StevenSLXie/Merlion.git
78
90
  cd Merlion
79
91
  npm install
80
- export OPENROUTER_API_KEY=your_key_here
92
+ # 首次运行会交互引导 provider/key/model 配置
81
93
  npm run merlion -- --repl
82
94
  ```
83
95
 
96
+ 也可以用环境变量非交互配置:
97
+
98
+ ```bash
99
+ export MERLION_PROVIDER=openrouter # openrouter | openai | custom
100
+ export MERLION_API_KEY=your_key_here
101
+ export MERLION_MODEL=qwen/qwen3-coder
102
+ export MERLION_BASE_URL=https://openrouter.ai/api/v1
103
+ merlion --repl
104
+ ```
105
+
84
106
  ## 常用命令
85
107
 
86
108
  ```bash
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/cli/markdown.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAA;IACtF,IAAI,EAAE,MAAM,CAAA;CACb;AAUD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,EAAE,CA8D1E"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/cli/markdown.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,CAAA;IACtF,IAAI,EAAE,MAAM,CAAA;CACb;AAsID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AA0FD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAgB1E"}
@@ -1,74 +1,225 @@
1
+ import { marked } from 'marked';
1
2
  import { sanitizeRenderableText } from "./sanitize.js";
2
- function normalizeInline(text) {
3
- return text
4
- .replace(/\[([^\]]+)\]\(([^)]+)\)/g, '$1 <$2>')
5
- .replace(/`([^`]+)`/g, '$1')
6
- .replace(/\*\*([^*]+)\*\*/g, '$1')
7
- .replace(/__([^_]+)__/g, '$1');
3
+ function pushRenderedLines(rendered, kind, text) {
4
+ const lines = sanitizeRenderableText(text).split('\n');
5
+ for (const line of lines) {
6
+ rendered.push({ kind, text: line });
7
+ }
8
+ }
9
+ function stripHtmlTags(text) {
10
+ return text.replace(/<[^>]+>/g, '');
11
+ }
12
+ function renderInlineTokens(tokens) {
13
+ if (!tokens || tokens.length === 0)
14
+ return '';
15
+ return tokens.map((token) => renderInlineToken(token)).join('');
16
+ }
17
+ function renderInlineToken(token) {
18
+ if (token.type === 'text') {
19
+ const textToken = token;
20
+ if (textToken.tokens && textToken.tokens.length > 0) {
21
+ return renderInlineTokens(textToken.tokens);
22
+ }
23
+ return sanitizeRenderableText(textToken.text ?? textToken.raw ?? '');
24
+ }
25
+ if (token.type === 'codespan') {
26
+ return sanitizeRenderableText(token.text);
27
+ }
28
+ if (token.type === 'strong' || token.type === 'em' || token.type === 'del') {
29
+ return renderInlineTokens(token.tokens);
30
+ }
31
+ if (token.type === 'link') {
32
+ const link = token;
33
+ const content = renderInlineTokens(link.tokens).trim();
34
+ if (content === '' || content === link.href)
35
+ return sanitizeRenderableText(link.href);
36
+ return `${content} <${sanitizeRenderableText(link.href)}>`;
37
+ }
38
+ if (token.type === 'image') {
39
+ const image = token;
40
+ const label = sanitizeRenderableText((image.text ?? '').trim());
41
+ if (label === '')
42
+ return `<${sanitizeRenderableText(image.href)}>`;
43
+ return `${label} <${sanitizeRenderableText(image.href)}>`;
44
+ }
45
+ if (token.type === 'escape') {
46
+ return sanitizeRenderableText(token.text);
47
+ }
48
+ if (token.type === 'html') {
49
+ return sanitizeRenderableText(stripHtmlTags(token.raw ?? ''));
50
+ }
51
+ if (token.type === 'br') {
52
+ return '\n';
53
+ }
54
+ return sanitizeRenderableText(token.raw ?? '');
55
+ }
56
+ function renderTable(token) {
57
+ const headers = token.header.map((cell) => renderInlineTokens(cell.tokens).replace(/\s+/g, ' ').trim());
58
+ const rows = token.rows.map((row) => row.map((cell) => renderInlineTokens(cell.tokens).replace(/\s+/g, ' ').trim()));
59
+ const columnCount = Math.max(headers.length, ...rows.map((row) => row.length));
60
+ const widths = new Array(columnCount).fill(3);
61
+ for (let i = 0; i < columnCount; i++) {
62
+ widths[i] = Math.max(widths[i] ?? 3, headers[i]?.length ?? 0, ...rows.map((row) => row[i]?.length ?? 0));
63
+ }
64
+ const pad = (value, width) => {
65
+ if (value.length >= width)
66
+ return value;
67
+ return `${value}${' '.repeat(width - value.length)}`;
68
+ };
69
+ const formatRow = (cells) => {
70
+ const values = [];
71
+ for (let i = 0; i < columnCount; i++) {
72
+ values.push(pad(cells[i] ?? '', widths[i] ?? 3));
73
+ }
74
+ return `| ${values.join(' | ')} |`;
75
+ };
76
+ const separator = `| ${widths.map((width) => '-'.repeat(width)).join(' | ')} |`;
77
+ const lines = [
78
+ { kind: 'table', text: formatRow(headers) },
79
+ { kind: 'table', text: separator }
80
+ ];
81
+ for (const row of rows) {
82
+ lines.push({ kind: 'table', text: formatRow(row) });
83
+ }
84
+ return lines;
85
+ }
86
+ function renderListItem(item, rendered, depth, orderedNumber) {
87
+ const nested = [];
88
+ renderBlockTokens(item.tokens ?? [], nested, depth + 1);
89
+ const indent = ' '.repeat(depth);
90
+ const bullet = orderedNumber === undefined ? '•' : `${orderedNumber}.`;
91
+ if (nested.length === 0) {
92
+ rendered.push({ kind: 'list', text: `${indent}${bullet}` });
93
+ return;
94
+ }
95
+ const [first, ...rest] = nested;
96
+ const firstText = first && first.text.trim() !== ''
97
+ ? `${indent}${bullet} ${first.text}`
98
+ : `${indent}${bullet}`;
99
+ rendered.push({ kind: 'list', text: firstText });
100
+ for (const line of rest) {
101
+ const continuation = `${indent} `;
102
+ if (line.text.trim() === '') {
103
+ rendered.push({ kind: 'list', text: continuation.trimEnd() });
104
+ continue;
105
+ }
106
+ const kind = line.kind === 'plain' || line.kind === 'list'
107
+ ? 'list'
108
+ : line.kind;
109
+ rendered.push({ kind, text: `${continuation}${line.text}` });
110
+ }
8
111
  }
9
112
  export function looksLikeMarkdown(text) {
10
113
  if (text.trim() === '')
11
114
  return false;
12
115
  return /(^|\n)(#{1,6}\s+|[-*+]\s+|\d+\.\s+|>\s+|```|[-*_]{3,}\s*$|\|.+\|)/m.test(text);
13
116
  }
14
- export function renderMarkdownLines(markdown) {
15
- const lines = markdown.replace(/\r\n/g, '\n').split('\n');
16
- const rendered = [];
17
- let inCode = false;
18
- let codeLanguage = 'text';
19
- for (const line of lines) {
20
- const raw = sanitizeRenderableText(line);
21
- const fence = raw.trim().match(/^```(\S+)?$/);
22
- if (fence) {
23
- if (!inCode) {
24
- codeLanguage = fence[1] ? sanitizeRenderableText(fence[1]) : 'text';
25
- rendered.push({ kind: 'code_meta', text: `code:${codeLanguage}` });
26
- inCode = true;
117
+ function renderBlockTokens(tokens, rendered, listDepth) {
118
+ for (const token of tokens) {
119
+ if (token.type === 'space') {
120
+ rendered.push({ kind: 'plain', text: '' });
121
+ continue;
122
+ }
123
+ if (token.type === 'heading') {
124
+ const heading = token;
125
+ const text = renderInlineTokens(heading.tokens).trim();
126
+ rendered.push({ kind: 'heading', text });
127
+ continue;
128
+ }
129
+ if (token.type === 'paragraph') {
130
+ const paragraph = token;
131
+ pushRenderedLines(rendered, 'plain', renderInlineTokens(paragraph.tokens));
132
+ continue;
133
+ }
134
+ if (token.type === 'text') {
135
+ const textToken = token;
136
+ if (textToken.tokens && textToken.tokens.length > 0) {
137
+ pushRenderedLines(rendered, 'plain', renderInlineTokens(textToken.tokens));
27
138
  }
28
139
  else {
29
- inCode = false;
30
- codeLanguage = 'text';
140
+ pushRenderedLines(rendered, 'plain', textToken.text);
31
141
  }
32
142
  continue;
33
143
  }
34
- if (inCode) {
35
- rendered.push({ kind: 'code', text: raw });
144
+ if (token.type === 'blockquote') {
145
+ const blockquote = token;
146
+ const quoted = [];
147
+ renderBlockTokens(blockquote.tokens ?? [], quoted, listDepth);
148
+ if (quoted.length === 0) {
149
+ rendered.push({ kind: 'quote', text: '│' });
150
+ }
151
+ else {
152
+ for (const line of quoted) {
153
+ rendered.push({
154
+ kind: 'quote',
155
+ text: line.text.trim() === '' ? '│' : `│ ${line.text}`
156
+ });
157
+ }
158
+ }
36
159
  continue;
37
160
  }
38
- if (/^\s*$/.test(raw)) {
39
- rendered.push({ kind: 'plain', text: '' });
161
+ if (token.type === 'list') {
162
+ const list = token;
163
+ const start = typeof list.start === 'number'
164
+ ? list.start
165
+ : Number.parseInt(String(list.start ?? '1'), 10) || 1;
166
+ list.items.forEach((item, index) => {
167
+ const orderedNumber = list.ordered ? start + index : undefined;
168
+ renderListItem(item, rendered, listDepth, orderedNumber);
169
+ });
40
170
  continue;
41
171
  }
42
- const heading = raw.match(/^\s*(#{1,6})\s+(.*)$/);
43
- if (heading) {
44
- const level = heading[1].length;
45
- const prefix = '#'.repeat(level);
46
- rendered.push({ kind: 'heading', text: `${prefix} ${normalizeInline(heading[2])}` });
172
+ if (token.type === 'list_item') {
173
+ renderListItem(token, rendered, listDepth);
47
174
  continue;
48
175
  }
49
- const quote = raw.match(/^\s*>\s?(.*)$/);
50
- if (quote) {
51
- rendered.push({ kind: 'quote', text: `> ${normalizeInline(quote[1])}` });
176
+ if (token.type === 'code') {
177
+ const code = token;
178
+ const language = sanitizeRenderableText((code.lang ?? '').trim()) || 'text';
179
+ rendered.push({ kind: 'code_meta', text: `code:${language}` });
180
+ const body = sanitizeRenderableText(code.text ?? '');
181
+ const lines = body.split('\n');
182
+ if (lines.length === 0) {
183
+ rendered.push({ kind: 'code', text: '' });
184
+ }
185
+ else {
186
+ for (const line of lines)
187
+ rendered.push({ kind: 'code', text: line });
188
+ }
52
189
  continue;
53
190
  }
54
- const list = raw.match(/^\s*([-*+]|\d+\.)\s+(.*)$/);
55
- if (list) {
56
- rendered.push({ kind: 'list', text: `${list[1]} ${normalizeInline(list[2])}` });
191
+ if (token.type === 'hr') {
192
+ rendered.push({ kind: 'rule', text: '────────────────────────' });
57
193
  continue;
58
194
  }
59
- if (/^\s*([-*_])\1\1+\s*$/.test(raw)) {
60
- rendered.push({ kind: 'rule', text: '────────────────────────' });
195
+ if (token.type === 'table') {
196
+ rendered.push(...renderTable(token));
61
197
  continue;
62
198
  }
63
- if (raw.includes('|') && /\|/.test(raw.trim())) {
64
- rendered.push({ kind: 'table', text: normalizeInline(raw) });
199
+ if (token.type === 'html') {
200
+ const text = sanitizeRenderableText(stripHtmlTags(token.raw ?? '')).trim();
201
+ if (text !== '')
202
+ rendered.push({ kind: 'plain', text });
65
203
  continue;
66
204
  }
67
- rendered.push({ kind: 'plain', text: normalizeInline(raw) });
205
+ const fallback = sanitizeRenderableText(token.raw ?? '').trim();
206
+ if (fallback !== '')
207
+ rendered.push({ kind: 'plain', text: fallback });
208
+ }
209
+ }
210
+ export function renderMarkdownLines(markdown) {
211
+ const input = sanitizeRenderableText(markdown.replace(/\r\n/g, '\n'));
212
+ const rendered = [];
213
+ try {
214
+ const tokens = marked.lexer(input);
215
+ renderBlockTokens(tokens, rendered, 0);
216
+ }
217
+ catch {
218
+ pushRenderedLines(rendered, 'plain', input);
68
219
  }
69
220
  while (rendered.length > 0) {
70
221
  const last = rendered[rendered.length - 1];
71
- if (!last || last.kind !== 'plain' || last.text !== '')
222
+ if (!last || last.text !== '' || (last.kind !== 'plain' && last.kind !== 'list' && last.kind !== 'quote'))
72
223
  break;
73
224
  rendered.pop();
74
225
  }
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/cli/markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/cli/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA2B,MAAM,QAAQ,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAOtD,SAAS,iBAAiB,CACxB,QAA8B,EAC9B,IAAgC,EAChC,IAAY;IAEZ,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACrC,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;AACrC,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA2B;IACrD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAY;IACrC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAG,KAAoB,CAAA;QACtC,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,OAAO,kBAAkB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC7C,CAAC;QACD,OAAO,sBAAsB,CAAC,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,CAAA;IACtE,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,sBAAsB,CAAE,KAAyB,CAAC,IAAI,CAAC,CAAA;IAChE,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC3E,OAAO,kBAAkB,CAAE,KAAgD,CAAC,MAAM,CAAC,CAAA;IACrF,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,KAAoB,CAAA;QACjC,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrF,OAAO,GAAG,OAAO,KAAK,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;IAC5D,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAqB,CAAA;QACnC,MAAM,KAAK,GAAG,sBAAsB,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QAC/D,IAAI,KAAK,KAAK,EAAE;YAAE,OAAO,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAA;QAClE,OAAO,GAAG,KAAK,KAAK,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAA;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,sBAAsB,CAAE,KAAuB,CAAC,IAAI,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,sBAAsB,CAAC,aAAa,CAAE,KAAqB,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;IAChF,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,sBAAsB,CAAE,KAA0B,CAAC,GAAG,IAAI,EAAE,CAAC,CAAA;AACtE,CAAC;AAED,SAAS,WAAW,CAAC,KAAmB;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IACvG,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAC/E,CAAA;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;IAC9E,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAClB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EACd,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,EACvB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAC1C,CAAA;IACH,CAAC;IAED,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,KAAa,EAAU,EAAE;QACnD,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;YAAE,OAAO,KAAK,CAAA;QACvC,OAAO,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAA;IACtD,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,KAAe,EAAU,EAAE;QAC5C,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,CAAC;QACD,OAAO,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IACpC,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IAC/E,MAAM,KAAK,GAAyB;QAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE;QAC3C,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;KACnC,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACrD,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,cAAc,CACrB,IAAqB,EACrB,QAA8B,EAC9B,KAAa,EACb,aAAsB;IAEtB,MAAM,MAAM,GAAyB,EAAE,CAAA;IACvC,iBAAiB,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;IAEvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACjC,MAAM,MAAM,GAAG,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,CAAA;IACtE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC,CAAA;QAC3D,OAAM;IACR,CAAC;IAED,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,MAAM,CAAA;IAC/B,MAAM,SAAS,GAAG,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QACjD,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE;QACpC,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;IAEhD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,YAAY,GAAG,GAAG,MAAM,IAAI,CAAA;QAClC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;YAC7D,SAAQ;QACV,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YACxD,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;QACb,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IAC9D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,KAAK,CAAA;IACpC,OAAO,oEAAoE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACxF,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe,EAAE,QAA8B,EAAE,SAAiB;IAC3F,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YAC1C,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,KAAuB,CAAA;YACvC,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAA;YACtD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACxC,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,KAAyB,CAAA;YAC3C,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;YAC1E,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,KAAoB,CAAA;YACtC,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpD,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;YAC5E,CAAC;iBAAM,CAAC;gBACN,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;YACtD,CAAC;YACD,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,UAAU,GAAG,KAA0B,CAAA;YAC7C,MAAM,MAAM,GAAyB,EAAE,CAAA;YACvC,iBAAiB,CAAC,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;YAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;YAC7C,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;oBAC1B,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE;qBACvD,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAoB,CAAA;YACjC,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;gBAC1C,CAAC,CAAC,IAAI,CAAC,KAAK;gBACZ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;YACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBACjC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;gBAC9D,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAA;YAC1D,CAAC,CAAC,CAAA;YACF,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,cAAc,CAAC,KAAwB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;YAC7D,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAoB,CAAA;YACjC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,MAAM,CAAA;YAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,QAAQ,EAAE,EAAE,CAAC,CAAA;YAC9D,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;YACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,IAAI,IAAI,KAAK;oBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YACvE,CAAC;YACD,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAA;YACjE,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAqB,CAAC,CAAC,CAAA;YACpD,SAAQ;QACV,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,sBAAsB,CAAC,aAAa,CAAE,KAAqB,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC3F,IAAI,IAAI,KAAK,EAAE;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YACvD,SAAQ;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,sBAAsB,CAAE,KAA0B,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACrF,IAAI,QAAQ,KAAK,EAAE;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACvE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;IACrE,MAAM,QAAQ,GAAyB,EAAE,CAAA;IACzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;YAAE,MAAK;QAChH,QAAQ,CAAC,GAAG,EAAE,CAAA;IAChB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -39,7 +39,7 @@ export function formatPromptObservabilityLine(snapshot, prompt) {
39
39
  const prefixPct = formatPct(prompt.stable_prefix_tokens, prompt.estimated_input_tokens);
40
40
  const providerPct = formatPct(cachedTurn, prompt.estimated_input_tokens);
41
41
  const parts = [
42
- `prompt ~${formatInt(prompt.estimated_input_tokens)} tok`,
42
+ `prompt ~${formatInt(prompt.estimated_input_tokens)} tok (tools ~${formatInt(prompt.tool_schema_tokens_estimate)})`,
43
43
  `roles s ${formatInt(prompt.role_tokens.system)} u ${formatInt(prompt.role_tokens.user)} a ${formatInt(prompt.role_tokens.assistant)} t ${formatInt(prompt.role_tokens.tool)}`,
44
44
  `Δroles s ${formatSignedInt(prompt.role_delta_tokens.system)} u ${formatSignedInt(prompt.role_delta_tokens.user)} a ${formatSignedInt(prompt.role_delta_tokens.assistant)} t ${formatSignedInt(prompt.role_delta_tokens.tool)}`,
45
45
  `stable ${formatInt(prompt.stable_prefix_tokens)} (${prefixPct})`,
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
+ export type MerlionProvider = 'openrouter' | 'openai' | 'custom';
1
2
  export interface MerlionConfig {
3
+ provider?: MerlionProvider;
2
4
  apiKey?: string;
3
5
  model?: string;
4
6
  baseURL?: string;
@@ -23,5 +25,10 @@ export declare function writeConfig(config: MerlionConfig): Promise<void>;
23
25
  * Each field is taken from the highest-priority source that supplies a
24
26
  * non-empty string value.
25
27
  */
26
- export declare function mergeConfig(overrides: Partial<MerlionConfig>, fileConfig: MerlionConfig, defaults: Required<MerlionConfig>): Required<MerlionConfig>;
28
+ export declare function mergeConfig(overrides: Partial<MerlionConfig>, fileConfig: MerlionConfig, defaults: {
29
+ provider: MerlionProvider;
30
+ apiKey: string;
31
+ model: string;
32
+ baseURL: string;
33
+ }): Required<MerlionConfig>;
27
34
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,kFAAkF;AAClF,wBAAgB,SAAS,IAAI,MAAM,CAIlC;AAED,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,CAgBzD;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,EACjC,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,QAAQ,CAAC,aAAa,CAAC,GAChC,QAAQ,CAAC,aAAa,CAAC,CAMzB"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEhE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,kFAAkF;AAClF,wBAAgB,SAAS,IAAI,MAAM,CAIlC;AAED,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,CAgBzD;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,EACjC,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE;IAAE,QAAQ,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtF,QAAQ,CAAC,aAAa,CAAC,CAOzB"}
@@ -55,6 +55,7 @@ export async function writeConfig(config) {
55
55
  */
56
56
  export function mergeConfig(overrides, fileConfig, defaults) {
57
57
  return {
58
+ provider: firstNonEmpty(overrides.provider, fileConfig.provider, defaults.provider),
58
59
  apiKey: firstNonEmpty(overrides.apiKey, fileConfig.apiKey, defaults.apiKey),
59
60
  model: firstNonEmpty(overrides.model, fileConfig.model, defaults.model),
60
61
  baseURL: firstNonEmpty(overrides.baseURL, fileConfig.baseURL, defaults.baseURL)
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
- import { type MerlionConfig } from './store.ts';
2
- export declare const DEFAULT_MODEL = "google/gemini-2.5-flash-preview";
1
+ import { type MerlionConfig, type MerlionProvider } from './store.ts';
2
+ export declare const DEFAULT_PROVIDER: MerlionProvider;
3
+ export declare const OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1";
4
+ export declare const OPENAI_BASE_URL = "https://api.openai.com/v1";
5
+ export declare const DEFAULT_MODEL = "qwen/qwen3-coder";
3
6
  export declare const DEFAULT_BASE_URL = "https://openrouter.ai/api/v1";
4
7
  export interface WizardIO {
5
8
  /** Prompt the user and return their answer (without the trailing newline). */
@@ -15,6 +18,9 @@ export interface WizardResult {
15
18
  ok: boolean;
16
19
  config: MerlionConfig;
17
20
  }
21
+ export declare function normalizeProvider(value: unknown): MerlionProvider | null;
22
+ export declare function defaultBaseURLForProvider(provider: MerlionProvider): string;
23
+ export declare function defaultModelForProvider(provider: MerlionProvider): string;
18
24
  /**
19
25
  * Runs the interactive first-run setup wizard.
20
26
  *
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/config/wizard.ts"],"names":[],"mappings":"AAGA,OAAO,EAA2B,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AAExE,eAAO,MAAM,aAAa,oCAAoC,CAAA;AAC9D,eAAO,MAAM,gBAAgB,iCAAiC,CAAA;AAE9D,MAAM,WAAW,QAAQ;IACvB,8EAA8E;IAC9E,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACzC,yDAAyD;IACzD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,IAAI,QAAQ,CA8B9C;AAED,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,aAAa,CAAA;CACtB;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,cAAc,GAAE,aAAkB,EAClC,EAAE,GAAE,QAAgC,GACnC,OAAO,CAAC,YAAY,CAAC,CAsCvB"}
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/config/wizard.ts"],"names":[],"mappings":"AAGA,OAAO,EAA2B,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9F,eAAO,MAAM,gBAAgB,EAAE,eAA8B,CAAA;AAC7D,eAAO,MAAM,mBAAmB,iCAAiC,CAAA;AACjE,eAAO,MAAM,eAAe,8BAA8B,CAAA;AAC1D,eAAO,MAAM,aAAa,qBAAqB,CAAA;AAC/C,eAAO,MAAM,gBAAgB,iCAAsB,CAAA;AAEnD,MAAM,WAAW,QAAQ;IACvB,8EAA8E;IAC9E,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACzC,yDAAyD;IACzD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,IAAI,QAAQ,CA8B9C;AAED,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,aAAa,CAAA;CACtB;AAgBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,GAAG,IAAI,CAGxE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAI3E;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAGzE;AAWD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,cAAc,GAAE,aAAkB,EAClC,EAAE,GAAE,QAAgC,GACnC,OAAO,CAAC,YAAY,CAAC,CAsFvB"}