neoctl 0.1.6 → 0.1.7

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 (47) hide show
  1. package/README.md +18 -9
  2. package/dist/agents/local-agent-task.js +2 -1
  3. package/dist/agents/local-agent-task.js.map +1 -1
  4. package/dist/core/query.js +34 -1
  5. package/dist/core/query.js.map +1 -1
  6. package/dist/core/smoke-core-loop.js +34 -3
  7. package/dist/core/smoke-core-loop.js.map +1 -1
  8. package/dist/index.d.ts +2 -0
  9. package/dist/index.js +2 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/model/config.d.ts +5 -2
  12. package/dist/model/config.js +21 -1
  13. package/dist/model/config.js.map +1 -1
  14. package/dist/model/env.js +10 -6
  15. package/dist/model/env.js.map +1 -1
  16. package/dist/model/kimi-adapter.d.ts +29 -0
  17. package/dist/model/kimi-adapter.js +108 -0
  18. package/dist/model/kimi-adapter.js.map +1 -0
  19. package/dist/model/model-metadata.json +51 -2
  20. package/dist/model/openai-chat-mapper.d.ts +1 -0
  21. package/dist/model/openai-chat-mapper.js +7 -3
  22. package/dist/model/openai-chat-mapper.js.map +1 -1
  23. package/dist/model/provider-factory.js +16 -0
  24. package/dist/model/provider-factory.js.map +1 -1
  25. package/dist/open-directory.d.ts +1 -0
  26. package/dist/open-directory.js +26 -0
  27. package/dist/open-directory.js.map +1 -0
  28. package/dist/paths.d.ts +7 -0
  29. package/dist/paths.js +12 -0
  30. package/dist/paths.js.map +1 -0
  31. package/dist/repl/commands.d.ts +2 -0
  32. package/dist/repl/commands.js +3 -0
  33. package/dist/repl/commands.js.map +1 -1
  34. package/dist/repl/index.js +168 -30
  35. package/dist/repl/index.js.map +1 -1
  36. package/dist/session/session-store.js +2 -2
  37. package/dist/session/session-store.js.map +1 -1
  38. package/dist/tips.d.ts +10 -0
  39. package/dist/tips.js +168 -0
  40. package/dist/tips.js.map +1 -0
  41. package/dist/web/html.d.ts +1 -0
  42. package/dist/web/html.js +697 -0
  43. package/dist/web/html.js.map +1 -0
  44. package/dist/web/index.d.ts +2 -0
  45. package/dist/web/index.js +1465 -0
  46. package/dist/web/index.js.map +1 -0
  47. package/package.json +4 -1
package/README.md CHANGED
@@ -33,7 +33,7 @@ npm run dev
33
33
  - Windows:`%APPDATA%\neo\.env`
34
34
  - macOS/Linux:`~/.config/neo/.env`
35
35
 
36
- 可以运行 `/login` 交互式填写并保存,也可以手动编辑。推荐格式是:`MODEL_PROVIDER` 只选择当前供应者;供应者专属的 key、base URL、model 分别写在 `OPENAI_*` / `DEEPSEEK_*` 下;跨供应者共用的运行参数保留 `MODEL_*`。
36
+ 可以运行 `/login` 交互式填写并保存,也可以手动编辑。推荐格式是:`MODEL_PROVIDER` 只选择当前供应者;供应者专属的 key、base URL、model 分别写在 `OPENAI_*` / `DEEPSEEK_*` / `KIMI_*` 下;跨供应者共用的运行参数保留 `MODEL_*`。
37
37
 
38
38
  ```env
39
39
  # Active provider
@@ -52,6 +52,14 @@ DEEPSEEK_BASE_URL=https://api.deepseek.com
52
52
  DEEPSEEK_MODEL=deepseek-chat
53
53
  DEEPSEEK_FALLBACK_MODEL=
54
54
 
55
+ # Kimi provider settings
56
+ KIMI_API_KEY=your-kimi-api-key
57
+ KIMI_BASE_URL=https://api.moonshot.cn/v1
58
+ KIMI_MODEL=kimi-k2.6
59
+ KIMI_FALLBACK_MODEL=
60
+ # 如果 key 来自国际站 platform.kimi.ai,请改为:
61
+ # KIMI_BASE_URL=https://api.moonshot.ai/v1
62
+
55
63
  # Shared model runtime settings
56
64
  MODEL_REASONING_EFFORT=high
57
65
  MODEL_REASONING_SUMMARY=auto
@@ -157,10 +165,11 @@ src/
157
165
 
158
166
  ## 模型层
159
167
 
160
- 模型访问通过 `ModelGateway` 抽象。当前内置 provider 包括 OpenAI 与 DeepSeek
168
+ 模型访问通过 `ModelGateway` 抽象。当前内置 provider 包括 OpenAI、DeepSeekKimi
161
169
 
162
170
  - `openai-adapter.ts`:端点选择、认证、超时、重试、Responses→Chat fallback。
163
171
  - `deepseek-adapter.ts`:DeepSeek OpenAI 格式 Chat Completions,默认 `https://api.deepseek.com/chat/completions`,支持 `reasoning_content` 到 thinking 事件的归一化。
172
+ - `kimi-adapter.ts`:Kimi/Moonshot OpenAI 兼容 Chat Completions,默认 `https://api.moonshot.cn/v1/chat/completions`,支持 `reasoning_content` 到 thinking 事件的归一化。
164
173
  - `openai-responses-mapper.ts`:Responses API 请求和流事件归一化。
165
174
  - `openai-chat-mapper.ts`:Chat Completions 请求和流事件归一化。
166
175
  - `http-transport.ts` / `sse-decoder.ts`:HTTP 请求与 SSE 流解析。
@@ -171,12 +180,12 @@ src/
171
180
 
172
181
  | 变量 | 说明 |
173
182
  | --- | --- |
174
- | `MODEL_PROVIDER` | `openai` 或 `deepseek` |
175
- | `OPENAI_API_KEY` / `DEEPSEEK_API_KEY` | 供应者专属 API Key;只读取当前 `MODEL_PROVIDER` 对应的一组变量 |
176
- | `OPENAI_BASE_URL` / `DEEPSEEK_BASE_URL` | 供应者专属服务地址;DeepSeek 默认 `https://api.deepseek.com` |
177
- | `OPENAI_MODEL` / `DEEPSEEK_MODEL` | 供应者专属默认模型;OpenAI 默认 `gpt-5.5`,DeepSeek 默认 `deepseek-chat` |
178
- | `OPENAI_FALLBACK_MODEL` / `DEEPSEEK_FALLBACK_MODEL` | 供应者专属 fallback model |
179
- | `OPENAI_ENDPOINT` | OpenAI 专用,`responses`、`chat` 或 `auto`;DeepSeek 固定使用 Chat Completions |
183
+ | `MODEL_PROVIDER` | `openai`、`deepseek` 或 `kimi` |
184
+ | `OPENAI_API_KEY` / `DEEPSEEK_API_KEY` / `KIMI_API_KEY` | 供应者专属 API Key;只读取当前 `MODEL_PROVIDER` 对应的一组变量;Kimi 也兼容 `MOONSHOT_API_KEY` |
185
+ | `OPENAI_BASE_URL` / `DEEPSEEK_BASE_URL` / `KIMI_BASE_URL` | 供应者专属服务地址;DeepSeek 默认 `https://api.deepseek.com`,Kimi 默认 `https://api.moonshot.cn/v1`;国际站 key 使用 `https://api.moonshot.ai/v1` |
186
+ | `OPENAI_MODEL` / `DEEPSEEK_MODEL` / `KIMI_MODEL` | 供应者专属默认模型;OpenAI 默认 `gpt-5.5`,DeepSeek 默认 `deepseek-chat`,Kimi 默认 `kimi-k2.6` |
187
+ | `OPENAI_FALLBACK_MODEL` / `DEEPSEEK_FALLBACK_MODEL` / `KIMI_FALLBACK_MODEL` | 供应者专属 fallback model |
188
+ | `OPENAI_ENDPOINT` | OpenAI 专用,`responses`、`chat` 或 `auto`;DeepSeek 与 Kimi 固定使用 Chat Completions |
180
189
  | `MODEL_REASONING_EFFORT` | 共享运行设置:`none`、`minimal`、`low`、`medium`、`high`、`xhigh`、`max` |
181
190
  | `MODEL_REASONING_SUMMARY` | `auto`、`concise`、`detailed` |
182
191
  | `MODEL_MAX_OUTPUT_TOKENS` | 默认最大输出 token,未设置时为 800 |
@@ -363,7 +372,7 @@ for await (const event of engine.sendUserText("Summarize this repository")) {
363
372
 
364
373
  ## 当前边界
365
374
 
366
- - 模型 provider 配置类型目前内置 OpenAI 与 DeepSeek provider。
375
+ - 模型 provider 配置类型目前内置 OpenAI、DeepSeekKimi provider。
367
376
  - `src/safety` 是 permission、sandbox、audit 的接口边界;默认 REPL 没有强制沙箱策略。
368
377
  - `src/skills` 已实现工具与 catalog,但默认 REPL 未装配 skill catalog。
369
378
  - `isolation=worktree/remote` 在 AgentTool schema 中保留为接口形态,当前本地实现主要通过 `cwd` 和独立消息上下文隔离。
@@ -1,5 +1,6 @@
1
1
  import { mkdirSync, writeFileSync } from "node:fs";
2
2
  import { resolve } from "node:path";
3
+ import { getNeoctlHome } from "../paths.js";
3
4
  export function createLocalAgentTask(input) {
4
5
  const now = new Date().toISOString();
5
6
  return {
@@ -58,6 +59,6 @@ export function renderLocalAgentTaskOutput(task) {
58
59
  ].filter((line) => line !== undefined).join("\n");
59
60
  }
60
61
  function defaultTaskOutputFile(taskId) {
61
- return resolve(process.cwd(), ".agent-tasks", `${taskId}.txt`);
62
+ return resolve(getNeoctlHome(), "agent-tasks", `${taskId}.txt`);
62
63
  }
63
64
  //# sourceMappingURL=local-agent-task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-agent-task.js","sourceRoot":"","sources":["../../src/agents/local-agent-task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-agent-task.js","sourceRoot":"","sources":["../../src/agents/local-agent-task.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { InMemoryAppState } from "../app/app-state.js";
2
2
  import { ModelDrivenCompactor } from "../context/compaction.js";
3
3
  import { DefaultContextManager } from "../context/context-manager.js";
4
4
  import { ModelAPIError } from "../model/errors.js";
5
+ import { supportsImageInput } from "../model/context-window.js";
5
6
  import { runTools } from "../tools/tool-orchestration.js";
6
7
  import { createTextMessage, createThinkingMessage } from "../types/messages.js";
7
8
  import { appendSystemContext, applyToolResultBudget, ensureToolResultPairing, getMessagesAfterCompactBoundary, prependUserContext, } from "./message-pipeline.js";
@@ -157,6 +158,7 @@ async function* callModelForTurn(state, context, messagesForQuery, dependencies,
157
158
  let previousResponseId = state.previousResponseId;
158
159
  let incompleteReason;
159
160
  let activeModel = state.currentModel ?? options.model;
161
+ const modelMessages = adaptMessagesForModelCapabilities(messagesForQuery, activeModel);
160
162
  yield { type: "state", phase: "compacting", detail: "messages prepared for model" };
161
163
  yield { type: "context.metrics", metrics: telemetry.metrics };
162
164
  yield { type: "state", phase: "calling_model", detail: activeModel ? `model stream opened (${activeModel})` : "model stream opened" };
@@ -164,7 +166,7 @@ async function* callModelForTurn(state, context, messagesForQuery, dependencies,
164
166
  for await (const event of dependencies.modelGateway.stream({
165
167
  model: activeModel,
166
168
  fallbackModel: state.fallbackModel ?? options.fallbackModel,
167
- messages: messagesForQuery,
169
+ messages: modelMessages,
168
170
  systemPrompt: telemetry.systemPrompt,
169
171
  tools: telemetry.toolDefinitions,
170
172
  stream: true,
@@ -229,6 +231,37 @@ async function* callModelForTurn(state, context, messagesForQuery, dependencies,
229
231
  appendSyntheticToolUseMessage(assistantMessages, toolUses);
230
232
  return { output: { assistantMessages, toolUses, previousResponseId, incompleteReason } };
231
233
  }
234
+ function adaptMessagesForModelCapabilities(messages, model) {
235
+ if (supportsImageInput(model) !== false)
236
+ return messages;
237
+ let changed = false;
238
+ const adapted = messages.map((message) => {
239
+ let messageChanged = false;
240
+ const blocks = message.blocks.map((block) => {
241
+ if (block.type !== "image")
242
+ return block;
243
+ changed = true;
244
+ messageChanged = true;
245
+ return {
246
+ type: "text",
247
+ text: formatUnsupportedImagePlaceholder(block),
248
+ };
249
+ });
250
+ return messageChanged
251
+ ? {
252
+ ...message,
253
+ blocks,
254
+ metadata: { ...message.metadata, imageInputDowngraded: true },
255
+ }
256
+ : message;
257
+ });
258
+ return changed ? adapted : messages;
259
+ }
260
+ function formatUnsupportedImagePlaceholder(block) {
261
+ const label = block.label?.trim();
262
+ const suffix = `[image ${block.mimeType} omitted: current model does not support image input]`;
263
+ return label ? `${label} ${suffix}` : suffix;
264
+ }
232
265
  async function* handleModelEvent(event, assistantMessages, toolUses, outputFilter, thinkingParts) {
233
266
  if (event.type === "assistant_delta") {
234
267
  const text = outputFilter.push(event.text);
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/core/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/core/query.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,9 @@ const smokePassthroughTool = {
20
20
  },
21
21
  };
22
22
  class FakeToolCallingGateway {
23
+ requests = [];
23
24
  async *stream(request) {
25
+ this.requests.push(request);
24
26
  const hasToolResult = request.messages.some((message) => message.blocks.some((block) => block.type === "tool_result"));
25
27
  if (!hasToolResult) {
26
28
  yield { type: "tool_use", toolUse: { id: "call_smoke_passthrough", name: "smoke_passthrough", input: { text: "pong" } } };
@@ -32,22 +34,51 @@ class FakeToolCallingGateway {
32
34
  yield { type: "response_completed", responseId: "resp_2", stopReason: "completed" };
33
35
  }
34
36
  }
37
+ class CapturingGateway {
38
+ requests = [];
39
+ async *stream(request) {
40
+ this.requests.push(request);
41
+ yield { type: "assistant_message", message: createTextMessage("assistant", "ok") };
42
+ yield { type: "response_completed", responseId: "capture_1", stopReason: "completed" };
43
+ }
44
+ }
35
45
  async function main() {
36
46
  const tools = new ToolRegistry();
37
47
  tools.register(smokePassthroughTool);
38
- const engine = new QueryEngine({ modelGateway: new FakeToolCallingGateway(), tools, maxTurns: 4 });
48
+ const gateway = new FakeToolCallingGateway();
49
+ const engine = new QueryEngine({ modelGateway: gateway, tools, maxTurns: 4 });
39
50
  const events = [];
40
51
  for await (const event of engine.sendUserText("run tool")) {
41
52
  events.push(event.type === "terminal" ? `${event.type}:${event.reason}` : event.type);
42
53
  }
43
54
  const snapshot = engine.snapshot();
44
55
  const sanitized = stripLeakedReasoningText("目录内容:\n- `package-lock.json`We need answer in Chinese likely. Final maybe mention.");
56
+ const imageGateway = new CapturingGateway();
57
+ const imageEngine = new QueryEngine({ model: "gpt-5.4", modelGateway: imageGateway, tools: new ToolRegistry(), maxTurns: 1 });
58
+ const imageBlocks = [
59
+ { type: "text", text: "look" },
60
+ { type: "image", mimeType: "image/png", data: "ZmFrZQ==", label: "[img#1]" },
61
+ ];
62
+ for await (const _event of imageEngine.sendUserText("look [img#1]", { blocks: imageBlocks })) {
63
+ // drain first turn so the image remains in history
64
+ }
65
+ imageEngine.setModel("deepseek-chat");
66
+ const downgradeEvents = [];
67
+ for await (const event of imageEngine.sendUserText("continue")) {
68
+ downgradeEvents.push(event.type === "terminal" ? `${event.type}:${event.reason}` : event.type);
69
+ }
70
+ const finalImageRequest = imageGateway.requests.at(-1);
71
+ const finalBlocks = finalImageRequest?.messages.flatMap((message) => message.blocks) ?? [];
72
+ const historyImageDowngraded = downgradeEvents.includes("terminal:completed") &&
73
+ !finalBlocks.some((block) => block.type === "image") &&
74
+ finalBlocks.some((block) => block.type === "text" && block.text.includes("[img#1]") && block.text.includes("does not support image input"));
45
75
  const ok = events.includes("tool.started") &&
46
76
  events.includes("tool.finished") &&
47
77
  events.includes("terminal:completed") &&
48
78
  sanitized === "目录内容:\n- `package-lock.json`" &&
49
- snapshot.messages >= 3;
50
- console.log(JSON.stringify({ ok, events, snapshot, sanitized }, null, 2));
79
+ snapshot.messages >= 3 &&
80
+ historyImageDowngraded;
81
+ console.log(JSON.stringify({ ok, events, snapshot, sanitized, downgradeEvents, historyImageDowngraded }, null, 2));
51
82
  if (!ok)
52
83
  process.exitCode = 1;
53
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"smoke-core-loop.js","sourceRoot":"","sources":["../../src/core/smoke-core-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smoke-core-loop.js","sourceRoot":"","sources":["../../src/core/smoke-core-loop.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -19,6 +19,8 @@ export * from "./model/context-window.js";
19
19
  export * from "./model/provider-factory.js";
20
20
  export * from "./model/openai-adapter.js";
21
21
  export * from "./model/openai-responses-adapter.js";
22
+ export * from "./model/deepseek-adapter.js";
23
+ export * from "./model/kimi-adapter.js";
22
24
  export * from "./model/provider-adapter.js";
23
25
  export * from "./model/env.js";
24
26
  export * from "./model/errors.js";
package/dist/index.js CHANGED
@@ -19,6 +19,8 @@ export * from "./model/context-window.js";
19
19
  export * from "./model/provider-factory.js";
20
20
  export * from "./model/openai-adapter.js";
21
21
  export * from "./model/openai-responses-adapter.js";
22
+ export * from "./model/deepseek-adapter.js";
23
+ export * from "./model/kimi-adapter.js";
22
24
  export * from "./model/provider-adapter.js";
23
25
  export * from "./model/env.js";
24
26
  export * from "./model/errors.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iCAAiC,CAAC;AAChD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qCAAqC,CAAC;AACpD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { ReasoningConfig } from "./model-gateway.js";
2
- export type ModelProviderName = "openai" | "deepseek";
2
+ export type ModelProviderName = "openai" | "deepseek" | "kimi";
3
3
  export type ReasoningSummary = NonNullable<ReasoningConfig["summary"]>;
4
4
  export interface BaseModelProviderConfig {
5
5
  provider: ModelProviderName;
@@ -23,6 +23,9 @@ export interface OpenAIProviderConfig extends BaseModelProviderConfig {
23
23
  export interface DeepSeekProviderConfig extends BaseModelProviderConfig {
24
24
  provider: "deepseek";
25
25
  }
26
- export type ModelProviderConfig = OpenAIProviderConfig | DeepSeekProviderConfig;
26
+ export interface KimiProviderConfig extends BaseModelProviderConfig {
27
+ provider: "kimi";
28
+ }
29
+ export type ModelProviderConfig = OpenAIProviderConfig | DeepSeekProviderConfig | KimiProviderConfig;
27
30
  export declare function readModelProviderConfig(env?: NodeJS.ProcessEnv): ModelProviderConfig | undefined;
28
31
  export declare function parseReasoning(effortValue: string | undefined, summaryValue?: string | undefined): ReasoningConfig | null | undefined;
@@ -1,5 +1,6 @@
1
1
  const DEFAULT_OPENAI_MODEL = "gpt-5.5";
2
2
  const DEFAULT_DEEPSEEK_MODEL = "deepseek-chat";
3
+ const DEFAULT_KIMI_MODEL = "kimi-k2.6";
3
4
  const DEFAULT_MAX_OUTPUT_TOKENS = 800;
4
5
  export function readModelProviderConfig(env = process.env) {
5
6
  const provider = parseProvider(env.MODEL_PROVIDER ?? "openai");
@@ -8,6 +9,8 @@ export function readModelProviderConfig(env = process.env) {
8
9
  return readOpenAIProviderConfig(env);
9
10
  case "deepseek":
10
11
  return readDeepSeekProviderConfig(env);
12
+ case "kimi":
13
+ return readKimiProviderConfig(env);
11
14
  }
12
15
  }
13
16
  export function parseReasoning(effortValue, summaryValue) {
@@ -58,6 +61,23 @@ function readDeepSeekProviderConfig(env) {
58
61
  defaultReasoning: parseReasoning(firstNonEmpty(env.MODEL_REASONING_EFFORT), firstNonEmpty(env.MODEL_REASONING_SUMMARY)),
59
62
  };
60
63
  }
64
+ function readKimiProviderConfig(env) {
65
+ const apiKey = firstNonEmpty(env.KIMI_API_KEY, env.MOONSHOT_API_KEY);
66
+ if (!apiKey)
67
+ return undefined;
68
+ return {
69
+ provider: "kimi",
70
+ apiKey,
71
+ baseUrl: firstNonEmpty(env.KIMI_BASE_URL, env.MOONSHOT_BASE_URL),
72
+ model: firstNonEmpty(env.KIMI_MODEL, env.MOONSHOT_MODEL) ?? DEFAULT_KIMI_MODEL,
73
+ fallbackModel: firstNonEmpty(env.KIMI_FALLBACK_MODEL, env.MOONSHOT_FALLBACK_MODEL),
74
+ timeoutMs: parseNumber(firstNonEmpty(env.MODEL_TIMEOUT_MS)),
75
+ streamIdleTimeoutMs: parseNumber(firstNonEmpty(env.MODEL_STREAM_IDLE_TIMEOUT_MS)),
76
+ maxRetries: parseNumber(firstNonEmpty(env.MODEL_MAX_RETRIES)),
77
+ defaultMaxOutputTokens: parseNumber(firstNonEmpty(env.MODEL_MAX_OUTPUT_TOKENS)) ?? DEFAULT_MAX_OUTPUT_TOKENS,
78
+ defaultReasoning: parseReasoning(firstNonEmpty(env.MODEL_REASONING_EFFORT), firstNonEmpty(env.MODEL_REASONING_SUMMARY)),
79
+ };
80
+ }
61
81
  function parseReasoningEffort(value) {
62
82
  if (value === "none" || value === "minimal" || value === "low" || value === "medium" || value === "high" || value === "xhigh" || value === "max")
63
83
  return value;
@@ -69,7 +89,7 @@ function parseReasoningSummary(value) {
69
89
  return undefined;
70
90
  }
71
91
  function parseProvider(value) {
72
- if (value === "openai" || value === "deepseek")
92
+ if (value === "openai" || value === "deepseek" || value === "kimi")
73
93
  return value;
74
94
  throw new Error(`Unsupported MODEL_PROVIDER: ${value}`);
75
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/model/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/model/config.ts"],"names":[],"mappings":"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"}
package/dist/model/env.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
2
- import { homedir } from "node:os";
3
2
  import { dirname, resolve } from "node:path";
3
+ import { getNeoctlHome } from "../paths.js";
4
4
  import { createModelGatewayFromProcessEnv } from "./provider-factory.js";
5
5
  import { parseReasoning } from "./config.js";
6
6
  const USER_DOT_ENV_TEMPLATE = `# Neo CLI model configuration
@@ -21,6 +21,12 @@ MODEL_PROVIDER=openai
21
21
  # DEEPSEEK_MODEL=deepseek-chat
22
22
  # DEEPSEEK_FALLBACK_MODEL=
23
23
 
24
+ # Kimi provider settings
25
+ # KIMI_API_KEY=your-kimi-api-key
26
+ # KIMI_BASE_URL=https://api.moonshot.cn/v1
27
+ # KIMI_MODEL=kimi-k2.6
28
+ # KIMI_FALLBACK_MODEL=
29
+
24
30
  # Shared model runtime settings
25
31
  # MODEL_REASONING_EFFORT=high
26
32
  # MODEL_REASONING_SUMMARY=auto
@@ -34,20 +40,18 @@ export function createModelGatewayFromEnv() {
34
40
  return createModelGatewayFromProcessEnv(process.env);
35
41
  }
36
42
  export function loadDefaultDotEnvFiles(options = {}) {
37
- loadDotEnvIfPresent(resolve(process.cwd(), ".env"), options);
38
43
  const userDotEnvPath = getUserDotEnvPath();
39
44
  const createdUserDotEnv = ensureUserDotEnvFile(userDotEnvPath);
40
- loadDotEnvIfPresent(userDotEnvPath, { ...options, override: true });
45
+ loadDotEnvIfPresent(userDotEnvPath, options);
41
46
  const explicitPath = process.env.NEO_ENV_FILE?.trim();
42
47
  if (explicitPath)
43
48
  loadDotEnvIfPresent(resolve(explicitPath), { ...options, override: true });
44
49
  return { userDotEnvPath, createdUserDotEnv };
45
50
  }
46
51
  export function getUserDotEnvPath() {
47
- const baseDir = process.env.APPDATA || resolve(homedir(), ".config");
48
- return resolve(baseDir, "neo", ".env");
52
+ return resolve(getNeoctlHome(), ".env");
49
53
  }
50
- export function loadDotEnvIfPresent(path = resolve(process.cwd(), ".env"), options = {}) {
54
+ export function loadDotEnvIfPresent(path = getUserDotEnvPath(), options = {}) {
51
55
  if (!existsSync(path))
52
56
  return;
53
57
  const content = readFileSync(path, "utf8");
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/model/env.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/model/env.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { CredentialProvider } from "./credentials.js";
2
+ import type { ModelGateway, ModelRequest, ModelStreamEvent, ReasoningConfig } from "./model-gateway.js";
3
+ import type { ProviderAdapter, ProviderCapabilities } from "./provider-adapter.js";
4
+ export interface KimiAdapterOptions {
5
+ apiKey?: string;
6
+ apiKeyEnvName?: string;
7
+ credentialProvider?: CredentialProvider;
8
+ baseUrl?: string;
9
+ model: string;
10
+ fallbackModel?: string;
11
+ timeoutMs?: number;
12
+ streamIdleTimeoutMs?: number;
13
+ maxRetries?: number;
14
+ defaultMaxOutputTokens?: number;
15
+ defaultReasoning?: ReasoningConfig | null;
16
+ }
17
+ export declare class KimiAdapter implements ProviderAdapter, ModelGateway {
18
+ private readonly options;
19
+ readonly name = "kimi";
20
+ readonly capabilities: ProviderCapabilities;
21
+ private readonly credentialProvider;
22
+ private readonly transport;
23
+ private readonly baseUrl;
24
+ constructor(options: KimiAdapterOptions);
25
+ stream(request: ModelRequest): AsyncIterable<ModelStreamEvent>;
26
+ private streamChat;
27
+ private assertRequestCapabilities;
28
+ private authHeaders;
29
+ }