neoctl 0.1.18 → 0.1.19
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.
- package/dist/agents/local-agent-task.js +1 -2
- package/dist/agents/local-agent-task.js.map +1 -1
- package/dist/agents/smoke-agents.js +4 -21
- package/dist/agents/smoke-agents.js.map +1 -1
- package/dist/context/prompts.js +0 -4
- package/dist/context/prompts.js.map +1 -1
- package/dist/core/query-engine.d.ts +1 -22
- package/dist/core/query-engine.js +12 -106
- package/dist/core/query-engine.js.map +1 -1
- package/dist/core/query.d.ts +1 -2
- package/dist/core/query.js +5 -59
- package/dist/core/query.js.map +1 -1
- package/dist/core/smoke-core-loop.js +6 -95
- package/dist/core/smoke-core-loop.js.map +1 -1
- package/dist/index.d.ts +1 -25
- package/dist/index.js +1 -25
- package/dist/index.js.map +1 -1
- package/dist/model/communication-logger.d.ts +1 -2
- package/dist/model/communication-logger.js +0 -3
- package/dist/model/communication-logger.js.map +1 -1
- package/dist/model/config.d.ts +4 -10
- package/dist/model/config.js +12 -61
- package/dist/model/config.js.map +1 -1
- package/dist/model/context-window.js +0 -1
- package/dist/model/context-window.js.map +1 -1
- package/dist/model/env.js +19 -35
- package/dist/model/env.js.map +1 -1
- package/dist/model/model-metadata.json +677 -726
- package/dist/model/openai-adapter.d.ts +1 -1
- package/dist/model/openai-chat-mapper.d.ts +1 -4
- package/dist/model/openai-chat-mapper.js +8 -30
- package/dist/model/openai-chat-mapper.js.map +1 -1
- package/dist/model/openai-mappers.d.ts +2 -5
- package/dist/model/openai-mappers.js +4 -17
- package/dist/model/openai-mappers.js.map +1 -1
- package/dist/model/openai-responses-mapper.d.ts +1 -1
- package/dist/model/openai-responses-mapper.js +1 -2
- package/dist/model/openai-responses-mapper.js.map +1 -1
- package/dist/model/provider-factory.js +0 -32
- package/dist/model/provider-factory.js.map +1 -1
- package/dist/model/smoke-openai.js +1 -1
- package/dist/model/smoke-openai.js.map +1 -1
- package/dist/model/smoke-responses-mapper.js +6 -6
- package/dist/model/smoke-responses-mapper.js.map +1 -1
- package/dist/repl/commands.d.ts +0 -15
- package/dist/repl/commands.js +0 -58
- package/dist/repl/commands.js.map +1 -1
- package/dist/repl/index.js +144 -974
- package/dist/repl/index.js.map +1 -1
- package/dist/repl/render.js +2 -0
- package/dist/repl/render.js.map +1 -1
- package/dist/repl/status-line.d.ts +1 -0
- package/dist/repl/status-line.js +34 -27
- package/dist/repl/status-line.js.map +1 -1
- package/dist/session/session-store.js +2 -2
- package/dist/session/session-store.js.map +1 -1
- package/dist/session/smoke-session.js +1 -22
- package/dist/session/smoke-session.js.map +1 -1
- package/dist/skills/skill-tool.d.ts +5 -85
- package/dist/skills/skill-tool.js +14 -173
- package/dist/skills/skill-tool.js.map +1 -1
- package/dist/skills/smoke-skills.js +5 -54
- package/dist/skills/smoke-skills.js.map +1 -1
- package/dist/tools/builtins/search-providers.d.ts +1 -15
- package/dist/tools/builtins/search-providers.js +1 -195
- package/dist/tools/builtins/search-providers.js.map +1 -1
- package/dist/tools/builtins/search-tool.js +2 -2
- package/dist/tools/builtins/search-tool.js.map +1 -1
- package/dist/tools/registry.d.ts +0 -1
- package/dist/tools/registry.js +0 -11
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/run-tool-use.js +1 -1
- package/dist/tools/run-tool-use.js.map +1 -1
- package/dist/tools/smoke-tool-system.js +9 -43
- package/dist/tools/smoke-tool-system.js.map +1 -1
- package/dist/tools/tool.d.ts +1 -9
- package/dist/tools/tool.js.map +1 -1
- package/package.json +1 -1
- package/scripts/build-standalone.mjs +139 -139
- package/dist/model/deepseek-adapter.d.ts +0 -29
- package/dist/model/deepseek-adapter.js +0 -108
- package/dist/model/deepseek-adapter.js.map +0 -1
- package/dist/model/kimi-adapter.d.ts +0 -29
- package/dist/model/kimi-adapter.js +0 -108
- package/dist/model/kimi-adapter.js.map +0 -1
- package/dist/model/smoke-deepseek-mapper.d.ts +0 -1
- package/dist/model/smoke-deepseek-mapper.js +0 -65
- package/dist/model/smoke-deepseek-mapper.js.map +0 -1
- package/dist/open-directory.d.ts +0 -1
- package/dist/open-directory.js +0 -26
- package/dist/open-directory.js.map +0 -1
- package/dist/paths.d.ts +0 -7
- package/dist/paths.js +0 -12
- package/dist/paths.js.map +0 -1
- package/dist/session/session-export.d.ts +0 -33
- package/dist/session/session-export.js +0 -351
- package/dist/session/session-export.js.map +0 -1
- package/dist/session/simple-session-runtime.d.ts +0 -74
- package/dist/session/simple-session-runtime.js +0 -171
- package/dist/session/simple-session-runtime.js.map +0 -1
- package/dist/skills/skill-filesystem.d.ts +0 -32
- package/dist/skills/skill-filesystem.js +0 -371
- package/dist/skills/skill-filesystem.js.map +0 -1
- package/dist/skills/skill-management-tools.d.ts +0 -36
- package/dist/skills/skill-management-tools.js +0 -188
- package/dist/skills/skill-management-tools.js.map +0 -1
- package/dist/tips.d.ts +0 -10
- package/dist/tips.js +0 -168
- package/dist/tips.js.map +0 -1
- package/dist/tools/builtins/image-generation-tool.d.ts +0 -96
- package/dist/tools/builtins/image-generation-tool.js +0 -471
- package/dist/tools/builtins/image-generation-tool.js.map +0 -1
- package/dist/ui/display-message.d.ts +0 -101
- package/dist/ui/display-message.js +0 -113
- package/dist/ui/display-message.js.map +0 -1
- package/dist/web/html.d.ts +0 -1
- package/dist/web/html.js +0 -858
- package/dist/web/html.js.map +0 -1
- package/dist/web/index.d.ts +0 -2
- package/dist/web/index.js +0 -1814
- package/dist/web/index.js.map +0 -1
package/dist/model/config.js
CHANGED
|
@@ -1,21 +1,13 @@
|
|
|
1
1
|
const DEFAULT_OPENAI_MODEL = "gpt-5.5";
|
|
2
|
-
const DEFAULT_DEEPSEEK_MODEL = "deepseek-chat";
|
|
3
|
-
const DEFAULT_KIMI_MODEL = "kimi-k2.6";
|
|
4
2
|
const DEFAULT_MAX_OUTPUT_TOKENS = 800;
|
|
5
3
|
export function readModelProviderConfig(env = process.env) {
|
|
6
|
-
const provider = parseProvider(env.MODEL_PROVIDER ?? "openai");
|
|
4
|
+
const provider = parseProvider(env.MODEL_PROVIDER ?? env.OPENAI_PROVIDER ?? "openai");
|
|
7
5
|
switch (provider) {
|
|
8
6
|
case "openai":
|
|
9
7
|
return readOpenAIProviderConfig(env);
|
|
10
|
-
case "deepseek":
|
|
11
|
-
return readDeepSeekProviderConfig(env);
|
|
12
|
-
case "kimi":
|
|
13
|
-
return readKimiProviderConfig(env);
|
|
14
8
|
}
|
|
15
9
|
}
|
|
16
10
|
export function parseReasoning(effortValue, summaryValue) {
|
|
17
|
-
if (effortValue?.trim() === "off")
|
|
18
|
-
return null;
|
|
19
11
|
const effort = parseReasoningEffort(effortValue);
|
|
20
12
|
const summary = parseReasoningSummary(summaryValue);
|
|
21
13
|
if (!effort && !summary)
|
|
@@ -26,58 +18,24 @@ export function parseReasoning(effortValue, summaryValue) {
|
|
|
26
18
|
};
|
|
27
19
|
}
|
|
28
20
|
function readOpenAIProviderConfig(env) {
|
|
29
|
-
const apiKey =
|
|
21
|
+
const apiKey = env.MODEL_API_KEY ?? env.OPENAI_API_KEY;
|
|
30
22
|
if (!apiKey)
|
|
31
23
|
return undefined;
|
|
32
|
-
const endpoint = parseOpenAIEndpoint(
|
|
24
|
+
const endpoint = parseOpenAIEndpoint(env.MODEL_ENDPOINT ?? env.OPENAI_ENDPOINT);
|
|
33
25
|
return {
|
|
34
26
|
provider: "openai",
|
|
35
27
|
apiKey,
|
|
36
|
-
baseUrl:
|
|
37
|
-
model:
|
|
38
|
-
fallbackModel:
|
|
39
|
-
timeoutMs: parseNumber(
|
|
40
|
-
streamIdleTimeoutMs: parseNumber(
|
|
41
|
-
maxRetries: parseNumber(
|
|
42
|
-
defaultMaxOutputTokens: parseNumber(
|
|
43
|
-
defaultReasoning: parseReasoning(
|
|
28
|
+
baseUrl: env.MODEL_BASE_URL ?? env.OPENAI_BASE_URL,
|
|
29
|
+
model: env.MODEL_ID ?? env.OPENAI_MODEL ?? DEFAULT_OPENAI_MODEL,
|
|
30
|
+
fallbackModel: env.MODEL_FALLBACK_ID ?? env.OPENAI_FALLBACK_MODEL,
|
|
31
|
+
timeoutMs: parseNumber(env.MODEL_TIMEOUT_MS ?? env.OPENAI_TIMEOUT_MS),
|
|
32
|
+
streamIdleTimeoutMs: parseNumber(env.MODEL_STREAM_IDLE_TIMEOUT_MS ?? env.OPENAI_STREAM_IDLE_TIMEOUT_MS),
|
|
33
|
+
maxRetries: parseNumber(env.MODEL_MAX_RETRIES ?? env.OPENAI_MAX_RETRIES),
|
|
34
|
+
defaultMaxOutputTokens: parseNumber(env.MODEL_MAX_OUTPUT_TOKENS ?? env.OPENAI_MAX_OUTPUT_TOKENS) ?? DEFAULT_MAX_OUTPUT_TOKENS,
|
|
35
|
+
defaultReasoning: parseReasoning(env.MODEL_REASONING_EFFORT ?? env.OPENAI_REASONING_EFFORT, env.MODEL_REASONING_SUMMARY ?? env.OPENAI_REASONING_SUMMARY),
|
|
44
36
|
openai: endpoint ? { endpoint } : undefined,
|
|
45
37
|
};
|
|
46
38
|
}
|
|
47
|
-
function readDeepSeekProviderConfig(env) {
|
|
48
|
-
const apiKey = firstNonEmpty(env.DEEPSEEK_API_KEY);
|
|
49
|
-
if (!apiKey)
|
|
50
|
-
return undefined;
|
|
51
|
-
return {
|
|
52
|
-
provider: "deepseek",
|
|
53
|
-
apiKey,
|
|
54
|
-
baseUrl: firstNonEmpty(env.DEEPSEEK_BASE_URL),
|
|
55
|
-
model: firstNonEmpty(env.DEEPSEEK_MODEL) ?? DEFAULT_DEEPSEEK_MODEL,
|
|
56
|
-
fallbackModel: firstNonEmpty(env.DEEPSEEK_FALLBACK_MODEL),
|
|
57
|
-
timeoutMs: parseNumber(firstNonEmpty(env.MODEL_TIMEOUT_MS)),
|
|
58
|
-
streamIdleTimeoutMs: parseNumber(firstNonEmpty(env.MODEL_STREAM_IDLE_TIMEOUT_MS)),
|
|
59
|
-
maxRetries: parseNumber(firstNonEmpty(env.MODEL_MAX_RETRIES)),
|
|
60
|
-
defaultMaxOutputTokens: parseNumber(firstNonEmpty(env.MODEL_MAX_OUTPUT_TOKENS)) ?? DEFAULT_MAX_OUTPUT_TOKENS,
|
|
61
|
-
defaultReasoning: parseReasoning(firstNonEmpty(env.MODEL_REASONING_EFFORT), firstNonEmpty(env.MODEL_REASONING_SUMMARY)),
|
|
62
|
-
};
|
|
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
|
-
}
|
|
81
39
|
function parseReasoningEffort(value) {
|
|
82
40
|
if (value === "none" || value === "minimal" || value === "low" || value === "medium" || value === "high" || value === "xhigh" || value === "max")
|
|
83
41
|
return value;
|
|
@@ -89,7 +47,7 @@ function parseReasoningSummary(value) {
|
|
|
89
47
|
return undefined;
|
|
90
48
|
}
|
|
91
49
|
function parseProvider(value) {
|
|
92
|
-
if (value === "openai"
|
|
50
|
+
if (value === "openai")
|
|
93
51
|
return value;
|
|
94
52
|
throw new Error(`Unsupported MODEL_PROVIDER: ${value}`);
|
|
95
53
|
}
|
|
@@ -104,11 +62,4 @@ function parseNumber(value) {
|
|
|
104
62
|
const parsed = Number(value);
|
|
105
63
|
return Number.isFinite(parsed) ? parsed : undefined;
|
|
106
64
|
}
|
|
107
|
-
function firstNonEmpty(...values) {
|
|
108
|
-
for (const value of values) {
|
|
109
|
-
if (value?.trim())
|
|
110
|
-
return value.trim();
|
|
111
|
-
}
|
|
112
|
-
return undefined;
|
|
113
|
-
}
|
|
114
65
|
//# sourceMappingURL=config.js.map
|
package/dist/model/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/model/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/model/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,7 +56,6 @@ function findModelCatalogFile() {
|
|
|
56
56
|
path.join(moduleDir, "model-metadata.json"),
|
|
57
57
|
path.join(process.cwd(), "dist", "model", "model-metadata.json"),
|
|
58
58
|
path.join(process.cwd(), "src", "model", "model-metadata.json"),
|
|
59
|
-
path.join(path.dirname(process.execPath), "dist", "model", "model-metadata.json"),
|
|
60
59
|
];
|
|
61
60
|
const found = candidates.find((candidate) => existsSync(candidate));
|
|
62
61
|
if (!found)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-window.js","sourceRoot":"","sources":["../../src/model/context-window.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"context-window.js","sourceRoot":"","sources":["../../src/model/context-window.ts"],"names":[],"mappings":"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"}
|
package/dist/model/env.js
CHANGED
|
@@ -1,57 +1,41 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
|
+
import { homedir } from "node:os";
|
|
2
3
|
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
|
-
const USER_DOT_ENV_TEMPLATE = `# Neo CLI model configuration
|
|
7
|
-
#
|
|
8
|
-
|
|
9
|
-
MODEL_PROVIDER=openai
|
|
10
|
-
|
|
11
|
-
#
|
|
12
|
-
#
|
|
13
|
-
#
|
|
14
|
-
|
|
15
|
-
#
|
|
16
|
-
#
|
|
17
|
-
|
|
18
|
-
#
|
|
19
|
-
# DEEPSEEK_API_KEY=your-deepseek-api-key
|
|
20
|
-
# DEEPSEEK_BASE_URL=https://api.deepseek.com
|
|
21
|
-
# DEEPSEEK_MODEL=deepseek-chat
|
|
22
|
-
# DEEPSEEK_FALLBACK_MODEL=
|
|
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
|
-
|
|
30
|
-
# Shared model runtime settings
|
|
31
|
-
# MODEL_REASONING_EFFORT=high
|
|
32
|
-
# MODEL_REASONING_SUMMARY=auto
|
|
33
|
-
# MODEL_MAX_OUTPUT_TOKENS=800
|
|
34
|
-
# MODEL_TIMEOUT_MS=120000
|
|
35
|
-
# MODEL_STREAM_IDLE_TIMEOUT_MS=120000
|
|
36
|
-
# MODEL_MAX_RETRIES=2
|
|
6
|
+
const USER_DOT_ENV_TEMPLATE = `# Neo CLI model configuration
|
|
7
|
+
# Uncomment and fill these values, then run: neo
|
|
8
|
+
|
|
9
|
+
# MODEL_PROVIDER=openai
|
|
10
|
+
# MODEL_API_KEY=your-api-key
|
|
11
|
+
# MODEL_BASE_URL=https://api.openai.com
|
|
12
|
+
# MODEL_ID=gpt-4.1
|
|
13
|
+
# MODEL_ENDPOINT=auto
|
|
14
|
+
|
|
15
|
+
# Optional
|
|
16
|
+
# MODEL_FALLBACK_ID=
|
|
17
|
+
# MODEL_REASONING_EFFORT=
|
|
18
|
+
# MODEL_MAX_OUTPUT_TOKENS=
|
|
37
19
|
`;
|
|
38
20
|
export function createModelGatewayFromEnv() {
|
|
39
21
|
loadDefaultDotEnvFiles({ override: true });
|
|
40
22
|
return createModelGatewayFromProcessEnv(process.env);
|
|
41
23
|
}
|
|
42
24
|
export function loadDefaultDotEnvFiles(options = {}) {
|
|
25
|
+
loadDotEnvIfPresent(resolve(process.cwd(), ".env"), options);
|
|
43
26
|
const userDotEnvPath = getUserDotEnvPath();
|
|
44
27
|
const createdUserDotEnv = ensureUserDotEnvFile(userDotEnvPath);
|
|
45
|
-
loadDotEnvIfPresent(userDotEnvPath, options);
|
|
28
|
+
loadDotEnvIfPresent(userDotEnvPath, { ...options, override: true });
|
|
46
29
|
const explicitPath = process.env.NEO_ENV_FILE?.trim();
|
|
47
30
|
if (explicitPath)
|
|
48
31
|
loadDotEnvIfPresent(resolve(explicitPath), { ...options, override: true });
|
|
49
32
|
return { userDotEnvPath, createdUserDotEnv };
|
|
50
33
|
}
|
|
51
34
|
export function getUserDotEnvPath() {
|
|
52
|
-
|
|
35
|
+
const baseDir = process.env.APPDATA || resolve(homedir(), ".config");
|
|
36
|
+
return resolve(baseDir, "neo", ".env");
|
|
53
37
|
}
|
|
54
|
-
export function loadDotEnvIfPresent(path =
|
|
38
|
+
export function loadDotEnvIfPresent(path = resolve(process.cwd(), ".env"), options = {}) {
|
|
55
39
|
if (!existsSync(path))
|
|
56
40
|
return;
|
|
57
41
|
const content = readFileSync(path, "utf8");
|
package/dist/model/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/model/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/model/env.ts"],"names":[],"mappings":"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"}
|