openhorse 0.2.8 → 0.2.10
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/README.md +2 -2
- package/README.zh-CN.md +10 -1
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +9 -16
- package/dist/cli.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +70 -26
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/types.d.ts +7 -28
- package/dist/commands/types.d.ts.map +1 -1
- package/dist/commands/types.js.map +1 -1
- package/dist/framework/prompt.d.ts.map +1 -1
- package/dist/framework/prompt.js +15 -2
- package/dist/framework/prompt.js.map +1 -1
- package/dist/framework/query.d.ts +2 -0
- package/dist/framework/query.d.ts.map +1 -1
- package/dist/framework/query.js +82 -4
- package/dist/framework/query.js.map +1 -1
- package/dist/framework/tool-scheduler.d.ts +3 -0
- package/dist/framework/tool-scheduler.d.ts.map +1 -1
- package/dist/framework/tool-scheduler.js +9 -0
- package/dist/framework/tool-scheduler.js.map +1 -1
- package/dist/ink-ui/App.d.ts +2 -2
- package/dist/ink-ui/App.d.ts.map +1 -1
- package/dist/ink-ui/components/PixelHorseBanner.d.ts +2 -2
- package/dist/ink-ui/components/PixelHorseBanner.d.ts.map +1 -1
- package/dist/ink-ui/components/RunningHorseIndicator.d.ts.map +1 -1
- package/dist/ink-ui/components/RunningHorseIndicator.js +2 -1
- package/dist/ink-ui/components/RunningHorseIndicator.js.map +1 -1
- package/dist/ink-ui/components/StatusLine.d.ts +2 -2
- package/dist/ink-ui/components/StatusLine.d.ts.map +1 -1
- package/dist/ink-ui/launch.d.ts +2 -2
- package/dist/ink-ui/launch.d.ts.map +1 -1
- package/dist/ink-ui/launch.js.map +1 -1
- package/dist/ink-ui/screens/ReplScreen.d.ts +2 -2
- package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
- package/dist/ink-ui/screens/ReplScreen.js +4 -2
- package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
- package/dist/print-ui/launch.d.ts +44 -2
- package/dist/print-ui/launch.d.ts.map +1 -1
- package/dist/print-ui/launch.js +12 -0
- package/dist/print-ui/launch.js.map +1 -1
- package/dist/runtime/agent-runtime-controller.d.ts +4 -1
- package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
- package/dist/runtime/agent-runtime-controller.js +34 -2
- package/dist/runtime/agent-runtime-controller.js.map +1 -1
- package/dist/runtime/agent-runtime-protocol.d.ts +7 -1
- package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
- package/dist/runtime/agent-runtime-protocol.js +12 -0
- package/dist/runtime/agent-runtime-protocol.js.map +1 -1
- package/dist/runtime/agent-status.d.ts +4 -0
- package/dist/runtime/agent-status.d.ts.map +1 -0
- package/dist/runtime/agent-status.js +15 -0
- package/dist/runtime/agent-status.js.map +1 -0
- package/dist/runtime/chat-controller.d.ts +4 -1
- package/dist/runtime/chat-controller.d.ts.map +1 -1
- package/dist/runtime/chat-controller.js +35 -3
- package/dist/runtime/chat-controller.js.map +1 -1
- package/dist/runtime/ui-events.d.ts +29 -2
- package/dist/runtime/ui-events.d.ts.map +1 -1
- package/dist/runtime/ui-events.js +34 -0
- package/dist/runtime/ui-events.js.map +1 -1
- package/dist/services/compact/auto-compact.d.ts +19 -0
- package/dist/services/compact/auto-compact.d.ts.map +1 -1
- package/dist/services/compact/auto-compact.js +55 -7
- package/dist/services/compact/auto-compact.js.map +1 -1
- package/dist/services/config-dir.d.ts +2 -0
- package/dist/services/config-dir.d.ts.map +1 -1
- package/dist/services/config-dir.js +5 -0
- package/dist/services/config-dir.js.map +1 -1
- package/dist/services/config.d.ts +9 -2
- package/dist/services/config.d.ts.map +1 -1
- package/dist/services/config.js +45 -11
- package/dist/services/config.js.map +1 -1
- package/dist/services/doctor.d.ts.map +1 -1
- package/dist/services/doctor.js +36 -4
- package/dist/services/doctor.js.map +1 -1
- package/dist/services/format.d.ts +2 -0
- package/dist/services/format.d.ts.map +1 -0
- package/dist/services/format.js +20 -0
- package/dist/services/format.js.map +1 -0
- package/dist/services/global-config.d.ts +10 -9
- package/dist/services/global-config.d.ts.map +1 -1
- package/dist/services/global-config.js +5 -20
- package/dist/services/global-config.js.map +1 -1
- package/dist/services/llm.d.ts +2 -0
- package/dist/services/llm.d.ts.map +1 -1
- package/dist/services/llm.js +57 -20
- package/dist/services/llm.js.map +1 -1
- package/dist/services/model-context.d.ts +10 -1
- package/dist/services/model-context.d.ts.map +1 -1
- package/dist/services/model-context.js +53 -14
- package/dist/services/model-context.js.map +1 -1
- package/dist/services/storage-maintenance.d.ts.map +1 -1
- package/dist/services/storage-maintenance.js +3 -9
- package/dist/services/storage-maintenance.js.map +1 -1
- package/dist/services/usage-state.d.ts +20 -0
- package/dist/services/usage-state.d.ts.map +1 -0
- package/dist/services/usage-state.js +128 -0
- package/dist/services/usage-state.js.map +1 -0
- package/dist/terminal-ui/launch.d.ts +44 -2
- package/dist/terminal-ui/launch.d.ts.map +1 -1
- package/dist/terminal-ui/launch.js +102 -36
- package/dist/terminal-ui/launch.js.map +1 -1
- package/dist/terminal-ui/raw-editor.d.ts +2 -0
- package/dist/terminal-ui/raw-editor.d.ts.map +1 -1
- package/dist/terminal-ui/raw-editor.js +30 -1
- package/dist/terminal-ui/raw-editor.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +259 -43
- package/dist/tools/index.js.map +1 -1
- package/dist/tui-core/input-parser.d.ts +4 -0
- package/dist/tui-core/input-parser.d.ts.map +1 -1
- package/dist/tui-core/input-parser.js +30 -0
- package/dist/tui-core/input-parser.js.map +1 -1
- package/dist/tui-ui/launch.d.ts +2 -2
- package/dist/tui-ui/launch.d.ts.map +1 -1
- package/dist/tui-ui/launch.js +2 -0
- package/dist/tui-ui/launch.js.map +1 -1
- package/dist/tui-ui/layout.d.ts.map +1 -1
- package/dist/tui-ui/layout.js +2 -13
- package/dist/tui-ui/layout.js.map +1 -1
- package/dist/tui-ui/runner.d.ts.map +1 -1
- package/dist/tui-ui/runner.js +6 -0
- package/dist/tui-ui/runner.js.map +1 -1
- package/dist/tui-ui/state.d.ts +13 -1
- package/dist/tui-ui/state.d.ts.map +1 -1
- package/dist/tui-ui/state.js +13 -0
- package/dist/tui-ui/state.js.map +1 -1
- package/dist/ui/command-panel.d.ts +1 -1
- package/dist/ui/command-panel.d.ts.map +1 -1
- package/dist/ui/command-panel.js +37 -34
- package/dist/ui/command-panel.js.map +1 -1
- package/dist/ui/file-completion.d.ts +1 -1
- package/dist/ui/file-completion.d.ts.map +1 -1
- package/dist/ui/file-completion.js +4 -4
- package/dist/ui/file-completion.js.map +1 -1
- package/dist/ui/shared/command-palette.d.ts +3 -0
- package/dist/ui/shared/command-palette.d.ts.map +1 -0
- package/dist/ui/shared/command-palette.js +54 -0
- package/dist/ui/shared/command-palette.js.map +1 -0
- package/dist/ui/shared/command-suggestions.d.ts +19 -0
- package/dist/ui/shared/command-suggestions.d.ts.map +1 -0
- package/dist/ui/shared/command-suggestions.js +67 -0
- package/dist/ui/shared/command-suggestions.js.map +1 -0
- package/dist/ui/shared/input-frame.d.ts +19 -0
- package/dist/ui/shared/input-frame.d.ts.map +1 -0
- package/dist/ui/shared/input-frame.js +74 -0
- package/dist/ui/shared/input-frame.js.map +1 -0
- package/dist/ui/shared/text.d.ts +5 -0
- package/dist/ui/shared/text.d.ts.map +1 -0
- package/dist/ui/shared/text.js +55 -0
- package/dist/ui/shared/text.js.map +1 -0
- package/dist/ui/shared/types.d.ts +27 -0
- package/dist/ui/shared/types.d.ts.map +1 -0
- package/dist/ui/shared/types.js +3 -0
- package/dist/ui/shared/types.js.map +1 -0
- package/dist/ui/user-input.js +2 -2
- package/dist/ui/user-input.js.map +1 -1
- package/dist/ui-v2/components/command-palette.d.ts +1 -5
- package/dist/ui-v2/components/command-palette.d.ts.map +1 -1
- package/dist/ui-v2/components/command-palette.js +15 -54
- package/dist/ui-v2/components/command-palette.js.map +1 -1
- package/dist/ui-v2/components/shell.d.ts +1 -14
- package/dist/ui-v2/components/shell.d.ts.map +1 -1
- package/dist/ui-v2/components/shell.js +4 -55
- package/dist/ui-v2/components/shell.js.map +1 -1
- package/dist/ui-v2/runtime/text.d.ts +1 -7
- package/dist/ui-v2/runtime/text.d.ts.map +1 -1
- package/dist/ui-v2/runtime/text.js +15 -55
- package/dist/ui-v2/runtime/text.js.map +1 -1
- package/dist/ui-v2/state/sessions.d.ts +1 -1
- package/dist/ui-v2/state/sessions.d.ts.map +1 -1
- package/dist/ui-v2/state/sessions.js +5 -18
- package/dist/ui-v2/state/sessions.js.map +1 -1
- package/dist/ui-v2/state/suggestions.d.ts +1 -21
- package/dist/ui-v2/state/suggestions.d.ts.map +1 -1
- package/dist/ui-v2/state/suggestions.js +15 -67
- package/dist/ui-v2/state/suggestions.js.map +1 -1
- package/dist/ui-v2/types.d.ts +1 -32
- package/dist/ui-v2/types.d.ts.map +1 -1
- package/dist/ui-v2/types.js +15 -6
- package/dist/ui-v2/types.js.map +1 -1
- package/package.json +4 -1
package/dist/services/config.js
CHANGED
|
@@ -11,15 +11,23 @@
|
|
|
11
11
|
* 4. Agent 内部默认值
|
|
12
12
|
*
|
|
13
13
|
* UI renderer is intentionally not read from openhorse.json or env. The stable
|
|
14
|
-
* native terminal UI is the default; --ui tui
|
|
15
|
-
* available for explicit testing while
|
|
14
|
+
* native terminal UI is the default; --ui tui and --ui ink keep beta renderer
|
|
15
|
+
* experiments available for explicit testing while they mature.
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.SUPPORTED_UI_RENDERERS = exports.BETA_UI_RENDERERS = exports.STABLE_UI_RENDERER = void 0;
|
|
19
|
+
exports.resolveUIRenderer = resolveUIRenderer;
|
|
20
|
+
exports.isSupportedUIRenderer = isSupportedUIRenderer;
|
|
21
|
+
exports.isInteractiveUIRenderer = isInteractiveUIRenderer;
|
|
22
|
+
exports.isBetaUIRenderer = isBetaUIRenderer;
|
|
18
23
|
exports.loadConfig = loadConfig;
|
|
19
24
|
exports.isConfigured = isConfigured;
|
|
20
25
|
exports.getConfigErrors = getConfigErrors;
|
|
21
26
|
exports.getConfigSummary = getConfigSummary;
|
|
22
27
|
const global_config_1 = require("./global-config");
|
|
28
|
+
exports.STABLE_UI_RENDERER = 'terminal';
|
|
29
|
+
exports.BETA_UI_RENDERERS = ['tui', 'ink'];
|
|
30
|
+
exports.SUPPORTED_UI_RENDERERS = [exports.STABLE_UI_RENDERER, ...exports.BETA_UI_RENDERERS];
|
|
23
31
|
// ============================================================================
|
|
24
32
|
// Agent 内部默认值(用户无需关心)
|
|
25
33
|
// ============================================================================
|
|
@@ -43,12 +51,19 @@ function normalizeToolConfirmationPolicy(value) {
|
|
|
43
51
|
? value
|
|
44
52
|
: undefined;
|
|
45
53
|
}
|
|
46
|
-
function
|
|
54
|
+
function resolveUIRenderer(value) {
|
|
47
55
|
if (value === 'stable')
|
|
48
56
|
return 'terminal';
|
|
49
|
-
return value
|
|
50
|
-
|
|
51
|
-
|
|
57
|
+
return isSupportedUIRenderer(value) ? value : undefined;
|
|
58
|
+
}
|
|
59
|
+
function isSupportedUIRenderer(value) {
|
|
60
|
+
return typeof value === 'string' && exports.SUPPORTED_UI_RENDERERS.includes(value);
|
|
61
|
+
}
|
|
62
|
+
function isInteractiveUIRenderer(value) {
|
|
63
|
+
return isSupportedUIRenderer(value);
|
|
64
|
+
}
|
|
65
|
+
function isBetaUIRenderer(value) {
|
|
66
|
+
return typeof value === 'string' && exports.BETA_UI_RENDERERS.includes(value);
|
|
52
67
|
}
|
|
53
68
|
function normalizeUIConfirmationMode(value) {
|
|
54
69
|
return value === 'config' || value === 'interactive'
|
|
@@ -61,6 +76,12 @@ function parsePositiveInt(value) {
|
|
|
61
76
|
const parsed = Number.parseInt(value, 10);
|
|
62
77
|
return Number.isFinite(parsed) && parsed > 0 ? parsed : undefined;
|
|
63
78
|
}
|
|
79
|
+
function toNonEmptyString(value) {
|
|
80
|
+
if (typeof value !== 'string')
|
|
81
|
+
return undefined;
|
|
82
|
+
const trimmed = value.trim();
|
|
83
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
84
|
+
}
|
|
64
85
|
function loadWebSearchConfig(globalConfig, overrides) {
|
|
65
86
|
const merged = {
|
|
66
87
|
...globalConfig.webSearch,
|
|
@@ -96,7 +117,7 @@ function loadWebSearchConfig(globalConfig, overrides) {
|
|
|
96
117
|
function loadUIConfig(globalConfig, overrides) {
|
|
97
118
|
const envConfirmations = process.env.OPENHORSE_UI_CONFIRMATIONS;
|
|
98
119
|
return {
|
|
99
|
-
renderer:
|
|
120
|
+
renderer: resolveUIRenderer(overrides.ui?.renderer)
|
|
100
121
|
?? INTERNAL_DEFAULTS.ui.renderer,
|
|
101
122
|
confirmations: normalizeUIConfirmationMode(overrides.ui?.confirmations)
|
|
102
123
|
?? normalizeUIConfirmationMode(globalConfig.ui?.confirmations)
|
|
@@ -115,10 +136,23 @@ function loadConfig(overrides = {}) {
|
|
|
115
136
|
const globalConfig = (0, global_config_1.loadGlobalConfig)();
|
|
116
137
|
const config = {
|
|
117
138
|
// 用户核心配置
|
|
118
|
-
apiKey: overrides.apiKey
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
139
|
+
apiKey: toNonEmptyString(overrides.apiKey)
|
|
140
|
+
?? globalConfig.apiKey
|
|
141
|
+
?? toNonEmptyString(process.env.OPENHORSE_API_KEY)
|
|
142
|
+
?? '',
|
|
143
|
+
apiBaseUrl: toNonEmptyString(overrides.apiBaseUrl)
|
|
144
|
+
?? globalConfig.apiBaseUrl
|
|
145
|
+
?? toNonEmptyString(process.env.OPENHORSE_API_BASE_URL)
|
|
146
|
+
?? toNonEmptyString(process.env.OPENHORSE_BASE_URL)
|
|
147
|
+
?? undefined,
|
|
148
|
+
model: toNonEmptyString(overrides.model)
|
|
149
|
+
?? toNonEmptyString(globalConfig.defaultModel)
|
|
150
|
+
?? toNonEmptyString(process.env.OPENHORSE_MODEL)
|
|
151
|
+
?? 'gpt-4o',
|
|
152
|
+
fallbackModel: toNonEmptyString(overrides.fallbackModel)
|
|
153
|
+
?? toNonEmptyString(globalConfig.fallbackModel)
|
|
154
|
+
?? toNonEmptyString(process.env.OPENHORSE_FALLBACK_MODEL)
|
|
155
|
+
?? undefined,
|
|
122
156
|
toolConfirmation: normalizeToolConfirmationPolicy(overrides.toolConfirmation)
|
|
123
157
|
?? normalizeToolConfirmationPolicy(globalConfig.toolConfirmation)
|
|
124
158
|
?? normalizeToolConfirmationPolicy(process.env.OPENHORSE_TOOL_CONFIRMATION)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/services/config.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/services/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/services/doctor.ts"],"names":[],"mappings":"AAWA,OAAO,
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/services/doctor.ts"],"names":[],"mappings":"AAWA,OAAO,EAAkC,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAKnF,OAAO,EAA2C,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE9F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAKhD,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;CACvC;AA4RD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY,CAgEpE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAE/D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CA6B/D"}
|
package/dist/services/doctor.js
CHANGED
|
@@ -14,6 +14,8 @@ const prompt_context_1 = require("./prompt-context");
|
|
|
14
14
|
const session_storage_1 = require("./session-storage");
|
|
15
15
|
const skills_1 = require("../skills");
|
|
16
16
|
const warn_dedup_1 = require("../core/warn-dedup");
|
|
17
|
+
const auto_compact_1 = require("./compact/auto-compact");
|
|
18
|
+
const model_context_1 = require("./model-context");
|
|
17
19
|
function countStatuses(checks) {
|
|
18
20
|
return checks.reduce((totals, check) => {
|
|
19
21
|
totals[check.status] += 1;
|
|
@@ -57,6 +59,36 @@ function summarizeMcpStatus() {
|
|
|
57
59
|
detail,
|
|
58
60
|
};
|
|
59
61
|
}
|
|
62
|
+
function formatTokenCount(tokens) {
|
|
63
|
+
if (tokens >= 1000000)
|
|
64
|
+
return `${(tokens / 1000000).toFixed(1)}M`;
|
|
65
|
+
if (tokens >= 1000)
|
|
66
|
+
return `${Math.round(tokens / 1000)}K`;
|
|
67
|
+
return String(tokens);
|
|
68
|
+
}
|
|
69
|
+
function summarizeAutoCompact(ctx) {
|
|
70
|
+
const modelId = ctx.llm?.getModel() ?? ctx.config.model;
|
|
71
|
+
const modelContext = (0, model_context_1.resolveModelContext)(modelId);
|
|
72
|
+
const stats = (0, auto_compact_1.getAutoCompact)({ modelId }).getStats();
|
|
73
|
+
const sourceText = modelContext.source === 'fuzzy'
|
|
74
|
+
? `${modelContext.source}:${modelContext.matchedId}`
|
|
75
|
+
: modelContext.source;
|
|
76
|
+
return {
|
|
77
|
+
id: 'auto-compact',
|
|
78
|
+
status: modelContext.source === 'default' ? 'warn' : 'ok',
|
|
79
|
+
label: 'Auto Compact',
|
|
80
|
+
summary: `${stats.enabled ? 'enabled' : 'disabled'}, ${formatTokenCount(modelContext.contextWindow)} context, predict ${Math.round(stats.predictiveCompactThreshold * 100)}%, hard ${Math.round(stats.threshold * 100)}%`,
|
|
81
|
+
detail: [
|
|
82
|
+
`model=${modelId}`,
|
|
83
|
+
`source=${sourceText}`,
|
|
84
|
+
`lastTokenCount=${stats.lastTokenCount}`,
|
|
85
|
+
`ctxPercent=${stats.ctxPercent}%`,
|
|
86
|
+
`preCompactArmed=${stats.preCompactArmed}`,
|
|
87
|
+
`compactCount=${stats.compactCount}`,
|
|
88
|
+
`lastCompactMode=${stats.lastCompactMode ?? 'none'}`,
|
|
89
|
+
].join('\n'),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
60
92
|
function summarizeSkills() {
|
|
61
93
|
try {
|
|
62
94
|
const registry = (0, skills_1.getSkillsRegistry)();
|
|
@@ -258,7 +290,6 @@ function collectDoctorReport(ctx) {
|
|
|
258
290
|
const tools = snapshot.tools.length > 0 ? snapshot.tools : (0, tools_1.getRuntimeTools)();
|
|
259
291
|
const staticTools = tools.filter(tool => !tool.name.startsWith('mcp__')).length;
|
|
260
292
|
const mcpTools = tools.length - staticTools;
|
|
261
|
-
const terminalToolConfirmations = ctx.config.ui?.renderer === 'terminal';
|
|
262
293
|
const checks = [
|
|
263
294
|
{
|
|
264
295
|
id: 'config',
|
|
@@ -275,13 +306,14 @@ function collectDoctorReport(ctx) {
|
|
|
275
306
|
label: 'LLM',
|
|
276
307
|
summary: ctx.llm ? `Initialized ${ctx.llm.getModel()}` : 'LLM service is not initialized',
|
|
277
308
|
},
|
|
309
|
+
summarizeAutoCompact(ctx),
|
|
278
310
|
{
|
|
279
311
|
id: 'permissions',
|
|
280
|
-
status:
|
|
312
|
+
status: 'ok',
|
|
281
313
|
label: 'Permissions',
|
|
282
314
|
summary: `toolConfirmation=${ctx.config.toolConfirmation}, ui=${ctx.config.ui?.renderer}/${ctx.config.ui?.confirmations}`,
|
|
283
|
-
detail: ctx.config.toolConfirmation === 'ask'
|
|
284
|
-
?
|
|
315
|
+
detail: ctx.config.toolConfirmation === 'ask'
|
|
316
|
+
? `Interactive tool confirmation is routed through the shared runtime permission protocol.${(0, config_1.isBetaUIRenderer)(ctx.config.ui?.renderer) ? ' This renderer is beta; terminal remains the primary product UI.' : ''}`
|
|
285
317
|
: undefined,
|
|
286
318
|
},
|
|
287
319
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/services/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/services/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/services/format.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQjD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatBytes = formatBytes;
|
|
4
|
+
function formatBytes(bytes) {
|
|
5
|
+
if (!Number.isFinite(bytes) || bytes <= 0)
|
|
6
|
+
return '0 B';
|
|
7
|
+
if (bytes < 1024)
|
|
8
|
+
return `${bytes} B`;
|
|
9
|
+
const kb = bytes / 1024;
|
|
10
|
+
if (kb < 1024)
|
|
11
|
+
return `${formatNumber(kb)} KB`;
|
|
12
|
+
const mb = kb / 1024;
|
|
13
|
+
if (mb < 1024)
|
|
14
|
+
return `${formatNumber(mb)} MB`;
|
|
15
|
+
return `${formatNumber(mb / 1024)} GB`;
|
|
16
|
+
}
|
|
17
|
+
function formatNumber(value) {
|
|
18
|
+
return value >= 10 ? value.toFixed(0) : value.toFixed(1);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/services/format.ts"],"names":[],"mappings":";;AAAA,kCAQC;AARD,SAAgB,WAAW,CAAC,KAAa;IACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC;IAC/C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC;IAC/C,OAAO,GAAG,YAAY,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;AACzC,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -18,11 +18,11 @@ export interface ProjectConfig {
|
|
|
18
18
|
}
|
|
19
19
|
/** How to handle tool permission checks that request interactive confirmation. */
|
|
20
20
|
export type ToolConfirmationPolicy = 'ask' | 'allow' | 'deny';
|
|
21
|
-
/**
|
|
22
|
-
export type UIRenderer = 'terminal' | 'tui' | 'ink'
|
|
21
|
+
/** Runtime-only UI renderer selection. Terminal is stable; Ink/TUI are beta. */
|
|
22
|
+
export type UIRenderer = 'terminal' | 'tui' | 'ink';
|
|
23
23
|
/** How UI permission prompts should be handled. */
|
|
24
24
|
export type UIConfirmationMode = 'config' | 'interactive';
|
|
25
|
-
/**
|
|
25
|
+
/** UI configuration that is safe to persist globally. */
|
|
26
26
|
export interface UIConfig {
|
|
27
27
|
/** Runtime-only renderer override. This is ignored in openhorse.json. */
|
|
28
28
|
renderer?: UIRenderer;
|
|
@@ -69,13 +69,15 @@ export interface GlobalConfig {
|
|
|
69
69
|
webSearch?: WebSearchMcpConfig;
|
|
70
70
|
/** Terminal UI configuration. */
|
|
71
71
|
ui?: UIConfig;
|
|
72
|
-
totalSessions: number;
|
|
73
|
-
totalTokens: number;
|
|
74
|
-
totalCost: number;
|
|
75
72
|
userId?: string;
|
|
76
73
|
firstStartTime?: string;
|
|
77
74
|
projects?: Record<string, ProjectConfig>;
|
|
78
75
|
}
|
|
76
|
+
interface LegacyUsageFields {
|
|
77
|
+
totalSessions?: unknown;
|
|
78
|
+
totalTokens?: unknown;
|
|
79
|
+
totalCost?: unknown;
|
|
80
|
+
}
|
|
79
81
|
/**
|
|
80
82
|
* 加载全局配置
|
|
81
83
|
* 如果文件不存在,返回默认配置
|
|
@@ -84,7 +86,7 @@ export declare function loadGlobalConfig(): GlobalConfig;
|
|
|
84
86
|
/**
|
|
85
87
|
* 保存全局配置
|
|
86
88
|
*/
|
|
87
|
-
export declare function saveGlobalConfig(config: GlobalConfig): void;
|
|
89
|
+
export declare function saveGlobalConfig(config: GlobalConfig & LegacyUsageFields): void;
|
|
88
90
|
/**
|
|
89
91
|
* 更新全局配置(部分更新)
|
|
90
92
|
*/
|
|
@@ -93,8 +95,7 @@ export declare function getProjectConfig(projectPath: string): ProjectConfig;
|
|
|
93
95
|
export declare function saveProjectConfig(projectPath: string, projectConfig: ProjectConfig): void;
|
|
94
96
|
export declare function getOrCreateUserId(): string;
|
|
95
97
|
export declare function recordFirstStartTime(): void;
|
|
96
|
-
export
|
|
97
|
-
export declare function updateTokenStats(tokens: number, cost: number): void;
|
|
98
|
+
export { incrementSessionCount, updateTokenStats } from './usage-state';
|
|
98
99
|
export interface InputHistoryEntry {
|
|
99
100
|
content: string;
|
|
100
101
|
timestamp: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/services/global-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAWH,YAAY;AACZ,MAAM,WAAW,aAAa;IAC5B,cAAc;IACd,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,kFAAkF;AAClF,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAE9D,
|
|
1
|
+
{"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/services/global-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* 支持环境变量覆盖配置值。
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.updateTokenStats = exports.incrementSessionCount = void 0;
|
|
10
11
|
exports.loadGlobalConfig = loadGlobalConfig;
|
|
11
12
|
exports.saveGlobalConfig = saveGlobalConfig;
|
|
12
13
|
exports.updateGlobalConfig = updateGlobalConfig;
|
|
@@ -14,8 +15,6 @@ exports.getProjectConfig = getProjectConfig;
|
|
|
14
15
|
exports.saveProjectConfig = saveProjectConfig;
|
|
15
16
|
exports.getOrCreateUserId = getOrCreateUserId;
|
|
16
17
|
exports.recordFirstStartTime = recordFirstStartTime;
|
|
17
|
-
exports.incrementSessionCount = incrementSessionCount;
|
|
18
|
-
exports.updateTokenStats = updateTokenStats;
|
|
19
18
|
exports.getInputHistory = getInputHistory;
|
|
20
19
|
exports.addToInputHistory = addToInputHistory;
|
|
21
20
|
exports.searchInputHistory = searchInputHistory;
|
|
@@ -29,12 +28,9 @@ const config_dir_1 = require("./config-dir");
|
|
|
29
28
|
const DEFAULT_CONFIG = {
|
|
30
29
|
defaultModel: 'gpt-4o',
|
|
31
30
|
toolConfirmation: 'allow',
|
|
32
|
-
totalSessions: 0,
|
|
33
|
-
totalTokens: 0,
|
|
34
|
-
totalCost: 0,
|
|
35
31
|
};
|
|
36
32
|
function sanitizeGlobalConfig(config) {
|
|
37
|
-
const { ui, ...rest } = config;
|
|
33
|
+
const { ui, totalSessions: _totalSessions, totalTokens: _totalTokens, totalCost: _totalCost, ...rest } = config;
|
|
38
34
|
const sanitized = { ...rest };
|
|
39
35
|
// UI renderer is a runtime choice, not persisted global configuration.
|
|
40
36
|
if (ui?.confirmations && ui.confirmations !== 'config') {
|
|
@@ -114,20 +110,9 @@ function recordFirstStartTime() {
|
|
|
114
110
|
updateGlobalConfig({ firstStartTime: new Date().toISOString() });
|
|
115
111
|
}
|
|
116
112
|
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
function incrementSessionCount() {
|
|
121
|
-
const config = loadGlobalConfig();
|
|
122
|
-
updateGlobalConfig({ totalSessions: config.totalSessions + 1 });
|
|
123
|
-
}
|
|
124
|
-
function updateTokenStats(tokens, cost) {
|
|
125
|
-
const config = loadGlobalConfig();
|
|
126
|
-
updateGlobalConfig({
|
|
127
|
-
totalTokens: config.totalTokens + tokens,
|
|
128
|
-
totalCost: config.totalCost + cost,
|
|
129
|
-
});
|
|
130
|
-
}
|
|
113
|
+
var usage_state_1 = require("./usage-state");
|
|
114
|
+
Object.defineProperty(exports, "incrementSessionCount", { enumerable: true, get: function () { return usage_state_1.incrementSessionCount; } });
|
|
115
|
+
Object.defineProperty(exports, "updateTokenStats", { enumerable: true, get: function () { return usage_state_1.updateTokenStats; } });
|
|
131
116
|
// ============================================================================
|
|
132
117
|
// 输入历史
|
|
133
118
|
// ============================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/services/global-config.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG
|
|
1
|
+
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/services/global-config.ts"],"names":[],"mappings":"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"}
|
package/dist/services/llm.d.ts
CHANGED
|
@@ -27,6 +27,8 @@ export interface RetryConfig {
|
|
|
27
27
|
baseDelayMs: number;
|
|
28
28
|
/** 最大延迟 ms */
|
|
29
29
|
maxDelayMs?: number;
|
|
30
|
+
/** Abort retries and retry backoff when the current turn is interrupted */
|
|
31
|
+
abortSignal?: AbortSignal;
|
|
30
32
|
/** 重试回调 */
|
|
31
33
|
onRetry?: (attempt: number, error: Error, delayMs: number) => void;
|
|
32
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../src/services/llm.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../src/services/llm.ts"],"names":[],"mappings":"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"}
|
package/dist/services/llm.js
CHANGED
|
@@ -44,7 +44,11 @@ function isRetryableError(error) {
|
|
|
44
44
|
}
|
|
45
45
|
if (error instanceof Error) {
|
|
46
46
|
const msg = error.message.toLowerCase();
|
|
47
|
-
return msg.includes('timeout')
|
|
47
|
+
return msg.includes('timeout')
|
|
48
|
+
|| msg.includes('connection')
|
|
49
|
+
|| msg.includes('econnreset')
|
|
50
|
+
|| msg.includes('epipe')
|
|
51
|
+
|| isProviderBusyMessage(msg);
|
|
48
52
|
}
|
|
49
53
|
return false;
|
|
50
54
|
}
|
|
@@ -52,6 +56,18 @@ function isRetryableError(error) {
|
|
|
52
56
|
function is529Error(error) {
|
|
53
57
|
return error instanceof openai_1.default.APIError && error.status === 529;
|
|
54
58
|
}
|
|
59
|
+
function isProviderBusyMessage(message) {
|
|
60
|
+
const msg = message.toLowerCase();
|
|
61
|
+
return msg.includes('code: 10012')
|
|
62
|
+
|| msg.includes('engineinternalerror')
|
|
63
|
+
|| msg.includes('system is busy')
|
|
64
|
+
|| msg.includes('service is busy')
|
|
65
|
+
|| msg.includes('server is busy')
|
|
66
|
+
|| msg.includes('try again later');
|
|
67
|
+
}
|
|
68
|
+
function isProviderBusyError(error) {
|
|
69
|
+
return error instanceof Error && isProviderBusyMessage(error.message);
|
|
70
|
+
}
|
|
55
71
|
function createAbortError() {
|
|
56
72
|
const error = new Error('Operation cancelled');
|
|
57
73
|
error.name = 'AbortError';
|
|
@@ -90,14 +106,32 @@ function exponentialBackoff(attempt, baseDelayMs, maxDelayMs) {
|
|
|
90
106
|
return maxDelayMs ? Math.min(delay, maxDelayMs) : delay;
|
|
91
107
|
}
|
|
92
108
|
/** Sleep 函数 */
|
|
93
|
-
function sleep(ms) {
|
|
94
|
-
|
|
109
|
+
function sleep(ms, abortSignal) {
|
|
110
|
+
if (!abortSignal) {
|
|
111
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
112
|
+
}
|
|
113
|
+
return new Promise((resolve, reject) => {
|
|
114
|
+
if (abortSignal.aborted) {
|
|
115
|
+
reject(createAbortError());
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const timeout = setTimeout(() => {
|
|
119
|
+
abortSignal.removeEventListener('abort', onAbort);
|
|
120
|
+
resolve();
|
|
121
|
+
}, ms);
|
|
122
|
+
const onAbort = () => {
|
|
123
|
+
clearTimeout(timeout);
|
|
124
|
+
reject(createAbortError());
|
|
125
|
+
};
|
|
126
|
+
abortSignal.addEventListener('abort', onAbort, { once: true });
|
|
127
|
+
});
|
|
95
128
|
}
|
|
96
129
|
/** 带重试的操作 */
|
|
97
130
|
async function withRetry(operation, config) {
|
|
98
131
|
let lastError;
|
|
99
132
|
for (let attempt = 1; attempt <= config.maxRetries + 1; attempt++) {
|
|
100
133
|
try {
|
|
134
|
+
throwIfAborted(config.abortSignal);
|
|
101
135
|
return await operation();
|
|
102
136
|
}
|
|
103
137
|
catch (error) {
|
|
@@ -114,7 +148,7 @@ async function withRetry(operation, config) {
|
|
|
114
148
|
delayMs = retryAfter;
|
|
115
149
|
}
|
|
116
150
|
config.onRetry?.(attempt, lastError, delayMs);
|
|
117
|
-
await sleep(delayMs);
|
|
151
|
+
await sleep(delayMs, config.abortSignal);
|
|
118
152
|
}
|
|
119
153
|
}
|
|
120
154
|
throw lastError ?? new Error('Unknown error');
|
|
@@ -214,9 +248,10 @@ class LLMService {
|
|
|
214
248
|
maxRetries: this.config.maxRetries,
|
|
215
249
|
baseDelayMs: this.config.retryBaseDelay,
|
|
216
250
|
maxDelayMs: 10000,
|
|
251
|
+
abortSignal: options?.abortSignal,
|
|
217
252
|
onRetry: (_attempt, error, _delayMs) => {
|
|
218
|
-
//
|
|
219
|
-
if (is529Error(error)) {
|
|
253
|
+
// Provider overload/busy errors can often recover by retrying or using fallback.
|
|
254
|
+
if (is529Error(error) || isProviderBusyError(error)) {
|
|
220
255
|
this.consecutive529Errors++;
|
|
221
256
|
if (this.consecutive529Errors >= MAX_529_RETRIES && this.config.fallbackModel) {
|
|
222
257
|
this.triggerFallback();
|
|
@@ -259,25 +294,25 @@ class LLMService {
|
|
|
259
294
|
content += text;
|
|
260
295
|
onChunk?.(text);
|
|
261
296
|
}
|
|
262
|
-
// Handle tool_calls from delta (OpenAI standard streaming format)
|
|
263
|
-
//
|
|
264
|
-
const tc
|
|
265
|
-
if (tc) {
|
|
297
|
+
// Handle tool_calls from delta (OpenAI standard streaming format).
|
|
298
|
+
// A single stream chunk may contain multiple tool call deltas.
|
|
299
|
+
for (const tc of delta?.tool_calls ?? []) {
|
|
266
300
|
const idx = tc.index ?? 0;
|
|
267
|
-
|
|
268
|
-
if (
|
|
301
|
+
const existing = toolCallsMap.get(idx);
|
|
302
|
+
if (!existing) {
|
|
269
303
|
toolCallsMap.set(idx, {
|
|
270
|
-
id: tc.id
|
|
304
|
+
id: tc.id ?? `call_${idx}`,
|
|
271
305
|
type: 'function',
|
|
272
306
|
function: { name: tc.function?.name ?? '', arguments: tc.function?.arguments ?? '' },
|
|
273
307
|
});
|
|
274
308
|
}
|
|
275
|
-
else
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
if (
|
|
279
|
-
|
|
280
|
-
|
|
309
|
+
else {
|
|
310
|
+
if (tc.id)
|
|
311
|
+
existing.id = tc.id;
|
|
312
|
+
if (tc.function?.name)
|
|
313
|
+
existing.function.name = tc.function.name;
|
|
314
|
+
if (tc.function?.arguments)
|
|
315
|
+
existing.function.arguments += tc.function.arguments;
|
|
281
316
|
}
|
|
282
317
|
}
|
|
283
318
|
// Handle tool_calls from message (some APIs like DashScope may use this format)
|
|
@@ -307,7 +342,9 @@ class LLMService {
|
|
|
307
342
|
usedModel = chunk.model;
|
|
308
343
|
}
|
|
309
344
|
}
|
|
310
|
-
const toolCalls = Array.from(toolCallsMap.
|
|
345
|
+
const toolCalls = Array.from(toolCallsMap.entries())
|
|
346
|
+
.sort(([a], [b]) => Number(a) - Number(b))
|
|
347
|
+
.map(([, value]) => value);
|
|
311
348
|
for (const tc of toolCalls) {
|
|
312
349
|
if (!tc.function.arguments || tc.function.arguments.trim() === '') {
|
|
313
350
|
tc.function.arguments = '{}';
|