@corenel/tools-node 0.8.1 → 0.8.3
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/promptHost.d.ts +8 -0
- package/dist/promptHost.d.ts.map +1 -1
- package/dist/promptHost.js +11 -7
- package/dist/promptHost.js.map +1 -1
- package/package.json +4 -4
package/dist/promptHost.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import type { AsyncFileBackend } from '@prompd/core';
|
|
1
2
|
import type { FileService } from '@corenel/protocol';
|
|
2
3
|
import type { PromptHost } from '@corenel/harness/prompts/host';
|
|
4
|
+
/** Stream non-source files (context assets) to the compiler from a FileService.
|
|
5
|
+
* Shared with the sidecar's workflow host (compileIn), so both compile alike. */
|
|
6
|
+
export declare function promptBackend(svc: FileService): AsyncFileBackend;
|
|
7
|
+
/** Pre-load every source (only the paths `keep` accepts, when given) so the
|
|
8
|
+
* synchronous Nunjucks {% include %} loader can resolve inherits against
|
|
9
|
+
* siblings. Shared with the sidecar's workflow host. */
|
|
10
|
+
export declare function preloadPromptSources(svc: FileService, keep?: (path: string) => boolean): Promise<Record<string, string>>;
|
|
3
11
|
/** A node PromptHost over a FileService workspace. setPromptHost(nodePromptHost(ws))
|
|
4
12
|
* then makes the harness prompt subsystem (composeAgentSystem) run in node. */
|
|
5
13
|
export declare function nodePromptHost(workspace: FileService, project?: FileService): PromptHost;
|
package/dist/promptHost.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptHost.d.ts","sourceRoot":"","sources":["../promptHost.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"promptHost.d.ts","sourceRoot":"","sources":["../promptHost.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,+BAA+B,CAAC;AAM/E;iFACiF;AACjF,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,gBAAgB,CAYhE;AAED;;wDAEwD;AACxD,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAO9H;AAWD;+EAC+E;AAC/E,wBAAgB,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,CAqCxF"}
|
package/dist/promptHost.js
CHANGED
|
@@ -9,8 +9,9 @@ import { normalizeFilePath, flattenFiles } from '@corenel/protocol';
|
|
|
9
9
|
import { nodeToolGuidance } from './toolGuidance';
|
|
10
10
|
const parser = new PrompdParser();
|
|
11
11
|
const compiler = new PrompdCompiler();
|
|
12
|
-
/** Stream non-source files (context assets) to the compiler from a FileService.
|
|
13
|
-
|
|
12
|
+
/** Stream non-source files (context assets) to the compiler from a FileService.
|
|
13
|
+
* Shared with the sidecar's workflow host (compileIn), so both compile alike. */
|
|
14
|
+
export function promptBackend(svc) {
|
|
14
15
|
return {
|
|
15
16
|
async readFile(p) {
|
|
16
17
|
try {
|
|
@@ -28,11 +29,14 @@ function backend(svc) {
|
|
|
28
29
|
},
|
|
29
30
|
};
|
|
30
31
|
}
|
|
31
|
-
/** Pre-load every
|
|
32
|
-
* loader can resolve inherits against
|
|
33
|
-
|
|
32
|
+
/** Pre-load every source (only the paths `keep` accepts, when given) so the
|
|
33
|
+
* synchronous Nunjucks {% include %} loader can resolve inherits against
|
|
34
|
+
* siblings. Shared with the sidecar's workflow host. */
|
|
35
|
+
export async function preloadPromptSources(svc, keep) {
|
|
34
36
|
const out = {};
|
|
35
37
|
for (const f of flattenFiles(await svc.list())) {
|
|
38
|
+
if (keep && !keep(f.path))
|
|
39
|
+
continue;
|
|
36
40
|
try {
|
|
37
41
|
out[f.path] = await svc.read(f.path);
|
|
38
42
|
}
|
|
@@ -67,10 +71,10 @@ export function nodePromptHost(workspace, project) {
|
|
|
67
71
|
parse: (source) => ({ meta: (parser.parseContent(source).metadata ?? {}) }),
|
|
68
72
|
compileBody: (source, values) => compile(source, values),
|
|
69
73
|
compileTemplate: async (path, liveSrc, values) => {
|
|
70
|
-
const sources = await
|
|
74
|
+
const sources = await preloadPromptSources(workspace);
|
|
71
75
|
const p = normalizeFilePath(path);
|
|
72
76
|
sources[p] = liveSrc; // the (possibly default-fallback) template content
|
|
73
|
-
return compile('', values, new HybridFileSystem(sources,
|
|
77
|
+
return compile('', values, new HybridFileSystem(sources, promptBackend(workspace)), '/' + p);
|
|
74
78
|
},
|
|
75
79
|
siteIndex: () => '', // no site index in node (the help chat is browser-only)
|
|
76
80
|
/* Who the agent says it IS. Without this, `composeAgentSystem` falls back
|
package/dist/promptHost.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promptHost.js","sourceRoot":"","sources":["../promptHost.ts"],"names":[],"mappings":"AAAA;;;;;qEAKqE;AACrE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;AAClC,MAAM,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;AAEtC
|
|
1
|
+
{"version":3,"file":"promptHost.js","sourceRoot":"","sources":["../promptHost.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@corenel/tools-node",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.3",
|
|
4
4
|
"license": "Elastic-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Corenel node capabilities — the tools-web twin. A disk-backed FileService (the harness file tools + node PromptHost workspace) over node:fs, confined to a root. Shell/secrets/~/.corenel to follow.",
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
}
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@prompd/core": "0.
|
|
19
|
-
"@corenel/
|
|
20
|
-
"@corenel/
|
|
18
|
+
"@prompd/core": "0.6.0",
|
|
19
|
+
"@corenel/harness": "0.18.0",
|
|
20
|
+
"@corenel/protocol": "0.16.0"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@types/node": "^24.13.1",
|