openhorse 0.2.3 → 0.2.4
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/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +79 -20
- package/dist/commands/index.js.map +1 -1
- package/dist/harness/context-harness.d.ts +14 -0
- package/dist/harness/context-harness.d.ts.map +1 -1
- package/dist/harness/context-harness.js +21 -0
- package/dist/harness/context-harness.js.map +1 -1
- package/dist/harness/evidence.d.ts.map +1 -1
- package/dist/harness/evidence.js +2 -1
- package/dist/harness/evidence.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -4
- package/dist/index.js.map +1 -1
- package/dist/services/compact/auto-compact.d.ts.map +1 -1
- package/dist/services/compact/auto-compact.js +3 -2
- package/dist/services/compact/auto-compact.js.map +1 -1
- package/dist/services/compact/compact.d.ts +3 -0
- package/dist/services/compact/compact.d.ts.map +1 -1
- package/dist/services/compact/compact.js +4 -1
- package/dist/services/compact/compact.js.map +1 -1
- package/dist/services/compact/summary-generator.d.ts +11 -0
- package/dist/services/compact/summary-generator.d.ts.map +1 -1
- package/dist/services/compact/summary-generator.js +57 -0
- package/dist/services/compact/summary-generator.js.map +1 -1
- package/dist/services/session-index.d.ts +45 -0
- package/dist/services/session-index.d.ts.map +1 -0
- package/dist/services/session-index.js +183 -0
- package/dist/services/session-index.js.map +1 -0
- package/dist/services/session-storage.d.ts.map +1 -1
- package/dist/services/session-storage.js +10 -0
- package/dist/services/session-storage.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +208 -6
- package/dist/tools/index.js.map +1 -1
- package/dist/utils/token-estimate.d.ts +42 -0
- package/dist/utils/token-estimate.d.ts.map +1 -0
- package/dist/utils/token-estimate.js +150 -0
- package/dist/utils/token-estimate.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/harness/evidence.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/harness/evidence.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,8 +19,6 @@ export { LLMService } from './services/llm';
|
|
|
19
19
|
export type { LLMConfig, Message, LLMResponse, StreamCallback, } from './services/llm';
|
|
20
20
|
export { AgentRunner } from './services/agent-runner';
|
|
21
21
|
export type { AgentRunnerConfig, AgentRunnerResult, } from './services/agent-runner';
|
|
22
|
-
export { HarnessEngine } from './harness/harness';
|
|
23
|
-
export type { HarnessConfig as HarnessEngineConfig, HarnessVerdict as HarnessEngineVerdict, HarnessContext, HarnessExecutionResult, } from './harness/harness';
|
|
24
22
|
export { TaskManager } from './services/task-manager';
|
|
25
23
|
export type { TaskRecord, CreateTaskOptions, UpdateTaskOptions, TaskFilter, TaskStats, TaskStatus, Priority, } from './services/task-manager';
|
|
26
24
|
export { loadConfig, isConfigured, getConfigErrors, getConfigSummary } from './services/config';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACrD,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,WAAW,IAAI,eAAe,EAC9B,UAAU,IAAI,cAAc,GAC7B,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGhG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EACV,iBAAiB,EACjB,WAAW,IAAI,gBAAgB,EAC/B,UAAU,IAAI,eAAe,EAC7B,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,YAAY,EACV,SAAS,EACT,OAAO,EACP,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACrD,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,WAAW,IAAI,eAAe,EAC9B,UAAU,IAAI,cAAc,GAC7B,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGhG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EACV,iBAAiB,EACjB,WAAW,IAAI,gBAAgB,EAC/B,UAAU,IAAI,eAAe,EAC7B,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,YAAY,EACV,SAAS,EACT,OAAO,EACP,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,GACT,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAChG,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EACL,SAAS,EAAE,YAAY,EAAE,aAAa,EACtC,KAAK,EACL,iBAAiB,EAAE,eAAe,EAClC,KAAK,EACL,cAAc,EAAE,oBAAoB,EAAE,aAAa,EACnD,oBAAoB,EAAE,oBAAoB,EAAE,4BAA4B,EACxE,uBAAuB,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY,EAAE,mBAAmB,GAChG,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,UAAU,EACrG,UAAU,EAAE,WAAW,EACvB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EACR,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,aAAa,IAAI,oBAAoB,EACzF,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,WAAW,GACvF,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* 公共 API 导出入口
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.upgradeHarnessState = exports.rankEvidence = exports.classifyIntent = exports.buildHarnessContext = exports.assembleHarnessMessages = exports.renderHarnessStateForCompact = exports.renderContextCapsule = exports.createContextCapsule = exports.ContextLedger = exports.createContextHarness = exports.ContextHarness = exports.Store = exports.getSystemPrompt = exports.buildSystemPrompt = exports.query = exports.toOpenAITools = exports.toOpenAITool = exports.buildTool = exports.getConfigSummary = exports.getConfigErrors = exports.isConfigured = exports.loadConfig = exports.TaskManager = exports.
|
|
8
|
+
exports.upgradeHarnessState = exports.rankEvidence = exports.classifyIntent = exports.buildHarnessContext = exports.assembleHarnessMessages = exports.renderHarnessStateForCompact = exports.renderContextCapsule = exports.createContextCapsule = exports.ContextLedger = exports.createContextHarness = exports.ContextHarness = exports.Store = exports.getSystemPrompt = exports.buildSystemPrompt = exports.query = exports.toOpenAITools = exports.toOpenAITool = exports.buildTool = exports.getConfigSummary = exports.getConfigErrors = exports.isConfigured = exports.loadConfig = exports.TaskManager = exports.AgentRunner = exports.LLMService = exports.MemoryStore = exports.SafetyChecker = exports.MemorySystem = exports.Harness = exports.init = exports.CoderAgent = exports.LeaderAgent = exports.BaseAgent = exports.Brain = void 0;
|
|
9
9
|
// 核心
|
|
10
10
|
var brain_1 = require("./core/brain");
|
|
11
11
|
Object.defineProperty(exports, "Brain", { enumerable: true, get: function () { return brain_1.Brain; } });
|
|
@@ -33,9 +33,6 @@ Object.defineProperty(exports, "LLMService", { enumerable: true, get: function (
|
|
|
33
33
|
// Agent Runner 模块
|
|
34
34
|
var agent_runner_1 = require("./services/agent-runner");
|
|
35
35
|
Object.defineProperty(exports, "AgentRunner", { enumerable: true, get: function () { return agent_runner_1.AgentRunner; } });
|
|
36
|
-
// Harness Engine 模块
|
|
37
|
-
var harness_1 = require("./harness/harness");
|
|
38
|
-
Object.defineProperty(exports, "HarnessEngine", { enumerable: true, get: function () { return harness_1.HarnessEngine; } });
|
|
39
36
|
// Task Manager 模块
|
|
40
37
|
var task_manager_1 = require("./services/task-manager");
|
|
41
38
|
Object.defineProperty(exports, "TaskManager", { enumerable: true, get: function () { return task_manager_1.TaskManager; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,KAAK;AACL,sCAAqC;AAA5B,8FAAA,KAAK,OAAA;AAGd,sCAAyC;AAAhC,kGAAA,SAAS,OAAA;AAGlB,WAAW;AACX,0CAA8C;AAArC,qGAAA,WAAW,OAAA;AACpB,wCAA4C;AAAnC,mGAAA,UAAU,OAAA;AAEnB,UAAU;AACV,+BAAqD;AAA5C,4FAAA,IAAI,OAAA;AAAE,+FAAA,OAAO,OAAA;AAAE,oGAAA,YAAY,OAAA;AAapC,eAAe;AACf,2CAAiD;AAAxC,uGAAA,aAAa,OAAA;AAGtB,cAAc;AACd,wCAA6C;AAApC,oGAAA,WAAW,OAAA;AAQpB,WAAW;AACX,sCAA4C;AAAnC,iGAAA,UAAU,OAAA;AAQnB,kBAAkB;AAClB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAMpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,KAAK;AACL,sCAAqC;AAA5B,8FAAA,KAAK,OAAA;AAGd,sCAAyC;AAAhC,kGAAA,SAAS,OAAA;AAGlB,WAAW;AACX,0CAA8C;AAArC,qGAAA,WAAW,OAAA;AACpB,wCAA4C;AAAnC,mGAAA,UAAU,OAAA;AAEnB,UAAU;AACV,+BAAqD;AAA5C,4FAAA,IAAI,OAAA;AAAE,+FAAA,OAAO,OAAA;AAAE,oGAAA,YAAY,OAAA;AAapC,eAAe;AACf,2CAAiD;AAAxC,uGAAA,aAAa,OAAA;AAGtB,cAAc;AACd,wCAA6C;AAApC,oGAAA,WAAW,OAAA;AAQpB,WAAW;AACX,sCAA4C;AAAnC,iGAAA,UAAU,OAAA;AAQnB,kBAAkB;AAClB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAMpB,kBAAkB;AAClB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AAWpB,OAAO;AACP,4CAAgG;AAAvF,oGAAA,UAAU,OAAA;AAAE,sGAAA,YAAY,OAAA;AAAE,yGAAA,eAAe,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAGpE,eAAe;AACf,yCAQqB;AAPnB,sGAAA,SAAS,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,0GAAA,aAAa,OAAA;AACtC,kGAAA,KAAK,OAAA;AACL,8GAAA,iBAAiB,OAAA;AAAE,4GAAA,eAAe,OAAA;AAClC,kGAAA,KAAK,OAAA;AACL,2GAAA,cAAc,OAAA;AAAE,iHAAA,oBAAoB,OAAA;AAAE,0GAAA,aAAa,OAAA;AACnD,iHAAA,oBAAoB,OAAA;AAAE,iHAAA,oBAAoB,OAAA;AAAE,yHAAA,4BAA4B,OAAA;AACxE,oHAAA,uBAAuB,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,gHAAA,mBAAmB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"auto-compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAOlE,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iBAAiB;IACjB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACpG,gCAAgC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B;IAC3B,iBAAiB,CAAC,EAAE,MAAM,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;IAC5D,2BAA2B;IAC3B,eAAe,CAAC,EAAE,MAAM,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;CACzD;AAMD,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAIZ;IACF,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,YAAY,CAAa;IACjC,wBAAwB;IACxB,OAAO,CAAC,cAAc,CAAa;gBAEvB,MAAM,CAAC,EAAE,iBAAiB;IAatC;;;OAGG;IACH,SAAS,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAY3C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI/B;;;;OAIG;IACG,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAkDnF;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;IACH,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM;IAIhE;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAqB3D;;OAEG;IACH,QAAQ,IAAI;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB;IAYD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAGnC;AAQD,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,WAAW,CAOtE;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}
|
|
@@ -11,6 +11,7 @@ exports.getAutoCompact = getAutoCompact;
|
|
|
11
11
|
exports.resetAutoCompact = resetAutoCompact;
|
|
12
12
|
const compact_1 = require("./compact");
|
|
13
13
|
const model_context_1 = require("../model-context");
|
|
14
|
+
const token_estimate_1 = require("../../utils/token-estimate");
|
|
14
15
|
// ============================================================================
|
|
15
16
|
// 自动压缩器
|
|
16
17
|
// ============================================================================
|
|
@@ -115,8 +116,8 @@ class AutoCompact {
|
|
|
115
116
|
this.lastTokenCount = usedTokens;
|
|
116
117
|
return Math.min(100, Math.round((usedTokens / contextWindow) * 100));
|
|
117
118
|
}
|
|
118
|
-
// Fallback: 估算 token
|
|
119
|
-
const estimated =
|
|
119
|
+
// Fallback: 估算 token 数(使用 CJK 感知的准确估算)
|
|
120
|
+
const estimated = messages ? (0, token_estimate_1.estimateMessagesTokens)(messages) : 0;
|
|
120
121
|
this.lastTokenCount = estimated;
|
|
121
122
|
return Math.min(100, Math.round((estimated / contextWindow) * 100));
|
|
122
123
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-compact.js","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"auto-compact.js","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA4NH,wCAOC;AAED,4CAEC;AApOD,uCAAiE;AACjE,oDAAiF;AAEjF,+DAAoE;AAyBpE,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,MAAa,WAAW;IAWtB,YAAY,MAA0B;QAL9B,oBAAe,GAAW,CAAC,CAAC;QAC5B,iBAAY,GAAW,CAAC,CAAC;QACjC,wBAAwB;QAChB,mBAAc,GAAW,CAAC,CAAC;QAGjC,IAAI,CAAC,MAAM,GAAG;YACZ,SAAS,EAAE,MAAM,EAAE,SAAS,IAAI,sCAAsB;YACtD,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,QAAQ;YACpC,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,EAAE;YACtC,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI;YAChC,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,IAAI,GAAG;YACvD,SAAS,EAAE,MAAM,EAAE,SAAS;YAC5B,iBAAiB,EAAE,MAAM,EAAE,iBAAiB;YAC5C,eAAe,EAAE,MAAM,EAAE,eAAe;SACzC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAA0B;QAClC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAC7E,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACvE,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACnF,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACvE,IAAI,MAAM,CAAC,mBAAmB,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAC3G,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAC7E,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACrG,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IACjG,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,OAAe;QACtB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,QAAmB,EAAE,UAAmB;QAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzB,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,cAAc,GAClB,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,GAAG;YACjD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,SAAS;YAChD,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,YAAY,GAChB,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,GAAG;YACjD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,SAAS;YAC9C,CAAC,CAAC,SAAS,CAAC;QAEhB,UAAU;QACV,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;YAC7C,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,oBAAoB;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,eAAe,GAAG,KAAK,EAAE,CAAC;YACvC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO;QACP,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAe,EAAC,QAAQ,EAAE;YAC7C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,cAAc;YACd,YAAY;YACZ,WAAW,EAAE,eAAe;SAC7B,CAAC,CAAC;QAEH,OAAO;QACP,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;QAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,OAAO;QACP,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBACpB,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,UAAmB,EAAE,QAAoB;QACnE,MAAM,aAAa,GAAG,IAAA,qCAAqB,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;YACjC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACvE,CAAC;QACD,uCAAuC;QACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAA,uCAAsB,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,UAAmB,EAAE,QAAoB;QACrD,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAmB;QACpC,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAe,EAAC,QAAQ,EAAE;YAC7C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,IAAI,SAAS;YAC9D,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,SAAS;YAC1D,WAAW,EAAE,QAAQ;SACtB,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBACpB,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE;aACjC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,QAAQ;QASN,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;YACpD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAC5B,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE;SACjC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,OAAgB;QACzB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAChC,CAAC;CACF;AAjLD,kCAiLC;AAED,+EAA+E;AAC/E,KAAK;AACL,+EAA+E;AAE/E,IAAI,mBAAmB,GAAuB,IAAI,CAAC;AAEnD,SAAgB,cAAc,CAAC,MAA0B;IACvD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,mBAAmB,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,MAAM,EAAE,CAAC;QAClB,mBAAmB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,SAAgB,gBAAgB;IAC9B,mBAAmB,GAAG,IAAI,CAAC;AAC7B,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* 参考 OpenClaude 的 compact/ 目录实现。
|
|
6
6
|
*/
|
|
7
7
|
import type { Message } from '../llm';
|
|
8
|
+
import type { LLMService } from '../llm';
|
|
8
9
|
import { type SummaryOptions } from './summary-generator';
|
|
9
10
|
import { type ContextCapsule, type HarnessState } from '../../harness';
|
|
10
11
|
export interface CompactOptions {
|
|
@@ -22,6 +23,8 @@ export interface CompactOptions {
|
|
|
22
23
|
contextCapsule?: ContextCapsule;
|
|
23
24
|
/** Full Context Harness state that must survive compaction */
|
|
24
25
|
harnessState?: HarnessState;
|
|
26
|
+
/** LLM service for high-quality summarization (optional, falls back to heuristic) */
|
|
27
|
+
llm?: LLMService;
|
|
25
28
|
/** Why this compaction happened */
|
|
26
29
|
compactMode?: 'manual' | 'auto_pre_turn' | 'mid_turn';
|
|
27
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAwC,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAsD,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAM3H,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,sBAAsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB;IAChB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,mDAAmD;IACnD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,qFAAqF;IACrF,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,mCAAmC;IACnC,WAAW,CAAC,EAAE,QAAQ,GAAG,eAAe,GAAG,UAAU,CAAC;CACvD;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe;IACf,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAiBD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,CAAC,CAkGxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAG7E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAE,MAAW,GAAG,OAAO,EAAE,CAiBlF;AAMD,OAAO,EAAE,cAAc,IAAI,aAAa,EAAE,aAAa,IAAI,iBAAiB,EAAE,CAAC"}
|
|
@@ -56,7 +56,10 @@ async function compactMessages(messages, options) {
|
|
|
56
56
|
const recentMessages = toCompact.slice(-opts.maxMessages);
|
|
57
57
|
const oldMessages = toCompact.slice(0, toCompact.length - opts.maxMessages);
|
|
58
58
|
// 4. 对早期消息生成摘要
|
|
59
|
-
|
|
59
|
+
// Use LLM-driven summary if LLM service is provided, else fall back to heuristic
|
|
60
|
+
const summary = opts.llm
|
|
61
|
+
? await (0, summary_generator_1.generateLLMSummary)(oldMessages, opts.llm, opts.summaryOptions)
|
|
62
|
+
: await (0, summary_generator_1.summaryGenerator)(oldMessages, opts.summaryOptions);
|
|
60
63
|
// 5. 构建压缩后的消息列表
|
|
61
64
|
let compactedMessages = [];
|
|
62
65
|
if (systemMessage) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.js","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"compact.js","sourceRoot":"","sources":["../../../src/services/compact/compact.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAoEH,0CAqGC;AAKD,oCAGC;AAKD,oCAiBC;AAnMD,2DAAgG;AAChG,2CAA2H;AAwC3H,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAE/E,MAAM,eAAe,GAAmB;IACtC,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IACvB,SAAS,EAAE,CAAC,EAAE,uCAAuC;CACtD,CAAC;AAEF,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E;;;;;;;GAOG;AACI,KAAK,UAAU,eAAe,CACnC,QAAmB,EACnB,OAAwB;IAExB,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAChD,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;IAEtC,WAAW;IACX,IAAI,aAAa,IAAI,IAAI,CAAC,SAAU,EAAE,CAAC;QACrC,OAAO;YACL,QAAQ;YACR,aAAa;YACb,cAAc,EAAE,aAAa;YAC7B,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IAED,kBAAkB;IAClB,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB;QAC1C,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;QACzC,CAAC,CAAC,SAAS,CAAC;IAEd,eAAe;IACf,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB;QACtC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC3C,CAAC,CAAC,QAAQ,CAAC;IAEb,wBAAwB;IACxB,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,WAAY,CAAC,CAAC;IAE7E,eAAe;IACf,iFAAiF;IACjF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG;QACtB,CAAC,CAAC,MAAM,IAAA,sCAAkB,EAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC;QACtE,CAAC,CAAC,MAAM,IAAA,oCAAgB,EAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAE7D,gBAAgB;IAChB,IAAI,iBAAiB,GAAc,EAAE,CAAC;IAEtC,IAAI,aAAa,EAAE,CAAC;QAClB,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,4EAA4E;IAC5E,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAA,sCAA4B,EAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC;SACvF,CAAC,CAAC;QACH,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,6IAA6I;SACvJ,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QAC/B,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAA,8BAAoB,EAAC,IAAI,CAAC,cAAc,CAAC;SACnD,CAAC,CAAC;QACH,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,6GAA6G;SACvH,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,EAAE,CAAC;QACZ,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,sBAAsB,OAAO,EAAE;SACzC,CAAC,CAAC;QACH,iBAAiB,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,8FAA8F;SACxG,CAAC,CAAC;IACL,CAAC;IAED,SAAS;IACT,iBAAiB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;IAE1C,eAAe;IACf,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACxB,iBAAiB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC5C,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC3C,OAAO,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;YACzC,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC;IAChD,MAAM,KAAK,GAAG,cAAc,GAAG,aAAa,CAAC;IAE7C,OAAO;QACL,QAAQ,EAAE,iBAAiB;QAC3B,aAAa;QACb,cAAc;QACd,KAAK;QACL,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,QAAmB,EAAE,SAAkB;IAClE,MAAM,KAAK,GAAG,SAAS,IAAI,eAAe,CAAC,SAAU,CAAC;IACtD,OAAO,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,QAAmB,EAAE,WAAmB,EAAE;IACrE,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAE9D,aAAa;IACb,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAE5D,kBAAkB;IAClB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE1C,OAAO;IACP,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;IAEvB,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -22,4 +22,15 @@ export interface SummaryOptions {
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function summaryGenerator(messages: Message[], options?: SummaryOptions): Promise<string>;
|
|
24
24
|
export { summaryGenerator as generateSummary };
|
|
25
|
+
import type { LLMService } from '../llm';
|
|
26
|
+
/**
|
|
27
|
+
* Generate a summary using the LLM for high-quality context compaction.
|
|
28
|
+
* Falls back to heuristic summary if LLM call fails or times out.
|
|
29
|
+
*
|
|
30
|
+
* @param messages - Messages to summarize
|
|
31
|
+
* @param llm - LLM service instance
|
|
32
|
+
* @param options - Summary options
|
|
33
|
+
* @returns Structured summary string
|
|
34
|
+
*/
|
|
35
|
+
export declare function generateLLMSummary(messages: Message[], llm: LLMService, options?: SummaryOptions): Promise<string>;
|
|
25
36
|
//# sourceMappingURL=summary-generator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summary-generator.d.ts","sourceRoot":"","sources":["../../../src/services/compact/summary-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAMtC,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,YAAY,CAAC;CAChD;AAiBD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CA4DjB;AAkFD,OAAO,EAAE,gBAAgB,IAAI,eAAe,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"summary-generator.d.ts","sourceRoot":"","sources":["../../../src/services/compact/summary-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAMtC,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW;IACX,MAAM,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,YAAY,CAAC;CAChD;AAiBD;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CA4DjB;AAkFD,OAAO,EAAE,gBAAgB,IAAI,eAAe,EAAE,CAAC;AAM/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEzC;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,OAAO,EAAE,EACnB,GAAG,EAAE,UAAU,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,CAkDjB"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.summaryGenerator = summaryGenerator;
|
|
9
9
|
exports.generateSummary = summaryGenerator;
|
|
10
|
+
exports.generateLLMSummary = generateLLMSummary;
|
|
10
11
|
// ============================================================================
|
|
11
12
|
// 默认配置
|
|
12
13
|
// ============================================================================
|
|
@@ -125,4 +126,60 @@ function buildStructuredSummary(topics, tools, files, maxLength) {
|
|
|
125
126
|
});
|
|
126
127
|
return summary.length > maxLength ? summary.slice(0, maxLength - 3) + '...' : summary;
|
|
127
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Generate a summary using the LLM for high-quality context compaction.
|
|
131
|
+
* Falls back to heuristic summary if LLM call fails or times out.
|
|
132
|
+
*
|
|
133
|
+
* @param messages - Messages to summarize
|
|
134
|
+
* @param llm - LLM service instance
|
|
135
|
+
* @param options - Summary options
|
|
136
|
+
* @returns Structured summary string
|
|
137
|
+
*/
|
|
138
|
+
async function generateLLMSummary(messages, llm, options) {
|
|
139
|
+
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
140
|
+
if (messages.length === 0)
|
|
141
|
+
return '';
|
|
142
|
+
// Build a condensed representation of the messages for the LLM
|
|
143
|
+
const condensed = messages
|
|
144
|
+
.map(msg => {
|
|
145
|
+
if (msg.role === 'user') {
|
|
146
|
+
return `[User]: ${msg.content?.slice(0, 200) || ''}`;
|
|
147
|
+
}
|
|
148
|
+
if (msg.role === 'assistant') {
|
|
149
|
+
const toolCalls = msg.tool_calls
|
|
150
|
+
? ` (tools: ${msg.tool_calls.map(tc => tc.function.name).join(', ')})`
|
|
151
|
+
: '';
|
|
152
|
+
return `[Assistant]: ${msg.content?.slice(0, 300) || ''}${toolCalls}`;
|
|
153
|
+
}
|
|
154
|
+
if (msg.role === 'tool') {
|
|
155
|
+
return `[Tool]: ${(msg.content || '').slice(0, 150)}`;
|
|
156
|
+
}
|
|
157
|
+
return '';
|
|
158
|
+
})
|
|
159
|
+
.filter(Boolean)
|
|
160
|
+
.join('\n');
|
|
161
|
+
const prompt = `Summarize the following coding agent conversation compactly. Focus on:
|
|
162
|
+
1. User's main goal/objective
|
|
163
|
+
2. Key actions taken (files modified, commands run)
|
|
164
|
+
3. Current state (what's done, what's pending)
|
|
165
|
+
4. Any important decisions or constraints mentioned
|
|
166
|
+
|
|
167
|
+
Keep the summary under ${opts.maxLength || 500} characters. Use bullet points.
|
|
168
|
+
|
|
169
|
+
Conversation:
|
|
170
|
+
${condensed.slice(0, 8000)}
|
|
171
|
+
|
|
172
|
+
Summary:`;
|
|
173
|
+
try {
|
|
174
|
+
const response = await llm.chat([{ role: 'user', content: prompt }]);
|
|
175
|
+
if (response.content) {
|
|
176
|
+
return response.content.trim().slice(0, opts.maxLength || 500);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
catch {
|
|
180
|
+
// LLM call failed or timed out — fall through to heuristic
|
|
181
|
+
}
|
|
182
|
+
// Fallback to heuristic summary
|
|
183
|
+
return summaryGenerator(messages, options);
|
|
184
|
+
}
|
|
128
185
|
//# sourceMappingURL=summary-generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summary-generator.js","sourceRoot":"","sources":["../../../src/services/compact/summary-generator.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAwCH,4CA+DC;AAkF4B,2CAAe;
|
|
1
|
+
{"version":3,"file":"summary-generator.js","sourceRoot":"","sources":["../../../src/services/compact/summary-generator.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAwCH,4CA+DC;AAkF4B,2CAAe;AAiB5C,gDAsDC;AA7OD,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAE/E,MAAM,eAAe,GAAmB;IACtC,SAAS,EAAE,GAAG;IACd,gBAAgB,EAAE,IAAI;IACtB,kBAAkB,EAAE,IAAI;IACxB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAE/E;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CACpC,QAAmB,EACnB,OAAwB;IAExB,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,SAAS;IACT,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACvC,oBAAoB;YACpB,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,IAAI,KAAK,EAAE,CAAC;gBACV,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YAC/C,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;gBAChC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEjC,SAAS;gBACT,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC1E,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;wBAC/C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACd,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAChC,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM;IACN,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;IAEhD,OAAO;IACP,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC;IACrC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,kBAAkB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAE5E,KAAK,WAAW;YACd,OAAO,qBAAqB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAE/E,KAAK,YAAY;YACf,OAAO,sBAAsB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAClF,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,SAAS,kBAAkB,CACzB,MAAgB,EAChB,KAAe,EACf,KAAe,EACf,SAAiB;IAEjB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;AACxF,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAgB,EAChB,KAAe,EACf,KAAe,EACf,SAAiB;IAEjB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,uBAAuB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;AACxF,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAgB,EAChB,KAAe,EACf,KAAe,EACf,SAAiB;IAEjB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACzB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KAC1B,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;AACxF,CAAC;AAcD;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACtC,QAAmB,EACnB,GAAe,EACf,OAAwB;IAExB,MAAM,IAAI,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,+DAA+D;IAC/D,MAAM,SAAS,GAAG,QAAQ;SACvB,GAAG,CAAC,GAAG,CAAC,EAAE;QACT,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACxB,OAAO,WAAW,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU;gBAC9B,CAAC,CAAC,YAAY,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBACtE,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,gBAAgB,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACxB,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QACxD,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,MAAM,GAAG;;;;;;yBAMQ,IAAI,CAAC,SAAS,IAAI,GAAG;;;EAG5C,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;;SAEjB,CAAC;IAER,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAErE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;IAC7D,CAAC;IAED,gCAAgC;IAChC,OAAO,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* openhorse - Session Index
|
|
3
|
+
*
|
|
4
|
+
* Per-session index for fast lookup of files, tools, and topics.
|
|
5
|
+
* Enables quick session search without parsing full JSONL files.
|
|
6
|
+
*/
|
|
7
|
+
export interface SessionIndex {
|
|
8
|
+
sessionId: string;
|
|
9
|
+
files: string[];
|
|
10
|
+
tools: Record<string, number>;
|
|
11
|
+
topics: string[];
|
|
12
|
+
updatedAt: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Update the session index with a new message.
|
|
16
|
+
* Called on every appendSessionMessage.
|
|
17
|
+
*/
|
|
18
|
+
export declare function updateSessionIndex(sessionId: string, projectPath: string, message: {
|
|
19
|
+
role: string;
|
|
20
|
+
content?: string;
|
|
21
|
+
tool_calls?: Array<{
|
|
22
|
+
function: {
|
|
23
|
+
name: string;
|
|
24
|
+
arguments: string;
|
|
25
|
+
};
|
|
26
|
+
}>;
|
|
27
|
+
}): void;
|
|
28
|
+
/**
|
|
29
|
+
* Load session index from disk.
|
|
30
|
+
*/
|
|
31
|
+
export declare function loadSessionIndex(sessionId: string, projectPath: string): SessionIndex | null;
|
|
32
|
+
/**
|
|
33
|
+
* Save session index to disk.
|
|
34
|
+
*/
|
|
35
|
+
export declare function saveSessionIndex(sessionId: string, projectPath: string, index: SessionIndex): void;
|
|
36
|
+
/**
|
|
37
|
+
* Delete session index.
|
|
38
|
+
*/
|
|
39
|
+
export declare function deleteSessionIndex(sessionId: string, projectPath: string): void;
|
|
40
|
+
/**
|
|
41
|
+
* Search sessions by query (file path, tool name, or topic keyword).
|
|
42
|
+
* Returns matching session IDs sorted by relevance.
|
|
43
|
+
*/
|
|
44
|
+
export declare function searchSessions(query: string, projectPath: string, sessionIds: string[]): string[];
|
|
45
|
+
//# sourceMappingURL=session-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.d.ts","sourceRoot":"","sources":["../../src/services/session-index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE;IACP,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAC;CACvE,GACA,IAAI,CAwCN;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAU5F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAWlG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAU/E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE,CAiCV"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* openhorse - Session Index
|
|
4
|
+
*
|
|
5
|
+
* Per-session index for fast lookup of files, tools, and topics.
|
|
6
|
+
* Enables quick session search without parsing full JSONL files.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.updateSessionIndex = updateSessionIndex;
|
|
43
|
+
exports.loadSessionIndex = loadSessionIndex;
|
|
44
|
+
exports.saveSessionIndex = saveSessionIndex;
|
|
45
|
+
exports.deleteSessionIndex = deleteSessionIndex;
|
|
46
|
+
exports.searchSessions = searchSessions;
|
|
47
|
+
const fs = __importStar(require("fs"));
|
|
48
|
+
const path = __importStar(require("path"));
|
|
49
|
+
const config_dir_1 = require("./config-dir");
|
|
50
|
+
// ============================================================================
|
|
51
|
+
// Index Management
|
|
52
|
+
// ============================================================================
|
|
53
|
+
/**
|
|
54
|
+
* Update the session index with a new message.
|
|
55
|
+
* Called on every appendSessionMessage.
|
|
56
|
+
*/
|
|
57
|
+
function updateSessionIndex(sessionId, projectPath, message) {
|
|
58
|
+
const index = loadSessionIndex(sessionId, projectPath) ?? createEmptyIndex(sessionId);
|
|
59
|
+
// Track user topics
|
|
60
|
+
if (message.role === 'user' && message.content) {
|
|
61
|
+
const topic = message.content.slice(0, 50).trim();
|
|
62
|
+
if (topic && !index.topics.includes(topic)) {
|
|
63
|
+
index.topics.push(topic);
|
|
64
|
+
// Keep only last 20 topics
|
|
65
|
+
if (index.topics.length > 20) {
|
|
66
|
+
index.topics = index.topics.slice(-20);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// Track tool calls and file paths
|
|
71
|
+
if (message.role === 'assistant' && message.tool_calls) {
|
|
72
|
+
for (const tc of message.tool_calls) {
|
|
73
|
+
const toolName = tc.function.name;
|
|
74
|
+
index.tools[toolName] = (index.tools[toolName] || 0) + 1;
|
|
75
|
+
// Extract file paths from common file tools
|
|
76
|
+
try {
|
|
77
|
+
const args = JSON.parse(tc.function.arguments);
|
|
78
|
+
const filePath = args.path || args.file || args.file_path;
|
|
79
|
+
if (filePath && typeof filePath === 'string' && !index.files.includes(filePath)) {
|
|
80
|
+
index.files.push(filePath);
|
|
81
|
+
// Keep only last 100 files
|
|
82
|
+
if (index.files.length > 100) {
|
|
83
|
+
index.files = index.files.slice(-100);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// Invalid JSON arguments — skip
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
index.updatedAt = Date.now();
|
|
93
|
+
saveSessionIndex(sessionId, projectPath, index);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Load session index from disk.
|
|
97
|
+
*/
|
|
98
|
+
function loadSessionIndex(sessionId, projectPath) {
|
|
99
|
+
try {
|
|
100
|
+
const dir = (0, config_dir_1.getProjectSessionsDir)(projectPath);
|
|
101
|
+
const indexPath = path.join(dir, `${sessionId}.index.json`);
|
|
102
|
+
if (!fs.existsSync(indexPath))
|
|
103
|
+
return null;
|
|
104
|
+
const data = fs.readFileSync(indexPath, 'utf8');
|
|
105
|
+
return JSON.parse(data);
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Save session index to disk.
|
|
113
|
+
*/
|
|
114
|
+
function saveSessionIndex(sessionId, projectPath, index) {
|
|
115
|
+
try {
|
|
116
|
+
const dir = (0, config_dir_1.getProjectSessionsDir)(projectPath);
|
|
117
|
+
if (!fs.existsSync(dir)) {
|
|
118
|
+
fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
119
|
+
}
|
|
120
|
+
const indexPath = path.join(dir, `${sessionId}.index.json`);
|
|
121
|
+
fs.writeFileSync(indexPath, JSON.stringify(index, null, 2), { mode: 0o600 });
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
// Best-effort — don't fail the main flow
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Delete session index.
|
|
129
|
+
*/
|
|
130
|
+
function deleteSessionIndex(sessionId, projectPath) {
|
|
131
|
+
try {
|
|
132
|
+
const dir = (0, config_dir_1.getProjectSessionsDir)(projectPath);
|
|
133
|
+
const indexPath = path.join(dir, `${sessionId}.index.json`);
|
|
134
|
+
if (fs.existsSync(indexPath)) {
|
|
135
|
+
fs.unlinkSync(indexPath);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
// Best-effort
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Search sessions by query (file path, tool name, or topic keyword).
|
|
144
|
+
* Returns matching session IDs sorted by relevance.
|
|
145
|
+
*/
|
|
146
|
+
function searchSessions(query, projectPath, sessionIds) {
|
|
147
|
+
const q = query.toLowerCase();
|
|
148
|
+
const scored = [];
|
|
149
|
+
for (const id of sessionIds) {
|
|
150
|
+
const index = loadSessionIndex(id, projectPath);
|
|
151
|
+
if (!index)
|
|
152
|
+
continue;
|
|
153
|
+
let score = 0;
|
|
154
|
+
// File path match
|
|
155
|
+
if (index.files.some(f => f.toLowerCase().includes(q))) {
|
|
156
|
+
score += 10;
|
|
157
|
+
}
|
|
158
|
+
// Tool name match
|
|
159
|
+
if (Object.keys(index.tools).some(t => t.toLowerCase().includes(q))) {
|
|
160
|
+
score += 5;
|
|
161
|
+
}
|
|
162
|
+
// Topic match
|
|
163
|
+
if (index.topics.some(t => t.toLowerCase().includes(q))) {
|
|
164
|
+
score += 8;
|
|
165
|
+
}
|
|
166
|
+
if (score > 0) {
|
|
167
|
+
scored.push({ id, score });
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// Sort by score descending
|
|
171
|
+
scored.sort((a, b) => b.score - a.score);
|
|
172
|
+
return scored.map(s => s.id);
|
|
173
|
+
}
|
|
174
|
+
function createEmptyIndex(sessionId) {
|
|
175
|
+
return {
|
|
176
|
+
sessionId,
|
|
177
|
+
files: [],
|
|
178
|
+
tools: {},
|
|
179
|
+
topics: [],
|
|
180
|
+
updatedAt: Date.now(),
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
//# sourceMappingURL=session-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.js","sourceRoot":"","sources":["../../src/services/session-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-storage.d.ts","sourceRoot":"","sources":["../../src/services/session-storage.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"session-storage.d.ts","sourceRoot":"","sources":["../../src/services/session-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -471,6 +471,16 @@ function appendSessionMessage(sessionId, message) {
|
|
|
471
471
|
for (const path of uniquePaths(paths)) {
|
|
472
472
|
(0, fs_1.appendFileSync)(path, line, { mode: 0o600 });
|
|
473
473
|
}
|
|
474
|
+
// Update session index for fast search
|
|
475
|
+
if (session) {
|
|
476
|
+
try {
|
|
477
|
+
const { updateSessionIndex } = require('./session-index');
|
|
478
|
+
updateSessionIndex(sessionId, session.projectPath, message);
|
|
479
|
+
}
|
|
480
|
+
catch {
|
|
481
|
+
// Best-effort — don't fail the main flow
|
|
482
|
+
}
|
|
483
|
+
}
|
|
474
484
|
}
|
|
475
485
|
/**
|
|
476
486
|
* 追加多条会话消息
|