@theokit/sdk 4.57.0 → 4.59.0
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/CHANGELOG.md +120 -0
- package/dist/{agent-ZIYCVEZL.js → agent-ST27RIJE.js} +10 -9
- package/dist/{agent-ZIYCVEZL.js.map → agent-ST27RIJE.js.map} +1 -1
- package/dist/{agent-2T2EJIP6.cjs → agent-VHRX7XGW.cjs} +11 -10
- package/dist/{agent-2T2EJIP6.cjs.map → agent-VHRX7XGW.cjs.map} +1 -1
- package/dist/{chunk-E7JHD6QJ.cjs → chunk-554J7UQH.cjs} +44 -27
- package/dist/chunk-554J7UQH.cjs.map +1 -0
- package/dist/{chunk-E3WZ6Y4H.cjs → chunk-7BG5UH3T.cjs} +8 -8
- package/dist/{chunk-E3WZ6Y4H.cjs.map → chunk-7BG5UH3T.cjs.map} +1 -1
- package/dist/{chunk-X7O4255I.cjs → chunk-7GUIET73.cjs} +4 -4
- package/dist/{chunk-X7O4255I.cjs.map → chunk-7GUIET73.cjs.map} +1 -1
- package/dist/{chunk-7TCRNXNK.js → chunk-7LOIUIQZ.js} +69 -29
- package/dist/chunk-7LOIUIQZ.js.map +1 -0
- package/dist/chunk-AQO3NSRG.cjs +41 -0
- package/dist/chunk-AQO3NSRG.cjs.map +1 -0
- package/dist/{chunk-LEM2GOMI.js → chunk-D5NWEOCO.js} +3 -3
- package/dist/{chunk-LEM2GOMI.js.map → chunk-D5NWEOCO.js.map} +1 -1
- package/dist/{chunk-U2AC6JUP.cjs → chunk-J2UROOIG.cjs} +2 -27
- package/dist/chunk-J2UROOIG.cjs.map +1 -0
- package/dist/{chunk-ZNW6V4Y6.cjs → chunk-LKFET5A3.cjs} +23 -2
- package/dist/chunk-LKFET5A3.cjs.map +1 -0
- package/dist/{chunk-YMA4S2WO.js → chunk-MZ2FGBLZ.js} +33 -11
- package/dist/chunk-MZ2FGBLZ.js.map +1 -0
- package/dist/{chunk-53CBTBWO.cjs → chunk-P6H23T43.cjs} +33 -11
- package/dist/chunk-P6H23T43.cjs.map +1 -0
- package/dist/{chunk-7FHZ4VQX.js → chunk-SAVIWMZB.js} +3 -3
- package/dist/{chunk-7FHZ4VQX.js.map → chunk-SAVIWMZB.js.map} +1 -1
- package/dist/{chunk-M2JWHKO6.cjs → chunk-SMUAG2DY.cjs} +103 -63
- package/dist/chunk-SMUAG2DY.cjs.map +1 -0
- package/dist/{chunk-UPRJR6IP.js → chunk-UCBJBJ27.js} +3 -25
- package/dist/chunk-UCBJBJ27.js.map +1 -0
- package/dist/chunk-UFLD2HEV.js +35 -0
- package/dist/chunk-UFLD2HEV.js.map +1 -0
- package/dist/{chunk-GTKFV7O5.js → chunk-WFC26L6Y.js} +23 -2
- package/dist/chunk-WFC26L6Y.js.map +1 -0
- package/dist/{chunk-HJBMA5MB.cjs → chunk-WNTAPVU5.cjs} +47 -6
- package/dist/chunk-WNTAPVU5.cjs.map +1 -0
- package/dist/{chunk-G6EEYRDD.js → chunk-ZA255A62.js} +43 -26
- package/dist/chunk-ZA255A62.js.map +1 -0
- package/dist/{chunk-2QKTVKH3.js → chunk-ZHPWGIUX.js} +48 -8
- package/dist/chunk-ZHPWGIUX.js.map +1 -0
- package/dist/context/index.cjs +7 -7
- package/dist/context/index.js +3 -3
- package/dist/{context-VMIE4BMD.cjs → context-LCKNH2XI.cjs} +7 -6
- package/dist/{context-VMIE4BMD.cjs.map → context-LCKNH2XI.cjs.map} +1 -1
- package/dist/context-MZSKGKYR.js +7 -0
- package/dist/{context-FDOON2DB.js.map → context-MZSKGKYR.js.map} +1 -1
- package/dist/cron.cjs +10 -9
- package/dist/cron.js +9 -8
- package/dist/eval.cjs +9 -8
- package/dist/eval.cjs.map +1 -1
- package/dist/eval.js +8 -7
- package/dist/eval.js.map +1 -1
- package/dist/{index-manager-AO4LJQZ4.cjs → index-manager-A3XPHAWF.cjs} +5 -4
- package/dist/{index-manager-AO4LJQZ4.cjs.map → index-manager-A3XPHAWF.cjs.map} +1 -1
- package/dist/{index-manager-QDPIYIGV.js → index-manager-A64I7KYV.js} +4 -3
- package/dist/{index-manager-QDPIYIGV.js.map → index-manager-A64I7KYV.js.map} +1 -1
- package/dist/index.cjs +32 -33
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -13
- package/dist/index.js.map +1 -1
- package/dist/internal/memory/storage/markdown-store.d.ts +34 -4
- package/dist/internal/persistence/index.cjs +17 -16
- package/dist/internal/persistence/index.cjs.map +1 -1
- package/dist/internal/persistence/index.js +2 -1
- package/dist/internal/persistence/index.js.map +1 -1
- package/dist/internal/persistence/paths.d.cts +42 -0
- package/dist/internal/persistence/paths.d.ts +42 -0
- package/dist/internal/persistence/session-dir.d.cts +15 -0
- package/dist/internal/persistence/session-dir.d.ts +15 -0
- package/dist/internal/runtime/memory/memory-store.d.ts +2 -2
- package/dist/internal/runtime/plugins/plugin-bundles.d.ts +19 -0
- package/dist/project.cjs +3 -3
- package/dist/project.js +1 -1
- package/dist/subagents-loader-6ATCDEKN.js +8 -0
- package/dist/{subagents-loader-J54ESLDV.js.map → subagents-loader-6ATCDEKN.js.map} +1 -1
- package/dist/subagents-loader-X5QKODCL.cjs +17 -0
- package/dist/{subagents-loader-AZIXJ7D3.cjs.map → subagents-loader-X5QKODCL.cjs.map} +1 -1
- package/dist/subagents-loader.cjs +3 -2
- package/dist/subagents-loader.cjs.map +1 -1
- package/dist/subagents-loader.js +2 -1
- package/dist/subagents-loader.js.map +1 -1
- package/docs/error-codes.md +15 -15
- package/package.json +1 -1
- package/dist/chunk-2QKTVKH3.js.map +0 -1
- package/dist/chunk-53CBTBWO.cjs.map +0 -1
- package/dist/chunk-7TCRNXNK.js.map +0 -1
- package/dist/chunk-E7JHD6QJ.cjs.map +0 -1
- package/dist/chunk-G6EEYRDD.js.map +0 -1
- package/dist/chunk-GTKFV7O5.js.map +0 -1
- package/dist/chunk-HJBMA5MB.cjs.map +0 -1
- package/dist/chunk-M2JWHKO6.cjs.map +0 -1
- package/dist/chunk-U2AC6JUP.cjs.map +0 -1
- package/dist/chunk-UPRJR6IP.js.map +0 -1
- package/dist/chunk-YMA4S2WO.js.map +0 -1
- package/dist/chunk-ZNW6V4Y6.cjs.map +0 -1
- package/dist/context-FDOON2DB.js +0 -6
- package/dist/subagents-loader-AZIXJ7D3.cjs +0 -16
- package/dist/subagents-loader-J54ESLDV.js +0 -7
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkKKK3FZ4A_cjs = require('./chunk-KKK3FZ4A.cjs');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
4
|
+
var chunk554J7UQH_cjs = require('./chunk-554J7UQH.cjs');
|
|
5
|
+
var chunkP6H23T43_cjs = require('./chunk-P6H23T43.cjs');
|
|
6
6
|
var chunkBV2MWEMV_cjs = require('./chunk-BV2MWEMV.cjs');
|
|
7
7
|
var chunkNGESVVJN_cjs = require('./chunk-NGESVVJN.cjs');
|
|
8
8
|
var chunkEI2Q7SJ5_cjs = require('./chunk-EI2Q7SJ5.cjs');
|
|
9
9
|
var chunkQI7WE46I_cjs = require('./chunk-QI7WE46I.cjs');
|
|
10
10
|
var chunk43GFJ5SD_cjs = require('./chunk-43GFJ5SD.cjs');
|
|
11
11
|
var chunk2ZPEDVLM_cjs = require('./chunk-2ZPEDVLM.cjs');
|
|
12
|
-
var
|
|
13
|
-
var
|
|
12
|
+
var chunk7BG5UH3T_cjs = require('./chunk-7BG5UH3T.cjs');
|
|
13
|
+
var chunkJ2UROOIG_cjs = require('./chunk-J2UROOIG.cjs');
|
|
14
14
|
var chunkWJVHMTKB_cjs = require('./chunk-WJVHMTKB.cjs');
|
|
15
15
|
var chunk6JSIEDKL_cjs = require('./chunk-6JSIEDKL.cjs');
|
|
16
16
|
var chunk4O5TGQBW_cjs = require('./chunk-4O5TGQBW.cjs');
|
|
@@ -24,7 +24,8 @@ var chunkBUIK7GUA_cjs = require('./chunk-BUIK7GUA.cjs');
|
|
|
24
24
|
var chunk2ADR2GSO_cjs = require('./chunk-2ADR2GSO.cjs');
|
|
25
25
|
var chunkZF2LDKQQ_cjs = require('./chunk-ZF2LDKQQ.cjs');
|
|
26
26
|
var chunkI6TGFUCO_cjs = require('./chunk-I6TGFUCO.cjs');
|
|
27
|
-
var
|
|
27
|
+
var chunkWNTAPVU5_cjs = require('./chunk-WNTAPVU5.cjs');
|
|
28
|
+
var chunkAQO3NSRG_cjs = require('./chunk-AQO3NSRG.cjs');
|
|
28
29
|
var chunkIWBGCBR6_cjs = require('./chunk-IWBGCBR6.cjs');
|
|
29
30
|
var chunkXSX2UU6Y_cjs = require('./chunk-XSX2UU6Y.cjs');
|
|
30
31
|
var chunk3EE6LVWT_cjs = require('./chunk-3EE6LVWT.cjs');
|
|
@@ -453,7 +454,7 @@ function registryPath(cwd) {
|
|
|
453
454
|
return path.join(cwd, REGISTRY_RELATIVE_PATH);
|
|
454
455
|
}
|
|
455
456
|
async function loadRegistry(cwd) {
|
|
456
|
-
return
|
|
457
|
+
return chunkJ2UROOIG_cjs.readVersionedJson({
|
|
457
458
|
path: registryPath(cwd),
|
|
458
459
|
currentVersion: SCHEMA_VERSION,
|
|
459
460
|
defaultValue: () => ({}),
|
|
@@ -477,7 +478,7 @@ async function saveRegistry(cwd, agents2) {
|
|
|
477
478
|
}
|
|
478
479
|
const path = registryPath(cwd);
|
|
479
480
|
await chunkZF2LDKQQ_cjs.withCwdMutex(`registry:${cwd}`, async () => {
|
|
480
|
-
await
|
|
481
|
+
await chunkJ2UROOIG_cjs.writeVersionedJson(path, serialized, SCHEMA_VERSION);
|
|
481
482
|
});
|
|
482
483
|
}
|
|
483
484
|
function toSerialized(agent) {
|
|
@@ -884,7 +885,7 @@ async function readLegacyFacts(jsonPath) {
|
|
|
884
885
|
}
|
|
885
886
|
async function writeMigratedFacts(cwd, jsonPath, facts) {
|
|
886
887
|
try {
|
|
887
|
-
for (const fact of facts) await
|
|
888
|
+
for (const fact of facts) await chunk554J7UQH_cjs.appendFactToMarkdown(cwd, fact);
|
|
888
889
|
await promises.unlink(jsonPath).catch(() => void 0);
|
|
889
890
|
chunkNUKRL3I6_cjs.diag(`[theokit-sdk] migrated ${facts.length} fact(s) from ${jsonPath} to MEMORY.md
|
|
890
891
|
`);
|
|
@@ -901,11 +902,11 @@ async function migrateLegacyJson(cwd, config) {
|
|
|
901
902
|
const key = `${cwd}::${config.namespace ?? "default"}::${config.scope ?? "agent"}::${config.userId ?? "default"}`;
|
|
902
903
|
if (migrationRun.has(key)) return { migrated: false, factCount: 0, reason: "already-migrated" };
|
|
903
904
|
migrationRun.add(key);
|
|
904
|
-
const jsonPath =
|
|
905
|
+
const jsonPath = chunk554J7UQH_cjs.legacyMemoryJsonPath(cwd, config);
|
|
905
906
|
if (!await fileExists(jsonPath)) {
|
|
906
907
|
return { migrated: false, factCount: 0, reason: "no-legacy-json" };
|
|
907
908
|
}
|
|
908
|
-
if (await fileExists(
|
|
909
|
+
if (await fileExists(chunk554J7UQH_cjs.memoryMdPath(cwd))) {
|
|
909
910
|
chunkNUKRL3I6_cjs.diag(
|
|
910
911
|
`[theokit-sdk] memory migration skipped: both MEMORY.md and legacy JSON exist at ${jsonPath}; leaving both intact
|
|
911
912
|
`
|
|
@@ -932,21 +933,21 @@ function extractMemoryKind(message) {
|
|
|
932
933
|
const declared = match?.[1];
|
|
933
934
|
if (declared === void 0) return void 0;
|
|
934
935
|
const lowered = declared.toLowerCase();
|
|
935
|
-
return
|
|
936
|
+
return chunk554J7UQH_cjs.MEMORY_KINDS.includes(lowered) ? lowered : void 0;
|
|
936
937
|
}
|
|
937
|
-
async function readMemoryFacts(cwd, config) {
|
|
938
|
+
async function readMemoryFacts(cwd, config, memoryHome) {
|
|
938
939
|
if (!config.enabled) return [];
|
|
939
940
|
await migrateLegacyJson(cwd, config);
|
|
940
|
-
return
|
|
941
|
+
return chunk554J7UQH_cjs.readFacts(cwd, config, memoryHome);
|
|
941
942
|
}
|
|
942
|
-
async function appendMemoryFact(cwd, config, fact) {
|
|
943
|
+
async function appendMemoryFact(cwd, config, fact, memoryHome) {
|
|
943
944
|
if (!config.enabled) return;
|
|
944
945
|
await migrateLegacyJson(cwd, config);
|
|
945
946
|
const sanitized = {
|
|
946
947
|
text: chunkJTB5Q42C_cjs.redactSecrets(fact.text),
|
|
947
948
|
...fact.kind === void 0 ? {} : { kind: fact.kind }
|
|
948
949
|
};
|
|
949
|
-
await
|
|
950
|
+
await chunk554J7UQH_cjs.appendFact(cwd, config, sanitized, memoryHome);
|
|
950
951
|
}
|
|
951
952
|
|
|
952
953
|
// src/internal/runtime/fixtures/fixture-scripts.ts
|
|
@@ -2133,6 +2134,10 @@ function resolveSessionDir(local) {
|
|
|
2133
2134
|
}
|
|
2134
2135
|
return chunkBUIK7GUA_cjs.defaultBaseDir();
|
|
2135
2136
|
}
|
|
2137
|
+
function explicitSessionDir(local) {
|
|
2138
|
+
if (local?.sessionDir === void 0 && local?.baseDir === void 0) return void 0;
|
|
2139
|
+
return resolveSessionDir(local);
|
|
2140
|
+
}
|
|
2136
2141
|
var SCHEMA_VERSION2 = 1;
|
|
2137
2142
|
var FILE_NAME = "personality.json";
|
|
2138
2143
|
function emptyState() {
|
|
@@ -2158,14 +2163,14 @@ async function readState(filePath) {
|
|
|
2158
2163
|
try {
|
|
2159
2164
|
parsed = JSON.parse(raw);
|
|
2160
2165
|
} catch {
|
|
2161
|
-
|
|
2166
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
2162
2167
|
"personality-store-json-parse",
|
|
2163
2168
|
"[theokit-sdk] personality.json is malformed; treating as empty"
|
|
2164
2169
|
);
|
|
2165
2170
|
return emptyState();
|
|
2166
2171
|
}
|
|
2167
2172
|
if (!isStateV1(parsed)) {
|
|
2168
|
-
|
|
2173
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
2169
2174
|
"personality-store-bad-version",
|
|
2170
2175
|
`[theokit-sdk] personality.json has unknown version; treating as empty (file kept untouched)`
|
|
2171
2176
|
);
|
|
@@ -2196,7 +2201,7 @@ var PersonalityStore = class {
|
|
|
2196
2201
|
try {
|
|
2197
2202
|
await this.#persist(agentId, slug);
|
|
2198
2203
|
} catch (err) {
|
|
2199
|
-
|
|
2204
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
2200
2205
|
`personality-store-persist-failure-${agentId}`,
|
|
2201
2206
|
`[theokit-sdk] personality persist failed for ${chunkJTB5Q42C_cjs.redactSecrets(agentId)}: ${chunkJTB5Q42C_cjs.redactSecrets(
|
|
2202
2207
|
err.message
|
|
@@ -2213,7 +2218,7 @@ var PersonalityStore = class {
|
|
|
2213
2218
|
try {
|
|
2214
2219
|
state = await readState(filePath);
|
|
2215
2220
|
} catch (err) {
|
|
2216
|
-
|
|
2221
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
2217
2222
|
`personality-store-hydrate-failure-${agentId}`,
|
|
2218
2223
|
`[theokit-sdk] personality hydrate failed for ${chunkJTB5Q42C_cjs.redactSecrets(agentId)}: ${chunkJTB5Q42C_cjs.redactSecrets(
|
|
2219
2224
|
err.message
|
|
@@ -2242,7 +2247,7 @@ var PersonalityStore = class {
|
|
|
2242
2247
|
});
|
|
2243
2248
|
}
|
|
2244
2249
|
#filePath() {
|
|
2245
|
-
return path.join(
|
|
2250
|
+
return path.join(chunkAQO3NSRG_cjs.getTheokitHome(this.#cwd), FILE_NAME);
|
|
2246
2251
|
}
|
|
2247
2252
|
};
|
|
2248
2253
|
|
|
@@ -2603,7 +2608,7 @@ var HooksExecutor = class {
|
|
|
2603
2608
|
this.config = {};
|
|
2604
2609
|
return;
|
|
2605
2610
|
}
|
|
2606
|
-
this.config = await
|
|
2611
|
+
this.config = await chunkP6H23T43_cjs.loadHookConfig(this.cwd);
|
|
2607
2612
|
}
|
|
2608
2613
|
/** Fire every hook registered for `event` and aggregate the decisions. */
|
|
2609
2614
|
async run(payload) {
|
|
@@ -2799,7 +2804,7 @@ async function runPostRunLifecycle(inputs) {
|
|
|
2799
2804
|
if (memoryProvider?.recordSessionSummary !== void 0) {
|
|
2800
2805
|
await memoryProvider.recordSessionSummary(summaryArgs);
|
|
2801
2806
|
} else {
|
|
2802
|
-
await
|
|
2807
|
+
await chunk554J7UQH_cjs.writeSessionSummary(summaryArgs);
|
|
2803
2808
|
}
|
|
2804
2809
|
if (!shouldUsePortMemoryPath()) {
|
|
2805
2810
|
void memoryGlue.syncIfReady();
|
|
@@ -2926,13 +2931,24 @@ var SkillsManager = class {
|
|
|
2926
2931
|
await this.refresh();
|
|
2927
2932
|
}
|
|
2928
2933
|
async refresh() {
|
|
2929
|
-
const
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2934
|
+
const roots = this.skillsDir === void 0 ? [
|
|
2935
|
+
...chunkAQO3NSRG_cjs.projectConfigRoots(this.cwd).map((root) => path.join(root, "skills")),
|
|
2936
|
+
...(await chunkWNTAPVU5_cjs.pluginBundleDirs(this.cwd)).map((bundle) => path.join(bundle, "skills"))
|
|
2937
|
+
] : [this.skillsDir];
|
|
2938
|
+
const discovered = [];
|
|
2939
|
+
const seen = /* @__PURE__ */ new Set();
|
|
2940
|
+
for (const root of roots) {
|
|
2941
|
+
for (const skill of await chunk3YJNUKYN_cjs.discoverSkills(root, {
|
|
2942
|
+
onInvalidSkill: (info) => {
|
|
2943
|
+
chunkNUKRL3I6_cjs.diag(`[theokit-sdk] skill ${info.name} skipped (${info.code}): ${info.message}
|
|
2933
2944
|
`);
|
|
2945
|
+
}
|
|
2946
|
+
})) {
|
|
2947
|
+
if (seen.has(skill.name)) continue;
|
|
2948
|
+
seen.add(skill.name);
|
|
2949
|
+
discovered.push(skill);
|
|
2934
2950
|
}
|
|
2935
|
-
}
|
|
2951
|
+
}
|
|
2936
2952
|
this.skills = this.mergeInline(discovered);
|
|
2937
2953
|
}
|
|
2938
2954
|
/** M22 — merge inline skills over discovered ones; inline wins on a name conflict. */
|
|
@@ -3412,7 +3428,7 @@ var HISTOGRAM_NAMES = {
|
|
|
3412
3428
|
};
|
|
3413
3429
|
function safeRequire(moduleName) {
|
|
3414
3430
|
try {
|
|
3415
|
-
const r = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-
|
|
3431
|
+
const r = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-SMUAG2DY.cjs', document.baseURI).href)));
|
|
3416
3432
|
return r(moduleName);
|
|
3417
3433
|
} catch {
|
|
3418
3434
|
return void 0;
|
|
@@ -3640,7 +3656,7 @@ var cachedOtel;
|
|
|
3640
3656
|
function loadOtel() {
|
|
3641
3657
|
if (cachedOtel === void 0) {
|
|
3642
3658
|
try {
|
|
3643
|
-
const r = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-
|
|
3659
|
+
const r = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('chunk-SMUAG2DY.cjs', document.baseURI).href)));
|
|
3644
3660
|
const mod = r("@opentelemetry/api");
|
|
3645
3661
|
cachedOtel = mod;
|
|
3646
3662
|
} catch {
|
|
@@ -3959,7 +3975,7 @@ function applyAggregateCap(sources, maxTotal) {
|
|
|
3959
3975
|
}
|
|
3960
3976
|
const remaining = maxTotal - totalBytes;
|
|
3961
3977
|
if (remaining > 0) {
|
|
3962
|
-
const { finalContent } =
|
|
3978
|
+
const { finalContent } = chunk7BG5UH3T_cjs.truncateWithMarker(s.content, remaining);
|
|
3963
3979
|
kept.push({ ...s, content: finalContent, truncated: true });
|
|
3964
3980
|
totalBytes = maxTotal;
|
|
3965
3981
|
} else {
|
|
@@ -4033,9 +4049,9 @@ var FileContextManager = class {
|
|
|
4033
4049
|
this.lastScope = [...touchedFiles];
|
|
4034
4050
|
const config = await loadContextConfig(this.cwd);
|
|
4035
4051
|
const legacy = await loadSources(config, this.cwd);
|
|
4036
|
-
const maxBytesPerFile = this.settings.maxBytesPerFile ??
|
|
4052
|
+
const maxBytesPerFile = this.settings.maxBytesPerFile ?? chunk7BG5UH3T_cjs.DEFAULT_MAX_BYTES_PER_FILE;
|
|
4037
4053
|
const maxBytesTotal = this.settings.maxBytesTotal ?? DEFAULT_MAX_BYTES_TOTAL;
|
|
4038
|
-
const discovered = await
|
|
4054
|
+
const discovered = await chunk7BG5UH3T_cjs.runDiscovery({
|
|
4039
4055
|
cwd: this.cwd,
|
|
4040
4056
|
maxBytesPerFile,
|
|
4041
4057
|
skipLegacyTheokitContext: true,
|
|
@@ -4104,7 +4120,7 @@ async function loadContextConfig(cwd) {
|
|
|
4104
4120
|
});
|
|
4105
4121
|
if (mdEntities.length > 0) {
|
|
4106
4122
|
if (fs.existsSync(jsonPath)) {
|
|
4107
|
-
|
|
4123
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
4108
4124
|
"context-both-present",
|
|
4109
4125
|
"[theokit-sdk] both .theokit/context/ and .theokit/context.json detected \u2014 using markdown; remove context.json"
|
|
4110
4126
|
);
|
|
@@ -4114,7 +4130,7 @@ async function loadContextConfig(cwd) {
|
|
|
4114
4130
|
};
|
|
4115
4131
|
}
|
|
4116
4132
|
if (!fs.existsSync(jsonPath)) return { sources: [] };
|
|
4117
|
-
|
|
4133
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
4118
4134
|
"context-json-deprecated",
|
|
4119
4135
|
"[theokit-sdk] .theokit/context.json is deprecated; migrate to .theokit/context/<name>.md via theokit-migrate-config"
|
|
4120
4136
|
);
|
|
@@ -4248,25 +4264,37 @@ var PluginsManager = class {
|
|
|
4248
4264
|
}
|
|
4249
4265
|
await this.refresh();
|
|
4250
4266
|
}
|
|
4251
|
-
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: MD-first + JSON fallback + both-present detection per plugin folder — branch table is clearer inlined.
|
|
4252
4267
|
async refresh() {
|
|
4253
4268
|
this.plugins = [];
|
|
4254
|
-
const pluginsRoot
|
|
4269
|
+
for (const pluginsRoot of chunkAQO3NSRG_cjs.pluginBundleRoots(this.cwd)) {
|
|
4270
|
+
await this.refreshRoot(pluginsRoot);
|
|
4271
|
+
}
|
|
4272
|
+
}
|
|
4273
|
+
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: MD-first + JSON fallback + CLI location + both-present detection per plugin folder — branch table is clearer inlined.
|
|
4274
|
+
async refreshRoot(pluginsRoot) {
|
|
4255
4275
|
const entries = await chunkIWBGCBR6_cjs.readWorkspaceDir(pluginsRoot, "plugins_read_error", "plugins directory");
|
|
4256
4276
|
for (const entry of entries) {
|
|
4257
4277
|
if (!entry.isDirectory()) continue;
|
|
4258
4278
|
const folderName = entry.name;
|
|
4279
|
+
const cliPath = path.join(pluginsRoot, folderName, ".claude-plugin", "plugin.json");
|
|
4280
|
+
if (fs.existsSync(cliPath)) {
|
|
4281
|
+
const cliMetadata = await loadPluginManifestFromJson(cliPath, folderName);
|
|
4282
|
+
if (this.enabled === void 0 || this.enabled.includes(cliMetadata.name)) {
|
|
4283
|
+
this.plugins.push(cliMetadata);
|
|
4284
|
+
}
|
|
4285
|
+
continue;
|
|
4286
|
+
}
|
|
4259
4287
|
const mdPath = path.join(pluginsRoot, folderName, "PLUGIN.md");
|
|
4260
4288
|
const jsonPath = path.join(pluginsRoot, folderName, "plugin.json");
|
|
4261
4289
|
const metadata = fs.existsSync(mdPath) ? await loadPluginManifestFromMarkdown(pluginsRoot, folderName) : await loadPluginManifestFromJson(jsonPath, folderName);
|
|
4262
4290
|
if (fs.existsSync(mdPath) && fs.existsSync(jsonPath)) {
|
|
4263
|
-
|
|
4291
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
4264
4292
|
`plugin-${folderName}-both`,
|
|
4265
4293
|
`[theokit-sdk] both ${folderName}/PLUGIN.md and ${folderName}/plugin.json detected \u2014 using markdown; remove plugin.json`
|
|
4266
4294
|
);
|
|
4267
4295
|
}
|
|
4268
4296
|
if (!fs.existsSync(mdPath) && fs.existsSync(jsonPath)) {
|
|
4269
|
-
|
|
4297
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
4270
4298
|
"plugin-json-deprecated",
|
|
4271
4299
|
"[theokit-sdk] plugin.json manifests are deprecated; migrate to PLUGIN.md via theokit-migrate-config"
|
|
4272
4300
|
);
|
|
@@ -7014,7 +7042,7 @@ function applyPersonalityFilter(exposedTools, whitelist, opts) {
|
|
|
7014
7042
|
if (exposedSet.has(name)) continue;
|
|
7015
7043
|
const hint = suggestClosest(name, exposedSet);
|
|
7016
7044
|
const message = hint !== void 0 ? `[theokit-sdk] personality "${opts?.personalityName ?? "?"}" references unknown tool "${name}"; did you mean "${hint}"?` : `[theokit-sdk] personality "${opts?.personalityName ?? "?"}" references unknown tool "${name}" (not exposed)`;
|
|
7017
|
-
|
|
7045
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
7018
7046
|
`personality-tool-missing|${opts?.agentId ?? "?"}|${opts?.personalityName ?? "?"}|${name}`,
|
|
7019
7047
|
message
|
|
7020
7048
|
);
|
|
@@ -7739,7 +7767,7 @@ async function reloadLocalAgent(agent) {
|
|
|
7739
7767
|
if (agent.context !== void 0) await agent.context.refresh();
|
|
7740
7768
|
if (agent.skillsManager !== void 0) await agent.skillsManager.refresh();
|
|
7741
7769
|
if (agent.pluginsManager !== void 0) await agent.pluginsManager.refresh();
|
|
7742
|
-
return await
|
|
7770
|
+
return await chunkWNTAPVU5_cjs.loadSubagents(
|
|
7743
7771
|
agent.workspaceCwd,
|
|
7744
7772
|
agent.settingSourcesIncludeProject,
|
|
7745
7773
|
agent.options.agents
|
|
@@ -7747,7 +7775,7 @@ async function reloadLocalAgent(agent) {
|
|
|
7747
7775
|
}
|
|
7748
7776
|
async function persistActiveMemoryTranscript(cwd, transcript) {
|
|
7749
7777
|
try {
|
|
7750
|
-
const dir = path.join(
|
|
7778
|
+
const dir = path.join(chunk554J7UQH_cjs.memoryDir(cwd), "transcripts", "active-memory");
|
|
7751
7779
|
const file = path.join(dir, `${transcript.runId}.json`);
|
|
7752
7780
|
await chunkI6TGFUCO_cjs.atomicWriteJson(file, transcript);
|
|
7753
7781
|
} catch (cause) {
|
|
@@ -8377,7 +8405,7 @@ function createMemorySearchTool(opts) {
|
|
|
8377
8405
|
};
|
|
8378
8406
|
}
|
|
8379
8407
|
function createMemoryGetTool(opts) {
|
|
8380
|
-
const memoryRoot = path.resolve(
|
|
8408
|
+
const memoryRoot = path.resolve(chunk554J7UQH_cjs.memoryDir(opts.cwd));
|
|
8381
8409
|
return {
|
|
8382
8410
|
name: "memory_get",
|
|
8383
8411
|
description: GET_DESCRIPTION,
|
|
@@ -8483,7 +8511,7 @@ var LocalAgentMemory = class {
|
|
|
8483
8511
|
const openOpts = { cwd: this.workspaceCwd };
|
|
8484
8512
|
if (embedding !== void 0) openOpts.embedding = embedding;
|
|
8485
8513
|
if (cfg?.backend !== void 0) openOpts.backend = cfg.backend;
|
|
8486
|
-
this.index = await
|
|
8514
|
+
this.index = await chunk554J7UQH_cjs.IndexManager.open(openOpts);
|
|
8487
8515
|
await this.index.sync();
|
|
8488
8516
|
this.toolsCache = [
|
|
8489
8517
|
createMemorySearchTool({ index: this.index }),
|
|
@@ -8741,7 +8769,7 @@ function createLocalAgentMemoryProvider(opts) {
|
|
|
8741
8769
|
return { facts: [], systemPromptAdditions: summary };
|
|
8742
8770
|
},
|
|
8743
8771
|
async recordSessionSummary(args) {
|
|
8744
|
-
await
|
|
8772
|
+
await chunk554J7UQH_cjs.writeSessionSummary(args);
|
|
8745
8773
|
},
|
|
8746
8774
|
async sync(handle) {
|
|
8747
8775
|
const state = handle[INTERNAL_LAM_KEY];
|
|
@@ -8831,7 +8859,7 @@ function addEntity(byName, entity, origin, collisionMap) {
|
|
|
8831
8859
|
);
|
|
8832
8860
|
}
|
|
8833
8861
|
if (origin === "project" && collisionMap?.has(fm.name)) {
|
|
8834
|
-
|
|
8862
|
+
chunkP6H23T43_cjs.warnOnce(
|
|
8835
8863
|
`personality-collision-${fm.name}`,
|
|
8836
8864
|
`[theokit-sdk] personality "${fm.name}" overridden by project preset`
|
|
8837
8865
|
);
|
|
@@ -8881,14 +8909,14 @@ async function performPersonalitySwitch(args) {
|
|
|
8881
8909
|
|
|
8882
8910
|
// src/internal/local-agent/local-agent-personality-extensions.ts
|
|
8883
8911
|
function resolveActivePersonalityPreset(args) {
|
|
8884
|
-
const forkCtx =
|
|
8912
|
+
const forkCtx = chunkP6H23T43_cjs.currentPersonalityContext();
|
|
8885
8913
|
const slug = forkCtx !== void 0 ? forkCtx.slug : args.personalityStore.active(args.agentId);
|
|
8886
8914
|
if (slug === void 0) return void 0;
|
|
8887
8915
|
return args.personalityRegistry?.get(slug);
|
|
8888
8916
|
}
|
|
8889
8917
|
async function ensurePersonalityRegistryIfNeeded(args) {
|
|
8890
8918
|
if (args.personalityRegistry !== void 0) return args.personalityRegistry;
|
|
8891
|
-
const forkSlug =
|
|
8919
|
+
const forkSlug = chunkP6H23T43_cjs.currentPersonalityContext()?.slug;
|
|
8892
8920
|
const ownSlug = args.personalityStore.active(args.agentId);
|
|
8893
8921
|
if (forkSlug === void 0 && ownSlug === void 0) return void 0;
|
|
8894
8922
|
return await PersonalityRegistry.load(args.workspaceCwd);
|
|
@@ -8902,8 +8930,8 @@ ${preset.systemPrompt}`;
|
|
|
8902
8930
|
}
|
|
8903
8931
|
async function localAgentUsePersonality(args) {
|
|
8904
8932
|
if (args.disposed) throw new Error("Agent has been disposed");
|
|
8905
|
-
if (
|
|
8906
|
-
|
|
8933
|
+
if (chunkP6H23T43_cjs.currentPersonalityContext() !== void 0) {
|
|
8934
|
+
chunkP6H23T43_cjs.warnPersonalitySwitchInsideFork(args.agentId);
|
|
8907
8935
|
return null;
|
|
8908
8936
|
}
|
|
8909
8937
|
let registry = args.personalityRegistry;
|
|
@@ -8965,24 +8993,26 @@ async function* localAgentStreamToCompletion(agent, message, options) {
|
|
|
8965
8993
|
async function localAgentFork(parent, options) {
|
|
8966
8994
|
const { forkAgentImpl } = await import('./fork-agent-Y2IK2RYU.cjs');
|
|
8967
8995
|
const { getAgentFacade } = await import('./agent-factory-registry-UU46BUMU.cjs');
|
|
8968
|
-
const { withPersonalityContext } = await import('./context-
|
|
8996
|
+
const { withPersonalityContext } = await import('./context-LCKNH2XI.cjs');
|
|
8969
8997
|
const create = getAgentFacade().create;
|
|
8970
8998
|
return withPersonalityContext(
|
|
8971
8999
|
{ slug: parent.personalitySlugSnapshot, isFork: true },
|
|
8972
9000
|
() => forkAgentImpl(parent, options, { create })
|
|
8973
9001
|
);
|
|
8974
9002
|
}
|
|
8975
|
-
async function persistMemoryFactIfWritePrompt(workspaceCwd, memoryConfig, userText) {
|
|
9003
|
+
async function persistMemoryFactIfWritePrompt(workspaceCwd, memoryConfig, userText, memoryHome) {
|
|
8976
9004
|
if (memoryConfig?.enabled !== true) return;
|
|
8977
9005
|
if (!isMemoryWritePrompt(userText)) return;
|
|
8978
9006
|
const fact = extractMemoryFact(userText);
|
|
8979
9007
|
if (fact.length === 0) return;
|
|
8980
9008
|
const kind = extractMemoryKind(userText);
|
|
8981
9009
|
await safeCall(
|
|
8982
|
-
() => appendMemoryFact(
|
|
8983
|
-
|
|
8984
|
-
|
|
8985
|
-
|
|
9010
|
+
() => appendMemoryFact(
|
|
9011
|
+
workspaceCwd,
|
|
9012
|
+
memoryConfig,
|
|
9013
|
+
{ text: fact, ...kind === void 0 ? {} : { kind } },
|
|
9014
|
+
memoryHome
|
|
9015
|
+
),
|
|
8986
9016
|
void 0,
|
|
8987
9017
|
"memory write"
|
|
8988
9018
|
);
|
|
@@ -9308,8 +9338,18 @@ async function executeSendLocked(inputs, message, options) {
|
|
|
9308
9338
|
});
|
|
9309
9339
|
const priorMessages = [...chunkKKK3FZ4A_cjs.getSessionMessages(inputs.agentId)];
|
|
9310
9340
|
chunkKKK3FZ4A_cjs.appendSessionMessage(inputs.agentId, { role: "user", text: userText });
|
|
9311
|
-
|
|
9312
|
-
|
|
9341
|
+
const memoryHome = explicitSessionDir(inputs.options.local);
|
|
9342
|
+
await persistMemoryFactIfWritePrompt(
|
|
9343
|
+
inputs.workspaceCwd,
|
|
9344
|
+
inputs.options.memory,
|
|
9345
|
+
userText,
|
|
9346
|
+
memoryHome
|
|
9347
|
+
);
|
|
9348
|
+
const memoryFacts = await readMemoryForSend(
|
|
9349
|
+
inputs.workspaceCwd,
|
|
9350
|
+
inputs.options.memory,
|
|
9351
|
+
memoryHome
|
|
9352
|
+
);
|
|
9313
9353
|
const portPathActive = shouldUsePortMemoryPath();
|
|
9314
9354
|
const legacyTools = portPathActive ? void 0 : await inputs.memoryGlue.ensureTools();
|
|
9315
9355
|
const legacySummary = portPathActive ? void 0 : await inputs.memoryGlue.runActiveMemoryIfEnabled(userText, priorMessages, inputs.telemetry);
|
|
@@ -9371,9 +9411,9 @@ function buildCompletionCheckDeps() {
|
|
|
9371
9411
|
}
|
|
9372
9412
|
};
|
|
9373
9413
|
}
|
|
9374
|
-
function readMemoryForSend(workspaceCwd, memoryConfig) {
|
|
9414
|
+
function readMemoryForSend(workspaceCwd, memoryConfig, memoryHome) {
|
|
9375
9415
|
if (memoryConfig?.enabled !== true) return Promise.resolve([]);
|
|
9376
|
-
return safeCall(() => readMemoryFacts(workspaceCwd, memoryConfig), [], "memory read");
|
|
9416
|
+
return safeCall(() => readMemoryFacts(workspaceCwd, memoryConfig, memoryHome), [], "memory read");
|
|
9377
9417
|
}
|
|
9378
9418
|
|
|
9379
9419
|
// src/internal/local-agent/local-agent-task-wrap.ts
|
|
@@ -9513,7 +9553,7 @@ var LocalAgent = class {
|
|
|
9513
9553
|
if (this.pluginsManager !== void 0) await this.pluginsManager.initialize();
|
|
9514
9554
|
const codePlugins = chunkBV2MWEMV_cjs.extractCodePlugins(this.options.plugins);
|
|
9515
9555
|
await this.pluginManagerCode.initialize(codePlugins);
|
|
9516
|
-
this.resolvedSubagents = await
|
|
9556
|
+
this.resolvedSubagents = await chunkWNTAPVU5_cjs.loadSubagents(
|
|
9517
9557
|
this.workspaceCwd,
|
|
9518
9558
|
this.settingSourcesIncludeProject,
|
|
9519
9559
|
this.options.agents
|
|
@@ -10475,7 +10515,7 @@ var Agent = class _Agent {
|
|
|
10475
10515
|
*/
|
|
10476
10516
|
static async describe(agentId) {
|
|
10477
10517
|
const agent = await getRegisteredAgentOrThrow(agentId);
|
|
10478
|
-
const { loadSubagents: loadSubagents2 } = await import('./subagents-loader-
|
|
10518
|
+
const { loadSubagents: loadSubagents2 } = await import('./subagents-loader-X5QKODCL.cjs');
|
|
10479
10519
|
const settingSources = agent.options.local?.settingSources;
|
|
10480
10520
|
const subagents = await loadSubagents2(
|
|
10481
10521
|
agent.cwd ?? process.cwd(),
|
|
@@ -10560,5 +10600,5 @@ exports.computeCost = computeCost;
|
|
|
10560
10600
|
exports.generateCronId = generateCronId;
|
|
10561
10601
|
exports.getPricingEntry = getPricingEntry;
|
|
10562
10602
|
exports.openRouterMemoryEmbeddingProviderAdapter = openRouterMemoryEmbeddingProviderAdapter;
|
|
10563
|
-
//# sourceMappingURL=chunk-
|
|
10564
|
-
//# sourceMappingURL=chunk-
|
|
10603
|
+
//# sourceMappingURL=chunk-SMUAG2DY.cjs.map
|
|
10604
|
+
//# sourceMappingURL=chunk-SMUAG2DY.cjs.map
|