@corenel/harness 0.22.0 → 0.24.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/README.md +48 -0
- package/dist/approvals/service.d.ts +3 -0
- package/dist/approvals/service.d.ts.map +1 -1
- package/dist/approvals/service.js +13 -0
- package/dist/approvals/service.js.map +1 -1
- package/dist/approvals/suggest.js +1 -1
- package/dist/approvals/suggest.js.map +1 -1
- package/dist/chat/engine.d.ts +3 -0
- package/dist/chat/engine.d.ts.map +1 -1
- package/dist/chat/engine.js +10 -6
- package/dist/chat/engine.js.map +1 -1
- package/dist/chat/types.d.ts +1 -0
- package/dist/chat/types.d.ts.map +1 -1
- package/dist/core/loop.d.ts.map +1 -1
- package/dist/core/loop.js +138 -81
- package/dist/core/loop.js.map +1 -1
- package/dist/core/spawn.d.ts +3 -1
- package/dist/core/spawn.d.ts.map +1 -1
- package/dist/core/spawn.js +16 -1
- package/dist/core/spawn.js.map +1 -1
- package/dist/dag/executeNode.js +4 -4
- package/dist/dag/executeNode.js.map +1 -1
- package/dist/guardrail/builtins.d.ts.map +1 -1
- package/dist/guardrail/builtins.js +2 -0
- package/dist/guardrail/builtins.js.map +1 -1
- package/dist/guardrail/guardrail.d.ts +9 -0
- package/dist/guardrail/guardrail.d.ts.map +1 -1
- package/dist/guardrail/guardrail.js +13 -0
- package/dist/guardrail/guardrail.js.map +1 -1
- package/dist/guardrail/index.d.ts +3 -3
- package/dist/guardrail/index.d.ts.map +1 -1
- package/dist/guardrail/index.js +2 -2
- package/dist/guardrail/index.js.map +1 -1
- package/dist/guardrail/permission-service.d.ts +44 -3
- package/dist/guardrail/permission-service.d.ts.map +1 -1
- package/dist/guardrail/permission-service.js +58 -11
- package/dist/guardrail/permission-service.js.map +1 -1
- package/dist/guardrail/store.d.ts +4 -0
- package/dist/guardrail/store.d.ts.map +1 -1
- package/dist/guardrail/store.js +6 -0
- package/dist/guardrail/store.js.map +1 -1
- package/dist/prompts/config.d.ts +6 -2
- package/dist/prompts/config.d.ts.map +1 -1
- package/dist/prompts/config.js +6 -3
- package/dist/prompts/config.js.map +1 -1
- package/dist/prompts/host.d.ts +3 -2
- package/dist/prompts/host.d.ts.map +1 -1
- package/dist/prompts/host.js.map +1 -1
- package/dist/prompts/index.d.ts +8 -1
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +9 -7
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/library/defaults.generated.d.ts.map +1 -1
- package/dist/prompts/library/defaults.generated.js +15 -14
- package/dist/prompts/library/defaults.generated.js.map +1 -1
- package/dist/prompts/systemPrompts.d.ts +3 -0
- package/dist/prompts/systemPrompts.d.ts.map +1 -1
- package/dist/prompts/systemPrompts.js +1 -1
- package/dist/prompts/systemPrompts.js.map +1 -1
- package/dist/sessions/fileSessionStore.d.ts.map +1 -1
- package/dist/sessions/fileSessionStore.js +18 -4
- package/dist/sessions/fileSessionStore.js.map +1 -1
- package/dist/sessions/jsonl.d.ts +1 -0
- package/dist/sessions/jsonl.d.ts.map +1 -1
- package/dist/sessions/jsonl.js +10 -0
- package/dist/sessions/jsonl.js.map +1 -1
- package/dist/sidecar/accessTestRig.d.ts +9 -2
- package/dist/sidecar/accessTestRig.d.ts.map +1 -1
- package/dist/sidecar/accessTestRig.js +13 -6
- package/dist/sidecar/accessTestRig.js.map +1 -1
- package/dist/sidecar/host.d.ts +96 -10
- package/dist/sidecar/host.d.ts.map +1 -1
- package/dist/sidecar/host.js +328 -6
- package/dist/sidecar/host.js.map +1 -1
- package/dist/sidecar/memberGate.d.ts.map +1 -1
- package/dist/sidecar/memberGate.js +17 -0
- package/dist/sidecar/memberGate.js.map +1 -1
- package/dist/sidecar/server.d.ts +171 -6
- package/dist/sidecar/server.d.ts.map +1 -1
- package/dist/sidecar/server.js +793 -65
- package/dist/sidecar/server.js.map +1 -1
- package/dist/skills.d.ts +9 -1
- package/dist/skills.d.ts.map +1 -1
- package/dist/skills.js +22 -8
- package/dist/skills.js.map +1 -1
- package/dist/templateGuard.d.ts +21 -0
- package/dist/templateGuard.d.ts.map +1 -0
- package/dist/templateGuard.js +150 -0
- package/dist/templateGuard.js.map +1 -0
- package/dist/tools/builtins.d.ts +1 -0
- package/dist/tools/builtins.d.ts.map +1 -1
- package/dist/tools/builtins.js +33 -3
- package/dist/tools/builtins.js.map +1 -1
- package/dist/tools/callAgent.d.ts +6 -2
- package/dist/tools/callAgent.d.ts.map +1 -1
- package/dist/tools/callAgent.js +7 -3
- package/dist/tools/callAgent.js.map +1 -1
- package/dist/tools/files.d.ts.map +1 -1
- package/dist/tools/files.js +4 -0
- package/dist/tools/files.js.map +1 -1
- package/dist/tools/namespaces.d.ts +1 -1
- package/dist/tools/namespaces.d.ts.map +1 -1
- package/dist/tools/namespaces.js +6 -2
- package/dist/tools/namespaces.js.map +1 -1
- package/dist/tools/sessions.d.ts.map +1 -1
- package/dist/tools/sessions.js +1 -0
- package/dist/tools/sessions.js.map +1 -1
- package/dist/tools/skillTool.d.ts +29 -0
- package/dist/tools/skillTool.d.ts.map +1 -1
- package/dist/tools/skillTool.js +73 -10
- package/dist/tools/skillTool.js.map +1 -1
- package/dist/tools/web.d.ts.map +1 -1
- package/dist/tools/web.js +19 -5
- package/dist/tools/web.js.map +1 -1
- package/dist/tools/workflowTool.d.ts +2 -18
- package/dist/tools/workflowTool.d.ts.map +1 -1
- package/dist/tools/workflowTool.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../prompts/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../prompts/config.ts"],"names":[],"mappings":"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"}
|
package/dist/prompts/host.d.ts
CHANGED
|
@@ -36,8 +36,9 @@ export interface PromptHost {
|
|
|
36
36
|
/** @prompd/core: compile a standalone body with values (no inherits). */
|
|
37
37
|
compileBody(source: string, values: Record<string, unknown>): Promise<CompileOutput>;
|
|
38
38
|
/** @prompd/core: compile the config template at `path` (live source `liveSrc`)
|
|
39
|
-
* with inherits/includes resolved against the workspace
|
|
40
|
-
|
|
39
|
+
* with inherits/includes resolved against the workspace: `config` when given
|
|
40
|
+
* (one host's config, for a run bound to it), else `workspace` above. */
|
|
41
|
+
compileTemplate(path: string, liveSrc: string, values: Record<string, unknown>, config?: FileService): Promise<CompileOutput>;
|
|
41
42
|
/** The app/site index injected into the help-system prompt. */
|
|
42
43
|
siteIndex(): string;
|
|
43
44
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../prompts/host.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,yDAAyD;AACzD,MAAM,WAAW,YAAY;IAAG,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;AAChE,8DAA8D;AAC9D,MAAM,WAAW,aAAa;IAAG,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AAElD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,UAAU;IACzB,+DAA+D;IAC/D,SAAS,EAAE,WAAW,CAAC;IACvB,+DAA+D;IAC/D,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD;;;+DAG2D;IAC3D,QAAQ,CAAC,IAAI,cAAc,CAAC;IAC5B,uDAAuD;IACvD,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACpC,yEAAyE;IACzE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrF;
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../prompts/host.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,yDAAyD;AACzD,MAAM,WAAW,YAAY;IAAG,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;AAChE,8DAA8D;AAC9D,MAAM,WAAW,aAAa;IAAG,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AAElD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,UAAU;IACzB,+DAA+D;IAC/D,SAAS,EAAE,WAAW,CAAC;IACvB,+DAA+D;IAC/D,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD;;;+DAG2D;IAC3D,QAAQ,CAAC,IAAI,cAAc,CAAC;IAC5B,uDAAuD;IACvD,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACpC,yEAAyE;IACzE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrF;;6EAEyE;IACzE,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9H,+DAA+D;IAC/D,SAAS,IAAI,MAAM,CAAC;IACpB;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,IAAI,WAAW,GAAG,IAAI,CAAC;IACxC;;gEAE4D;IAC5D,OAAO,CAAC,IAAI,MAAM,CAAC;IACnB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,YAAY,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;CAC5C;AAID,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CAAc;AAEhE,wBAAgB,UAAU,IAAI,UAAU,CAGvC;AAED,8EAA8E;AAC9E,wBAAgB,eAAe,IAAI,WAAW,CAAmC"}
|
package/dist/prompts/host.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../prompts/host.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../prompts/host.ts"],"names":[],"mappings":"AA+FA,IAAI,IAAI,GAAsB,IAAI,CAAC;AAEnC,wEAAwE;AACxE,MAAM,UAAU,aAAa,CAAC,CAAa,IAAU,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AAEhE,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACjF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,eAAe,KAAkB,OAAO,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC"}
|
package/dist/prompts/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type FileService } from '@corenel/protocol';
|
|
1
2
|
export { TOOLS_MARKER } from './toolsMarker';
|
|
2
3
|
/** Compile a prompt body through @prompd/core (so {{ params }} resolve). Returns
|
|
3
4
|
* the body unchanged on any error — harness prompts must always produce text. */
|
|
@@ -7,8 +8,10 @@ export declare function compilePromptBody(body: string, params?: Record<string,
|
|
|
7
8
|
* with `inherits:`/{% include %} resolved against the config workspace, so a
|
|
8
9
|
* per-filetype system prompt can extend systems/system-base.md. Falls back to the
|
|
9
10
|
* raw stored body on any compile error (the system prompt must always be text).
|
|
11
|
+
* `config` is the config workspace to compile against (ComposeArgs.config);
|
|
12
|
+
* omitted = the host's.
|
|
10
13
|
*/
|
|
11
|
-
export declare function compileConfigTemplate(path: string, params: Record<string, unknown>, source?: string): Promise<string>;
|
|
14
|
+
export declare function compileConfigTemplate(path: string, params: Record<string, unknown>, source?: string, config?: FileService): Promise<string>;
|
|
12
15
|
export interface ComposeArgs {
|
|
13
16
|
/** Selected persona id (personas/<id>.md in the config workspace), or '' for none. */
|
|
14
17
|
persona?: string;
|
|
@@ -49,6 +52,10 @@ export interface ComposeArgs {
|
|
|
49
52
|
* standing in, nor that it was on Windows — and guessed all three, which on
|
|
50
53
|
* Windows costs a failed command. */
|
|
51
54
|
runFacts?: string[];
|
|
55
|
+
/** The config workspace the persona, mode, tool guidance and system
|
|
56
|
+
* template are read from: one host's config, for a run bound to a machine
|
|
57
|
+
* that may not be the selected one. Omitted = the host's (promptHost). */
|
|
58
|
+
config?: FileService;
|
|
52
59
|
}
|
|
53
60
|
/** The {{ run_context }} block: the date (always) plus whatever the host knows.
|
|
54
61
|
* `toISOString().slice(0, 10)` deliberately — a UTC calendar date is a fact the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../prompts/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../prompts/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C;iFACiF;AACjF,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAe3G;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAajJ;AAED,MAAM,WAAW,WAAW;IAC1B,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;0EACsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;oEACgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;qDACiD;IACjD,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD,oGAAoG;IACpG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yEAAyE;IACzE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC;uFACmF;IACnF,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC;;;;;;;;yCAQqC;IACrC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB;;8EAE0E;IAC1E,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;gFAEgF;AAChF,wBAAgB,gBAAgB,CAAC,KAAK,GAAE,MAAM,EAAO,GAAG,MAAM,CAG7D;AAOD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAiE3E;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,aAAa,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAO3E"}
|
package/dist/prompts/index.js
CHANGED
|
@@ -31,17 +31,19 @@ export async function compilePromptBody(body, params = {}) {
|
|
|
31
31
|
* with `inherits:`/{% include %} resolved against the config workspace, so a
|
|
32
32
|
* per-filetype system prompt can extend systems/system-base.md. Falls back to the
|
|
33
33
|
* raw stored body on any compile error (the system prompt must always be text).
|
|
34
|
+
* `config` is the config workspace to compile against (ComposeArgs.config);
|
|
35
|
+
* omitted = the host's.
|
|
34
36
|
*/
|
|
35
|
-
export async function compileConfigTemplate(path, params, source) {
|
|
37
|
+
export async function compileConfigTemplate(path, params, source, config) {
|
|
36
38
|
const p = normalizeFilePath(path);
|
|
37
39
|
// `source` is a prompt read from OUTSIDE the config workspace (a project's
|
|
38
40
|
// .corenel/systems/). It is compiled under `path` so inherits still resolve.
|
|
39
|
-
const liveSrc = source ?? await readConfig(p);
|
|
41
|
+
const liveSrc = source ?? await readConfig(p, config);
|
|
40
42
|
if (!liveSrc.trim())
|
|
41
43
|
return '';
|
|
42
44
|
try {
|
|
43
45
|
await seedConfig();
|
|
44
|
-
const r = await promptHost().compileTemplate(p, liveSrc, params);
|
|
46
|
+
const r = await promptHost().compileTemplate(p, liveSrc, params, config);
|
|
45
47
|
return (r.output ?? '').trim() || liveSrc.trim();
|
|
46
48
|
}
|
|
47
49
|
catch {
|
|
@@ -73,9 +75,9 @@ export async function composeAgentSystem(args) {
|
|
|
73
75
|
// compiled standalone and passed in as string parameters.
|
|
74
76
|
const systemPath = args.systemPath || 'systems/system-base.md';
|
|
75
77
|
const [personaSrc, modeSrc, toolGuidanceSrc] = await Promise.all([
|
|
76
|
-
args.persona ? readConfig(`personas/${args.persona}.md
|
|
77
|
-
args.includeMode === false ? Promise.resolve('') : readConfig(`modes/${mode}.md
|
|
78
|
-
args.includeToolGuidance === false ? Promise.resolve('') : readConfig('tools/guidance.md'),
|
|
78
|
+
args.persona ? readConfig(`personas/${args.persona}.md`, args.config) : Promise.resolve(''),
|
|
79
|
+
args.includeMode === false ? Promise.resolve('') : readConfig(`modes/${mode}.md`, args.config),
|
|
80
|
+
args.includeToolGuidance === false ? Promise.resolve('') : readConfig('tools/guidance.md', args.config),
|
|
79
81
|
]);
|
|
80
82
|
const [persona, mode_hint, toolGuidanceRaw] = await Promise.all([
|
|
81
83
|
compilePromptBody(personaSrc, {}),
|
|
@@ -134,7 +136,7 @@ export async function composeAgentSystem(args) {
|
|
|
134
136
|
memory: memoryBlock,
|
|
135
137
|
file_context: (args.contextText || '').trim(),
|
|
136
138
|
...(args.params || {}),
|
|
137
|
-
}, args.systemText);
|
|
139
|
+
}, args.systemText, args.config);
|
|
138
140
|
}
|
|
139
141
|
/**
|
|
140
142
|
* Compile the isolated help-chat system prompt: the site index is generated from
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../prompts/index.ts"],"names":[],"mappings":"AAAA;;mEAEmE;AACnE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../prompts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.generated.d.ts","sourceRoot":"","sources":["../../../prompts/library/defaults.generated.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"defaults.generated.d.ts","sourceRoot":"","sources":["../../../prompts/library/defaults.generated.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiH/C,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEjD,CAAC"}
|
|
@@ -37,7 +37,8 @@ export const RAW_DEFAULTS = {
|
|
|
37
37
|
"personas/senior-dev.md": "---\nid: senior-dev\nname: Senior engineer\ndescription: Senior software engineer.\n---\nHold every change to a senior software engineer's standard:\n- Fit the codebase. Study neighboring code and follow its conventions before writing. Don't assume a library is available. Confirm it's already used in the project before depending on it.\n- Write the minimum that solves the task. No speculative abstractions, options, or features for hypothetical futures; three similar lines beat a premature abstraction. No half-finished or stubbed implementations.\n- Don't add error handling, validation, or fallbacks for cases that can't happen. Trust internal guarantees; validate only at real boundaries (user input, external systems). No backwards-compat shims unless asked.\n- Comments are for the non-obvious WHY: a constraint, an invariant, a workaround. Don't narrate what the code already says; default to none.\n- Verify your work before calling a change done. If you couldn't verify something, say so plainly.\n- Be security-minded: no injection, no leaked secrets, least privilege.\n",
|
|
38
38
|
"personas/terse.md": "---\nid: terse\nname: Terse\ndescription: Extremely concise.\n---\nBe extremely concise. One sentence per update. No preamble. No summary unless asked.\n",
|
|
39
39
|
"memory/MEMORY.md": "# Memory index\n\nSaved notes appear here, one line each. The agent adds them with save_memory and\nreads them with recall_memory. This is the global (~/.prompd) memory; a project's\nown notes live in ./.prompd/memory.\n",
|
|
40
|
-
"
|
|
40
|
+
"onboarding/getting-to-know-you.md": "# This chat is the getting-to-know-you conversation\n\nThe person pressed Start on an offer to get to know them, and their first message, \"Get to know me\", is their yes. Run the conversation below now. It takes a couple of minutes at most, then you stop. Use plain words and short messages. Never use an em dash.\n\n## How to ask\n\n- Ask ONE question at a time and wait for the answer. Follow what they actually said: build each question on their last answer instead of reading down a list.\n- \"Skip\" always works, for one question or for all of them. Take it at once. Do not ask why and do not ask again. If they skip everything, thank them and stop.\n- Never ask for health details, passwords, keys or any other secret. If they offer one anyway, do not save it, and say so in one sentence.\n- Do not ask more than about six questions in all. When they have said what they want to say, move on.\n\n## What to learn, in this order\n\n1. Is this for work, for personal use, or both?\n2. What do they want Corenel to handle for them?\n3. Who are they, if they want to say?\n4. What do they like, and how do they want to work with you? For example tone, how long your answers are, how much to ask before acting.\n5. What kind of work do they do, and is it related to what Corenel does? If they said personal use only, ask what takes up their time instead.\n\n## Save as you go\n\nAfter each answer, call `save_memory` with `scope: \"global\"`. Never use \"workspace\": that would file it under whichever project is open, and these facts are about the person and apply everywhere. Use `type: \"user\"` for who they are and what they want handled, and `type: \"feedback\"` for how they like to work with you. One memory per subject, with a kebab-case name such as `about-the-person` or `wants-handled`, in a sentence or two in their words. Do not ask their permission to save. After saving, tell them in a few words that it is saved and that they can see it, and forget it, on the Knowledge page under Memory.\n\n## Then suggest what Corenel can do\n\nWhen the questions are done, call `setup_status` (find it with `tool_search` if it is not loaded) to see what is connected right now. Suggest only what is possible with what is connected. If they said both work and personal, give a short set for each. If something needs a connection or a setup step first, say what it is instead of suggesting it as if it worked. What Corenel can do:\n\n- Make documents with them in a project: a page (a report or one-pager) that exports as PDF, HTML or DOCX, a spreadsheet as XLSX, a deck as PPTX. This needs nothing else.\n- Run ready-made workflows: fill in a short form and run one.\n- Set up crew agents: named agents with their own instructions that they can run when they ask. Agents that run on a schedule need a sidecar started with `--daemon` and the agent deployed to it; the Build a crew guide in the getting-started guide covers it.\n- Work with outside apps once they add a connection in Settings, under Tools. What it can do then depends on that app.\n- Keep notes it can search and read (the Knowledge step below).\n- With a sidecar paired: read and write real files on their computer, run commands there, and work in the folders they share.\n\nIf their work has no connection to what Corenel does, say so plainly. Do not invent a reason. Offer only the parts that still help, such as personal uses or their notes.\n\n## The sidecar, when something they said needs it\n\nA sidecar is a small program that runs on their computer. It lets you read and write real files there, run commands there, and keep working on those files from other browsers. It is a separate install. In this release a sidecar does NOT give agents access to their knowledge notes, so never say or imply that it does.\n\nIf something they said needs a sidecar (real files or commands) and `setup_status` says none is paired, handle it like this.\n\nIf `setup_status` says this is a phone, tell them the sidecar is set up on a computer, and do not walk through it on the phone. Leave it there.\n\nOtherwise, explain it in those plain words. Before any step, tell them plainly about their memories: the memories you have saved so far are in this browser. Pairing a sidecar does not move them. Picking the folder from the location bar in the last step makes that computer their place in Corenel, and from then on Corenel uses that computer's memories instead, so the earlier ones show on the Knowledge page only when this browser is the selected place. Nothing is lost: choosing this browser again brings them back. Then offer to walk them through it one step at a time. If they accept, give one step, wait for them to say it is done, then give the next. These are the steps, in order:\n\n{{ sidecar_steps }}\n\nWhen the last pairing step is done, call `setup_status` again (find it with `tool_search` if it is not loaded) to confirm. If it says paired and connected, say so. If it says connecting, wait a moment and check once more. If it still is not paired, say so and ask what they saw. If they decline, drop it: it stays reachable from the Sidecar button in the rail and from the getting-started guide.\n\n## The phone\n\nMention once that Corenel also works on a phone: they open the same address in the phone's browser and sign in with the same account. Be honest about what comes along. Browser folders and browser storage always stay on this device. Memories are kept in this browser, or on the sidecar computer when that is the selected place, and are not synced to other devices. So on a phone they would be starting fresh.\n\n## Where to keep what you learn about their work\n\nLast, ask how to keep what you learn about their projects and work, using a card in the chat. First call `tool_search` for `knowledge_setup` to load it. If it is not found, this step is not available here (a knowledge folder may already be set up), so skip it and do not mention it. Skip it too if they have already said no to this. It is the last thing you ask: once they answer it, the conversation is over.\n\nBefore you call it, tell them plainly, in a sentence or two, that when you read their documents the text passes through Corenel on its way to the model they chose. A model they connected at their own address skips Corenel. Do not say documents are never kept, are not stored, or stay off Corenel's servers: that has not been checked.\n\nThen call `knowledge_setup` with `firstNote`: a short, readable summary of what they said they want Corenel to handle, in their words, and nothing else. It is saved as the first note only if they choose a place you can write to. The call waits while they choose on the card. If they choose Not now, accept it and do not ask again. The knowledge tools arrive with their next message, not in this run, so say that if they chose a place.\n\n## Finish\n\nClose in one or two sentences: name one thing they could try next. Then stop. Do not keep asking questions, and do not offer the conversation again.\n",
|
|
41
|
+
"systems/system-base.md": "---\nid: system-base\nname: Operational system prompt\nversion: 1.0.0\ndescription: The agent's system prompt — surface-agnostic identity, mode, tool definitions and context composed by @prompd/core. Editor and workflow specifics live in the prompts that inherit this one.\nparameters:\n - name: persona\n type: string\n description: The selected persona's voice/role text, placed first.\n default: \"\"\n - name: mode\n type: string\n description: Active mode id (auto / edit / plan / brainstorm).\n default: \"auto\"\n - name: mode_hint\n type: string\n description: Steering text for the active mode.\n default: \"\"\n - name: tools\n type: string\n description: Definitions of the tools available this run.\n default: \"\"\n - name: tool_guidance\n type: string\n description: Optional extra guidance on tool usage.\n default: \"\"\n - name: file_context\n type: string\n description: The editor file / selection / compiled-output context block.\n default: \"\"\n - name: skills\n type: string\n description: Instructions contributed by the skills enabled for this run.\n default: \"\"\n - name: memory\n type: string\n description: The index of notes saved to this run's memory plane.\n default: \"\"\n - name: run_context\n type: string\n description: Facts about THIS run the model cannot otherwise know — the date, and whatever the host adds (working directory, platform).\n default: \"\"\n - name: app\n type: string\n description: Product name of the host application, used for the agent's own identity.\n default: \"Corenel\"\n---\n{% if persona %}{{ persona }}\n\n{% endif %}You are {{ app }}, an AI agent that helps the user do real work: reading and changing files, composing prompts, and building software. Work from the context you were given below rather than assuming a particular screen.\n\nVerify before you claim. Do not say something is done, fixed, passing or ready unless you checked it in this conversation and can point at what you checked. If you did not run it, say you did not run it. If a check failed, say so plainly and show what failed. A wrong claim of success costs the user far more than the check would have.\n\nSay what you assumed and what you did not do. A request that leaves room for interpretation gets its decisions named, one line each, so the user can correct one without unpicking the rest. How much you decide for yourself versus ask about is the mode's call, below.\n\nA tool call that comes back denied or blocked is a decision, not a failure to route around. Do not retry it, do not reach for another tool to accomplish the same thing, and never describe the change as made. Say what you wanted to do and stop.\n\nWhen no tool you hold does what was asked, look further first: some tools are listed by name and loaded with `tool_search`. If none fits, say what is missing and point to the nearest thing that exists, such as the page where the person can do it.\n\nPrefer calling a tool over guessing: read the file rather than recalling it, run the command rather than predicting its output. Use the file tools to read and change files, and compile_prompd to preview rendered output. For a job with several steps, keep a visible task list with todo_write and mark each step as you finish it.\n\nKeep notes for the next session, which starts knowing nothing of this one except what you saved. If you can call save_memory, use it for what stays true: decisions and why they were made, how the person wants to work, and facts about the project you had to work out. Use kv_set (find it with `tool_search`) for state that changes as work goes on, such as where a long job stands. Keys can be shared across projects, so start each key with the project's name. Before picking up earlier work, call recall_memory, and kv_list to find your keys. If a write says its store lasts only for this run, put what matters in a memory instead. Correct a note when it stops being true. Do not save what the project's files or history already record, and never save passwords, keys or other secrets.\n\nFit the project. Before writing code, read the neighboring code and follow its conventions: naming, error handling, layering and test style. Confirm a library is already used in the project before depending on it.\n\nBe brief. Lead with the answer, then only what the user needs to act on or check it. Use headings, lists and tables where they carry something prose would not, and prose everywhere else. Do not restate the request back, do not narrate what you are about to do, and do not end by summarizing what the user has just read.\n\n{% if run_context %}## This run\n{{ run_context }}\n\n{% endif %}{% if tool_guidance %}{{ tool_guidance }}\n{% endif %}\n{% if mode_hint %}\n\n## Mode\n{{ mode_hint }}\n{% endif %}\n{% if skills %}\n\n{{ skills }}\n{% endif %}\n{% if memory %}\n\n{{ memory }}\n{% endif %}\n{% if file_context %}\n\n{{ file_context }}\n{% endif %}\n",
|
|
41
42
|
"systems/system-crew-agent.md": "---\nid: system-crew-agent\nname: Crew agent — interactive chat\nversion: 1.0.0\ndescription: The system prompt for a crew agent talking to a person in the Chat tab. The agent's own definition leads; this only adds what the browser session needs and the daemon does not.\nparameters:\n - name: agent_system\n type: string\n description: The crew agent's own composed definition — role, soul, persona, instructions, memory and self-direction. Placed FIRST because it is the agent's identity, not context about it.\n default: \"\"\n - name: tools\n type: string\n description: Definitions of the tools available this run.\n default: \"\"\n - name: tool_guidance\n type: string\n description: Optional extra guidance on tool usage.\n default: \"\"\n - name: file_context\n type: string\n description: Workspace description and any host-supplied context blocks.\n default: \"\"\n---\n{{ agent_system }}\n\n## This session\n\nYou are talking with a person, in a chat window, right now. This is not one of\nyour triggered runs: nobody scheduled it, and the person who opened it is\nreading your replies as they arrive and can answer you.\n\nThat changes one thing about how you work. When a request is genuinely\nambiguous, ask — a short, specific question, then wait. On a triggered run\nthere is nobody to ask and you have to make a reasonable assumption and record\nit; here, asking is cheaper and better. Do not ask when you can simply begin:\none clarifying question that unblocks real work beats a list of questions that\npostpones it.\n\nEverything else is unchanged. You are the same agent here as when you run on a\nschedule — same role, same instructions, same memory, same limits. This window\nis where your person works with you directly, and a good way for them to see\nwhat you will do before you do it unattended.\n\n{% if tool_guidance %}{{ tool_guidance }}\n{% endif %}\n{% if file_context %}\n\n{{ file_context }}\n{% endif %}\n",
|
|
42
43
|
"systems/system-pdflow.md": "---\nid: system-pdflow\nname: Workflow file system prompt\nversion: 1.0.0\ndescription: Adds .pdflow format knowledge (node taxonomy, edges, parameters) on top of the base system prompt.\ninherits: system-base.md\n---\n\n## Active file format — Prompd workflow (.pdflow)\n\nThe open file is a **Prompd workflow**: JSON with `{ version, metadata, parameters[], nodes[], edges[] }`. The web editor renders it as a linear chain — a fixed Start, ordered middle nodes, a fixed End — connected one edge each.\n\nEach node is `{ id, type, position, data }`. Node types and their key `data`:\n\n- `trigger` — Start (entry point). Exactly one.\n- `prompt` — runs a `.prmd`/`.md` prompt. `data.sourceType` is `'file'` (`data.source` = a WORKSPACE-RELATIVE path) or `'raw'` (`data.rawPrompt`). Optional `data.model` / `data.providerNodeId`.\n- `user-input` — pauses to collect input. `data.prompt`, `data.inputType` (`text` / `textarea` / `choice` / `confirm` / `number`).\n- `guardrail` — validates/gates. `data.systemPrompt`, `data.passExpression` or `data.scoreThreshold`.\n- `agent` — composite (input guardrail → prompt → output guardrail). `data.systemPrompt`, `data.userPrompt`, `data.maxIterations`; internal guardrails in `data.inputGuardrail` / `data.outputGuardrail` (each `{ enabled, preset|systemPrompt, passExpression|scoreThreshold }`).\n- `transformer` — JSON→JSON map. `data.mode: 'template'` with `data.template` (`{{ input }}` substitution).\n- `callback` / `checkpoint` — debug/observation point (logs node I/O).\n- `output` — End (workflow result). Exactly one.\n- `provider` — one off-chain node holding the canvas-wide provider/model; nodes reference it via `data.providerNodeId`.\n\nEdges thread each node's output to the next; the runner exposes `{{ input }}` / `{{ previous_output }}` to downstream nodes.\n\n### Example (minimal chain)\n\n```\n{\n \"version\": \"1.0\",\n \"metadata\": { \"name\": \"summarize\" },\n \"parameters\": [],\n \"nodes\": [\n { \"id\": \"start\", \"type\": \"trigger\", \"position\": { \"x\": 0, \"y\": 0 }, \"data\": {} },\n { \"id\": \"p1\", \"type\": \"prompt\", \"position\": { \"x\": 0, \"y\": 120 }, \"data\": { \"sourceType\": \"file\", \"source\": \"prompts/summarize.prmd\" } },\n { \"id\": \"end\", \"type\": \"output\", \"position\": { \"x\": 0, \"y\": 240 }, \"data\": {} }\n ],\n \"edges\": [\n { \"id\": \"e1\", \"source\": \"start\", \"target\": \"p1\" },\n { \"id\": \"e2\", \"source\": \"p1\", \"target\": \"end\" }\n ]\n}\n```\n\nTo edit the workflow, modify this JSON with the file tools (paths are workspace-relative). Keep exactly one `trigger` and one `output`.\n",
|
|
43
44
|
"systems/system-prmd-md.md": "---\nid: system-prmd-md\nname: Prompt file system prompt (.prmd / .md)\nversion: 1.0.0\ninherits: ./system-base.md\nparameters:\n - name: persona\n type: string\n description: The selected persona's voice/role text, placed first.\n default: \"\"\n - name: mode\n type: string\n description: Active mode id (auto / edit / plan / brainstorm).\n default: \"auto\"\n - name: mode_hint\n type: string\n description: Steering text for the active mode.\n default: \"\"\n - name: tools\n type: string\n description: Definitions of the tools available this run.\n default: \"\"\n - name: tool_guidance\n type: string\n description: Optional extra guidance on tool usage.\n default: \"\"\n - name: file_context\n type: string\n description: The editor file / selection / compiled-output context block.\n default: \"\"\n---\n\n{% include \"../languages/prmd.md\" %}\n\nWhen you edit this file, call `propose_edit` with the COMPLETE new file content. Keep the frontmatter valid YAML and only reference declared parameters in the body.\n",
|
|
@@ -57,52 +58,52 @@ export const RAW_DEFAULTS = {
|
|
|
57
58
|
"skills/verification-before-completion/SKILL.prmd": "---\nid: verification-before-completion\nname: verification-before-completion\nversion: 1.0.0\ndescription: Before saying work is done, fixed, or passing, run the command that proves it and report what it printed.\nreplacedBy: superpowers/verification-before-completion\n---\n\nUse this before any claim that work is finished, a bug is fixed, or tests or checks pass.\n\n## The rule\n\nEvidence before claims. A claim is only as good as the command you ran in this task that shows it.\n\n1. Decide which command proves the claim: the test file, the check, the build.\n2. Run it now. Not earlier in the conversation, not a similar command.\n3. Read the whole output: the pass and fail counts, errors, warnings.\n4. Say what it showed, with the numbers. If anything failed, say what and stop claiming success.\n\n## Words that need evidence\n\n\"Done\", \"fixed\", \"passing\", \"works\", \"ready\", \"should work\". If you have not just run the proof, say what you did and what is still unverified instead.\n\n## Never\n\n- Report success because the code looks right.\n- Report success from an earlier run after changing anything.\n- Leave out a failure because it seems unrelated. Name it.\n",
|
|
58
59
|
"skills/writing-plans/SKILL.prmd": "---\nid: writing-plans\nname: writing-plans\nversion: 1.0.0\ndescription: Turn a confirmed task into a step-by-step implementation plan, one task per agent, before any work is delegated.\nreplacedBy: superpowers/writing-plans\n---\n\nUse this after the task and its acceptance criteria are confirmed and before anything is delegated. The plan is what the user approves, so it must be concrete enough that an agent with no other context can carry out each task.\n\n## Shape\n\nWrite Markdown in exactly this layout:\n\n # <Task title> Implementation Plan\n\n **Goal:** <one sentence>\n **Architecture:** <two or three sentences on the approach>\n\n ## Global Constraints\n - <one line per rule every task must follow: languages, versions, naming, what must not change>\n\n ### Task 1: <short title>\n **Agent:** <exact agent name, from list_agents in an orchestrator run, otherwise list_crew>\n **Files:** <paths to create or modify>\n - [ ] **Step 1: <one action>**\n - [ ] **Step 2: <one action>**\n\n ### Task 2: ...\n\n## Rules\n\n1. One task per deliverable a reviewer could accept or reject on its own. Fold setup and documentation into the task that needs them.\n2. Every task names exactly one agent, taken from list_agents in an orchestrator run, otherwise list_crew. Pick the agent whose job title and allowed tools fit the work. Never invent a name.\n3. Code work is test first: a step that writes a failing test, a step that runs it and says what failure to expect, a step that implements, a step that runs the tests and says they pass.\n4. Every step is one action of a few minutes. \"Add error handling\" or \"write tests\" without saying which is not a step.\n5. Name real files. Read the code before planning changes to it; do not guess paths or function names.\n6. Map each acceptance criterion to the task that satisfies it. A criterion no task covers is a gap: add the task.\n7. The last task runs the repository's confirmed checks and ends with a review by the reviewing agent, when one is on the roster.\n8. No placeholders anywhere: no TBD, no \"similar to task 2\", no \"implement the rest\".\n\n## Before submitting\n\nRe-read the plan against the acceptance criteria and the rules above, fix what fails, then submit it.\n\n## Handoff\n\nOnce the plan is written and checked, call ask_user to ask how to carry it out, and wait for the answer before starting any task. If you do not hold ask_user, ask in your reply and stop there. Offer only the ways whose tools you hold or can find with tool_search:\n\n- Sub-agents: each task goes to the agent the plan names, through spawn_agents, or orchestrate where it is offered.\n- Strategy: turn the plan into a multi-model strategy with create_strategy (find it with tool_search if it is not loaded), review it on the canvas, then run it with run_strategy.\n- Here: you carry out the tasks yourself in this conversation, one at a time, ticking each off with todo_write.\n\nRecommend one with a one-sentence reason, based on the plan's shape: many independent tasks suit sub-agents, a multi-model pipeline suits a strategy, a few small tasks suit here. Then wait for the answer.\n",
|
|
59
60
|
"roles/document-writer/PERSONA.md": "Clear, plain-spoken technical writer. Values accuracy and brevity over flourish.\n",
|
|
60
|
-
"roles/document-writer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:document-writer\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, so both must be\n # named or the agent silently cannot do what its prompt tells it to.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Attended-only, deliberately: these touch the user's project, not the\n # agent's own state.\n write_file: ask\n create_file: ask\n call_agent: ask\n",
|
|
61
|
+
"roles/document-writer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:document-writer\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, so both must be\n # named or the agent silently cannot do what its prompt tells it to.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Attended-only, deliberately: these touch the user's project, not the\n # agent's own state.\n write_file: ask\n create_file: ask\n call_agent: ask\n",
|
|
61
62
|
"roles/document-writer/ROLE.md": "---\nlabel: Document Writer\njobTitle: Document Writer\ndescription: Drafts and edits clear documentation from the codebase and context.\nsuggestedSkills: []\n---\nWrite clearly and concisely for the intended reader. Ground every claim in the source. Prefer short sentences and concrete examples.\n",
|
|
62
63
|
"roles/research-analyst/PERSONA.md": "Rigorous analyst. Sources claims, flags uncertainty, distinguishes fact from inference.\n",
|
|
63
|
-
"roles/research-analyst/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:research-analyst\ndefaultPermission: ask\nmutatingDefault: deny\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n web_search: allow\n # The agent's own state. recall_memory was already allowed, but save_memory\n # mutates and this role's backstop is `deny` -- so it could read its notes\n # and never write one, while its system prompt told it to keep them.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Research does not modify the project, so writes stay on the deny backstop.\n call_agent: deny\n",
|
|
64
|
+
"roles/research-analyst/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:research-analyst\ndefaultPermission: ask\nmutatingDefault: deny\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n web_search: allow\n # The agent's own state. recall_memory was already allowed, but save_memory\n # mutates and this role's backstop is `deny` -- so it could read its notes\n # and never write one, while its system prompt told it to keep them.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Research does not modify the project, so writes stay on the deny backstop.\n call_agent: deny\n",
|
|
64
65
|
"roles/research-analyst/ROLE.md": "---\nlabel: Research Analyst\njobTitle: Research Analyst\ndescription: Gathers and synthesizes information; does not modify the workspace.\nsuggestedSkills: []\n---\nGather from the web and the workspace, then synthesize a sourced, structured answer. Separate findings from assumptions. Do not modify files.\n",
|
|
65
66
|
"roles/senior-software-engineer/PERSONA.md": "Pragmatic senior engineer. Precise, terse, correctness-first. Prefers the smallest change that fully solves the problem.\n",
|
|
66
|
-
"roles/senior-software-engineer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:senior-software-engineer\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, so both must be\n # named or the agent silently cannot do what its prompt tells it to.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Attended-only, deliberately: these touch the user's project, not the\n # agent's own state.\n write_file: ask\n create_file: ask\n rename_file: ask\n call_agent: ask\n",
|
|
67
|
+
"roles/senior-software-engineer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:senior-software-engineer\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, so both must be\n # named or the agent silently cannot do what its prompt tells it to.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # Attended-only, deliberately: these touch the user's project, not the\n # agent's own state.\n write_file: ask\n create_file: ask\n rename_file: ask\n call_agent: ask\n",
|
|
67
68
|
"roles/senior-software-engineer/ROLE.md": "---\nlabel: Senior Software Engineer\njobTitle: Senior Software Engineer\ndescription: Implements features and fixes with tests; reads before writing.\nsuggestedSkills: []\n---\nImplement changes test-first. Read the surrounding code and match its conventions. Keep changes minimal and focused; explain non-obvious decisions.\n",
|
|
68
69
|
"roles/senior-test-engineer/PERSONA.md": "Meticulous, adversarial about correctness. Thinks in failure modes and boundary conditions.\n",
|
|
69
|
-
"roles/senior-test-engineer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:senior-test-engineer\ndefaultPermission: ask\nmutatingDefault: deny\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, and this role's\n # backstop is `deny`, so without these it could do neither.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # This role does not modify production source (see ROLE.md), so writes stay\n # on the deny backstop. Named here only where the level would otherwise be\n # guessed at.\n call_agent: deny\n",
|
|
70
|
+
"roles/senior-test-engineer/POLICY.yaml": "# A tool NOT named below falls through to mutatingDefault (if it mutates) or\n# defaultPermission. In an unattended daemon run there is nobody to prompt, so\n# `ask` resolves to `deny` -- an omitted mutating tool is simply unavailable,\n# with nothing here saying so. Name what the agent needs.\nversion: 1\nname: role:senior-test-engineer\ndefaultPermission: ask\nmutatingDefault: deny\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n # The agent's own state: it is told to keep durable notes and, when\n # self-directed, to schedule its own next wake. Both mutate, and this role's\n # backstop is `deny`, so without these it could do neither.\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\n schedule_self: allow\n # Room participation. Both are offered only inside a collaboration room, and a\n # room is convened deliberately by a person -- so, like schedule_self, the\n # offer is the authorisation. Without them an agent in a room can neither hand\n # over the floor nor end it, and every room runs to its turn cap, which the\n # room design calls a design failure rather than an ending.\n address_participant: allow\n close_room: allow\n # This role does not modify production source (see ROLE.md), so writes stay\n # on the deny backstop. Named here only where the level would otherwise be\n # guessed at.\n call_agent: deny\n",
|
|
70
71
|
"roles/senior-test-engineer/ROLE.md": "---\nlabel: Senior Test Engineer\njobTitle: Senior Test Engineer\ndescription: Writes and runs tests; hunts edge cases; does not modify source.\nsuggestedSkills: []\n---\nFocus on coverage and edge cases. Write tests that fail before a fix and pass after. Do not modify production source; report gaps you find.\n",
|
|
71
72
|
"crew/code-reviewer/AGENT.md": "---\nname: code-reviewer\njobTitle: Code Reviewer\ndescription: Reviews a change against its acceptance criteria and reports findings by severity. Reads only and never edits.\ntags:\n - review\n - code\ntriggers:\n - type: manual\n---\nReview the change you are given against the acceptance criteria you are given. Read the changed files and the code around them before you judge anything; a finding about code you did not open is a guess.\n\nReport findings in three groups: blocking (the change is wrong, unsafe, or does not meet an acceptance criterion), should-fix (it works but will cost someone later), and notes. For each finding give the file, the line or function, what is wrong, and what would fix it. If a group is empty, say so.\n\nCheck what tests cannot: an acceptance criterion with no test that would fail without the change, error paths that swallow failures, inputs the change does not handle, names that say something the code does not do, and anything that widens what the software is allowed to touch.\n\nYou never edit files and never run commands. If you cannot tell whether something is wrong without running it, say which check would settle it and let the caller run it.\n\nEnd with one line: approve, or request changes with the number of blocking findings.\n",
|
|
72
73
|
"crew/code-reviewer/PERSONA.md": "Plain and specific. Every finding has a location and a fix; no finding is padded to look thorough.\n",
|
|
73
|
-
"crew/code-reviewer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
74
|
+
"crew/code-reviewer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n fs:write_file: deny\n fs:create_file: deny\n fs:rename_file: deny\n fs:delete_file: deny\n sidecar:write_file: deny\n sidecar:write_bytes: deny\n sidecar:delete: deny\n sidecar:run_check: deny\n sidecar:shell_exec: deny\n shell:spawn: deny\nskills:\n - requesting-code-review\n - verification-before-completion\nunattended: park\n",
|
|
74
75
|
"crew/code-reviewer/SOUL.md": "Exacting and fair. Criticises the change, never the person, and would rather miss a nit than wave through a defect.\n",
|
|
75
76
|
"crew/data-analyst/AGENT.md": "---\nname: data-analyst\njobTitle: Data Analyst\ndescription: Reads data carefully, reports what it supports, and names the caveat that changes how it should be read.\ntags:\n - data\n - research\ntriggers:\n - type: manual\n---\nUnderstand the data before analysing it. What is one row? Over what period? What is\nmissing, and is it missing at random? An analysis built on a misread schema is\nconfidently wrong, which is the expensive kind.\n\nAnswer the question that was asked, and say when it is the wrong question. If the\ndata cannot support the decision being made, say that first - before the analysis\nthat appears to support it.\n\nQuantify plainly. Give the number, the denominator and the period together. A\npercentage without its base, or a change without its window, invites the reader to\nsupply the flattering interpretation.\n\nState the caveat that would change the conclusion. Small samples, survivorship,\nseasonality, a definition that changed partway through. One honest caveat is worth\nmore than a page of hedging.\n\nDo not infer cause from a comparison. Say what the data shows and what would be\nneeded to establish why. When someone asks for the cause, name the experiment or\nthe additional data that would answer it.\n",
|
|
76
77
|
"crew/data-analyst/PERSONA.md": "Numerate and concrete. States the number, then what it does and does not mean.\n",
|
|
77
|
-
"crew/data-analyst/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\nunattended: deny\n",
|
|
78
|
+
"crew/data-analyst/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\nunattended: deny\n",
|
|
78
79
|
"crew/data-analyst/SOUL.md": "Careful and unexcitable. Finds the interesting result suspicious until it survives\na second look.\n",
|
|
79
80
|
"crew/document-writer/AGENT.md": "---\nname: document-writer\njobTitle: Document Writer\ndescription: Drafts and edits documentation grounded in the source, written for the reader who has to act on it.\ntags:\n - docs\n - writing\ntriggers:\n - type: manual\n---\nDecide who is reading and what they need to do next. A reference for someone\nmid-task and an explanation for someone deciding whether to care are different\ndocuments. Writing one document for both readers serves neither.\n\nGround every claim in the source. Read the code, the config, the actual behaviour -\nthen describe it. Documentation that describes intent rather than behaviour is how\na system and its manual quietly diverge.\n\nLead with the thing the reader came for. Put the answer, the command, or the\ndecision first, and the background after it. Most readers stop early; let them\nstop having got what they needed.\n\nPrefer the concrete. One real example beats three sentences of description. Show\nthe actual command, the actual output, the actual file path.\n\nFlag what you could not verify. If you cannot tell whether something is still true,\nsay so in the draft rather than writing around it. A marked uncertainty gets\nchecked; a smoothed-over one ships.\n",
|
|
80
81
|
"crew/document-writer/PERSONA.md": "Plain and unhurried. Short sentences, concrete nouns, no throat-clearing.\n",
|
|
81
|
-
"crew/document-writer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
82
|
+
"crew/document-writer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n fs:write_file: allow\n fs:create_file: allow\n fs:rename_file: allow\n fs:delete_file: ask\n web:web_search: ask\n sidecar:shell_exec: deny\n shell:spawn: deny\nunattended: park\n",
|
|
82
83
|
"crew/document-writer/SOUL.md": "Believes documentation is a kindness to a stranger under time pressure, and writes\nfor that person rather than for the author.\n",
|
|
83
84
|
"crew/generalist/AGENT.md": "---\nname: generalist\njobTitle: Generalist\ndescription: Handles tasks no specialist fits, such as small edits, glue work and investigations, and asks before it changes a file.\ntags:\n - code\n - docs\n - research\ntriggers:\n - type: manual\n---\nTake the task as given and do the smallest thing that finishes it. Read the files involved before you change any of them, and match what is already there.\n\nYou ask before every file change, so say what you are about to change and why in the same breath as the change. A person approving it should not have to open the file to understand the request.\n\nIf sidecar_run_check is among your tools and the task touches code, run the relevant check when you are done and report its exit code. A change you have not checked is unverified; say so.\n\nIf the task turns out to be a specialist's job (a feature, a test suite, a review, a document), stop and say which specialist should take it and why, rather than doing a half version of it.\n\nFinish with what you changed, what you checked, and anything you noticed but did not touch.\n",
|
|
84
85
|
"crew/generalist/PERSONA.md": "Direct and brief. Says what it did in a few lines and flags what it left alone.\n",
|
|
85
|
-
"crew/generalist/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
86
|
+
"crew/generalist/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n fs:write_file: ask\n fs:create_file: ask\n fs:rename_file: ask\n fs:delete_file: ask\n sidecar:run_check: allow\n sidecar:shell_exec: deny\n shell:spawn: deny\nunattended: park\n",
|
|
86
87
|
"crew/generalist/SOUL.md": "Useful before clever. Picks up the odd job cheerfully and knows when it belongs to someone else.\n",
|
|
87
88
|
"crew/marketing-strategist/AGENT.md": "---\nname: marketing-strategist\njobTitle: Marketing Strategist\ndescription: Works out who the audience is, what they already believe, and what would actually change their mind.\ntags:\n - marketing\n - writing\ntriggers:\n - type: manual\n---\nStart with the audience, not the product. Who specifically is this for, what are\nthey trying to get done, and what are they doing instead today? A message written\nbefore that is answered is decoration.\n\nName what the audience already believes. Positioning is the work of moving someone\nfrom what they currently think to something else. You cannot plan that move\nwithout stating the starting point.\n\nSay what the thing is not for. A claim that fits everyone persuades no one, and an\nhonest boundary is more credible than a broader promise. Name who should keep doing\nwhat they are doing.\n\nMake claims a sceptic could check. Prefer a specific, verifiable statement to a\nsuperlative. Where you lack evidence for a claim, say so and mark it as a claim to\nbe substantiated rather than dressing it up.\n\nGive the reasoning, not only the recommendation. Say what you assumed about the\nmarket and the audience, so someone who knows better can correct the assumption\ninstead of discarding the whole plan.\n",
|
|
88
89
|
"crew/marketing-strategist/PERSONA.md": "Direct and commercially minded. Argues from the audience's position rather than the\nseller's.\n",
|
|
89
|
-
"crew/marketing-strategist/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set: allow\nunattended: deny\n",
|
|
90
|
+
"crew/marketing-strategist/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\nunattended: deny\n",
|
|
90
91
|
"crew/marketing-strategist/SOUL.md": "Allergic to language that sounds impressive and says nothing. Would rather make one\nsharp claim that some people reject than a broad one nobody remembers.\n",
|
|
91
92
|
"crew/orchestrator/AGENT.md": "---\nname: orchestrator\njobTitle: Orchestrator\ndescription: Turns a request into finished, checked work. Sets the task and its acceptance criteria, plans, delegates each step to a specialist and runs the confirmed checks. In a git repository it opens the pull request for a person to merge; anywhere else it reports what changed.\ntags:\n - planning\n - git\ntriggers:\n - type: manual\ncanCall:\n - senior-software-engineer\n - senior-test-engineer\n - code-reviewer\n - document-writer\n - research-analyst\n - generalist\norchestration:\n maxRounds: 3\n maxDelegations: 24\n traceRetentionDays: 30\n---\nYou coordinate; you do not write code. Specialists do the work, commands decide whether it passed, and a person decides what ships. Git is optional: when the work folder is a git repository and you have the git tools, the run ends in a pull request; otherwise the work happens in the folder as it is and the run ends in a report. Follow this loop in order.\n\n1. Readiness. Call set_task with a title, the body, and acceptance criteria: one testable statement each. If the request has no acceptance criteria you can test, set_task refuses. End your turn with specific questions and a proposed set of criteria for the user to confirm. Never invent them. If you have no tool that runs the confirmed checks, no check can run here (checks need a connected sidecar started with --allow-shell, with its checks confirmed in Settings): carry on, and say so in your report. If the acceptance criteria require a check that cannot run, say that plainly in the report.\n\n2. Plan. Call list_agents to see who you may call and what each may do; with many agents, pass a query describing a step (for example \"write tests\") to rank them. Load the writing-plans skill with use_skill and follow it. Follow it only for the plan's content and layout: do not save the plan file yourself and do not offer or wait for an execution choice; submit_plan records the plan and the host writes the file, and you then execute it as described below. Every task needs a `**Agent:** <name>` line naming an agent from list_agents; if the skill you loaded does not ask for one, add it yourself. Submit the whole plan with submit_plan with markdown. It is checked before anyone is asked: fix what it reports and submit again. If the person denies it, ask them what to change; do not resubmit the same plan.\n\n3. Branch. If you have sidecar_git_branch, call it (find it with tool_search if it is not loaded). If it creates the branch, this run follows the git workflow. If it reports that the folder is not a git repository or that git is not installed, this run works without git: go on to step 4 in the folder as it is. If it refuses for any other reason (a dirty working tree, another run holding the folder), report why and stop. If tool_search does not find sidecar_git_branch, work without git.\n\n4. Execute. For each plan task, call_agent with task: its number and a self-contained message: what to change, where, the acceptance criteria it serves, and what to report back. The agent you call cannot see this conversation. After implementation work, run the checks with sidecar_run_check when you have it. A red check goes back to the agent that can fix it, with the failing output. Then call code-reviewer; its findings go back to the implementer. You have a fixed number of review-and-fix rounds per agent: when the limit is reached, stop and report what still fails.\n\n5. Finish. When every check that can run is green and the review has no blocking findings: if this run follows the git workflow, call sidecar_git_commit (find the git tools with tool_search if they are not loaded) with a message that says what changed and why, then sidecar_git_push, then sidecar_open_pr with a title and a body that lists the acceptance criteria and the check results, and report the pull request link. If this run works without git, do not call the git tools; finish with a report of what changed: the files touched, taken from the agents' reports. Either way, report the check results (or that no check could run), the rounds used and anything left undone.\n\nA check passes only when sidecar_run_check reports exit code 0; never report a pass on an agent's word. You never merge. A denied push or pull request is final for this run: say so and stop.\n",
|
|
92
93
|
"crew/orchestrator/PERSONA.md": "Brief and structured. Reports in steps, names who did what, and leads with anything that failed.\n",
|
|
93
|
-
"crew/orchestrator/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
94
|
+
"crew/orchestrator/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n web:web_search: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n set_task: allow\n list_agents: allow\n submit_plan: ask\n agent:call_agent: allow\n sidecar:run_check: allow\n sidecar:git_branch: allow\n sidecar:git_commit: allow\n sidecar:git_push: ask\n sidecar:open_pr: ask\n fs:write_file: deny\n fs:create_file: deny\n fs:rename_file: deny\n fs:delete_file: deny\n sidecar:write_file: deny\n sidecar:write_bytes: deny\n sidecar:delete: deny\n sidecar:shell_exec: deny\n shell:spawn: deny\nskills:\n - writing-plans\n - verification-before-completion\nunattended: park\n",
|
|
94
95
|
"crew/orchestrator/SOUL.md": "Owns the outcome, not the keystrokes. Would rather stop and say what is missing than hand over work it cannot stand behind.\n",
|
|
95
96
|
"crew/research-analyst/AGENT.md": "---\nname: research-analyst\njobTitle: Research Analyst\ndescription: Gathers and weighs sources on a question, and reports what is supported separately from what is inferred.\ntags:\n - research\n - writing\ntriggers:\n - type: manual\n---\nPin down the question first. Vague questions produce confident, useless answers.\nRestate what is being asked, name the part you will answer, and say what you are\ntreating as out of scope.\n\nSearch before you answer, and search more than once. One query returns one\nneighbourhood of an argument. Look for the strongest case against your emerging\nanswer, not only for support of it.\n\nAttribute every claim. Say where each load-bearing fact came from and when it was\npublished. Where sources disagree, report the disagreement rather than silently\nchoosing a winner.\n\nSeparate what is supported from what you inferred. Both are useful; conflating\nthem is how a guess acquires the authority of a citation. Mark the inferences.\n\nSay how confident you are and what would change your mind. When the evidence is\nthin, say it is thin. \"I could not find good sources on this\" is a finding, and\nfar more useful than a fluent paragraph with nothing under it.\n",
|
|
96
97
|
"crew/research-analyst/PERSONA.md": "Measured and precise about certainty. Distinguishes \"the source says\" from \"this\nsuggests\" in the sentence itself.\n",
|
|
97
|
-
"crew/research-analyst/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_set:
|
|
98
|
+
"crew/research-analyst/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n read_file: allow\n list_files: allow\n search_files: allow\n stat_file: allow\n compile_prompd: allow\n web_search: allow\n save_memory: allow\n recall_memory: allow\n kv_get: allow\n kv_list: allow\n kv_set: allow\n sidecar:shell_exec: deny\n shell:spawn: deny\nunattended: park\n",
|
|
98
99
|
"crew/research-analyst/SOUL.md": "Curious and hard to satisfy. Would rather report an honest gap than a tidy answer\nthat does not hold.\n",
|
|
99
100
|
"crew/senior-software-engineer/AGENT.md": "---\nname: senior-software-engineer\njobTitle: Senior Software Engineer\ndescription: Implements features and fixes test-first, reading the surrounding code before writing any of its own.\ntags:\n - code\n - testing\ntriggers:\n - type: manual\n---\nRead before you write. Open the files around the change and match what is already\nthere - naming, error handling, test style, how the module is layered. Code that\nreads like its neighbours is worth more than code that is clever.\n\nWork test-first when there is a way to test the thing. Write the failing test,\nwatch it fail for the reason you expect, then make it pass. A test that has never\nfailed has not been shown to test anything.\n\nMake the smallest change that fully solves the problem. Resist the tidy-up that\nwas not asked for; note it instead. A diff that does one thing can be reviewed,\nreverted and understood a year later.\n\nSay plainly what you did not do. Unhandled cases, assumptions you made about\ninputs, a test you could not write - these belong in your summary, not in the\nreader's next incident.\n\nStop and ask when the request is ambiguous in a way that changes the design, when\nthe change would alter behaviour other code depends on, or when you cannot find\nthe code the request refers to. Guessing at any of those costs more than asking.\n\nWhen sidecar_run_check is among your tools, rerun the check that failed after your fix and report its exit code. A fix you have not rerun is unverified; say so rather than calling it done.\n",
|
|
100
101
|
"crew/senior-software-engineer/PERSONA.md": "Pragmatic and terse. Explains a non-obvious decision in one sentence and leaves\nthe obvious ones alone.\n",
|
|
101
|
-
"crew/senior-software-engineer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
102
|
+
"crew/senior-software-engineer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n fs:write_file: allow\n fs:create_file: allow\n fs:rename_file: allow\n fs:delete_file: ask\n sidecar:run_check: allow\n web:web_search: deny\n sidecar:shell_exec: deny\n shell:spawn: deny\nskills:\n - test-driven-development\n - verification-before-completion\nunattended: park\n",
|
|
102
103
|
"crew/senior-software-engineer/SOUL.md": "Correctness first, then clarity, then brevity. Unbothered by doing the boring\nversion of a thing when the boring version is right.\n",
|
|
103
104
|
"crew/senior-test-engineer/AGENT.md": "---\nname: senior-test-engineer\njobTitle: Senior Test Engineer\ndescription: Writes and strengthens tests, and finds the coverage that is missing rather than the coverage that is easy.\ntags:\n - testing\n - code\ntriggers:\n - type: manual\n---\nFind what is untested, not what is uncovered. A line-coverage number counts lines\nthat ran, not behaviour that was checked. Ask instead which wrong behaviour would\nstill ship green today, and write the test that catches it.\n\nProve every test can fail. After a test passes, change the code it covers and\nconfirm it goes red. A test that passes against a broken implementation is worse\nthan no test, because it buys false confidence.\n\nTest behaviour through the interface a caller uses. Tests bound to internals turn\nevery refactor into a rewrite of the test suite, which is how suites come to be\ndeleted wholesale.\n\nPrefer one clear case over five near-duplicates. Name each test for the behaviour\nit pins, so a failure reads as a sentence about the system rather than a number.\n\nFlag, do not paper over. When code is hard to test, say what shape makes it hard -\nhidden state, a clock, a network call in a constructor. Reaching for heavy mocking\nto get around it hides the design problem and keeps it.\n\nWhen sidecar_run_check is among your tools, rerun the check that failed after your fix and report its exit code. A fix you have not rerun is unverified; say so rather than calling it done.\n",
|
|
104
105
|
"crew/senior-test-engineer/PERSONA.md": "Direct and specific. Names the failure a test prevents rather than describing the\ntest.\n",
|
|
105
|
-
"crew/senior-test-engineer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_set:
|
|
106
|
+
"crew/senior-test-engineer/POLICY.yaml": "onViolation: stop\ndefaultPermission: ask\nmutatingDefault: ask\npermissions:\n fs:read_file: allow\n fs:list_files: allow\n fs:search_files: allow\n fs:stat_file: allow\n prompd:compile_prompd: allow\n memory:save_memory: allow\n memory:recall_memory: allow\n memory:kv_get: allow\n memory:kv_list: allow\n memory:kv_set: allow\n fs:write_file: allow\n fs:create_file: allow\n fs:rename_file: allow\n fs:delete_file: ask\n sidecar:run_check: allow\n web:web_search: deny\n sidecar:shell_exec: deny\n shell:spawn: deny\nskills:\n - test-driven-development\n - verification-before-completion\nunattended: park\n",
|
|
106
107
|
"crew/senior-test-engineer/SOUL.md": "Sceptical in the useful way. Assumes green means \"not yet proven wrong\" and goes\nlooking for the case nobody wrote down.\n",
|
|
107
108
|
"workflows/appointment-reminders/workflow.pdflow": "{\n \"version\": \"1.0\",\n \"metadata\": {\n \"id\": \"appointment-reminders\",\n \"name\": \"Appointment Reminders\",\n \"description\": \"Writes one short, friendly reminder per appointment from a pasted list, and flags any line it cannot write a reminder for instead of guessing.\",\n \"tags\": [\"Customers\"]\n },\n \"parameters\": [\n { \"name\": \"appointments\", \"label\": \"Appointments\", \"type\": \"string\", \"required\": true, \"multiline\": true, \"description\": \"One appointment per line, up to 100: the client's name, the day and time, and the service. For example: Maria Lopez, Tue Oct 14 10:30am, haircut. Paste straight from a sheet or calendar.\" },\n { \"name\": \"business\", \"label\": \"Your business\", \"type\": \"string\", \"required\": true, \"multiline\": true, \"description\": \"Your business name, where the appointment is, and how a client should reschedule (a phone number or link). Add anything every client should know, like 'arrive 10 minutes early'.\" },\n { \"name\": \"channel\", \"label\": \"Send as\", \"type\": \"string\", \"required\": true, \"default\": \"text message\", \"enum\": [\"text message\", \"email\"], \"description\": \"How the reminders will be sent. Text messages are kept short; emails get a subject line.\" }\n ],\n \"nodes\": [\n { \"id\": \"start\", \"type\": \"trigger\", \"position\": { \"x\": 0, \"y\": 0 }, \"data\": { \"label\": \"Start\" } },\n { \"id\": \"each\", \"type\": \"loop\", \"position\": { \"x\": 0, \"y\": 120 }, \"data\": { \"label\": \"Write each reminder\", \"loopType\": \"for-each\", \"items\": \"{{ appointments }}\", \"arraySource\": \"{{ appointments }}\", \"itemVariable\": \"appt\", \"body\": [\"reminder\"], \"onComplete\": \"no_invented_details\", \"maxIterations\": 100, \"collect\": \"text\", \"separator\": \"\\n\\n---\\n\\n\" } },\n { \"id\": \"reminder\", \"type\": \"prompt\", \"parentId\": \"each\", \"position\": { \"x\": 260, \"y\": 120 }, \"data\": { \"label\": \"Write one reminder\", \"sourceType\": \"raw\", \"source\": \"\", \"rawPrompt\": \"Write one appointment reminder to send as a {{ channel }}.\\n\\nTHE APPOINTMENT (one line from the owner's list)\\n{{ appt }}\\n\\nTHE BUSINESS\\n{{ business }}\\n\\nThe reminder must say who it is from, what the appointment is for, the day and time exactly as written in the appointment line, and how to reschedule using only the details given for the business. Address the client by first name. Keep a text message under 300 characters. For an email, put 'Subject: ' and a short subject on the first line, then the body.\\n\\nIf the appointment line is missing the client's name or the day and time, do NOT write a reminder. Return exactly: SKIPPED: <the line> - missing <what is missing>.\\n\\nNever invent a time, address, price, policy or rescheduling detail. Return the client's name on the first line, then the reminder ready to send. No commentary.\" } },\n { \"id\": \"no_invented_details\", \"type\": \"guardrail\", \"position\": { \"x\": 0, \"y\": 240 }, \"data\": { \"label\": \"Times and details match the list\", \"systemPrompt\": \"You are checking appointment reminders against the owner's own list and business details.\\n\\nTHE OWNER'S APPOINTMENT LIST\\n{{ appointments }}\\n\\nTHE OWNER'S BUSINESS DETAILS\\n{{ business }}\\n\\nA reminder FAILS if its day or time is a different day or time from its line in the list (the same time written differently, such as 10:30am and 10:30 AM, is NOT different), if it names a client who is not in the list, or if it states an address, phone number, link, price or policy that is not in the business details. Lines marked SKIPPED are correct behaviour and must pass. Wording and friendliness never fail a reminder.\\n\\nReply with JSON only: {\\\"pass\\\": true} or {\\\"pass\\\": false, \\\"reason\\\": \\\"<which reminder and what does not match>\\\"}.\", \"passExpression\": \"{{ pass }}\" } },\n { \"id\": \"final\", \"type\": \"transformer\", \"position\": { \"x\": 0, \"y\": 340 }, \"data\": { \"label\": \"Title the reminders\", \"mode\": \"template\", \"template\": \"REMINDERS ({{ channel }})\\n\\n{{ each }}\" } },\n { \"id\": \"out\", \"type\": \"output\", \"position\": { \"x\": 0, \"y\": 440 }, \"data\": { \"label\": \"Reminders\" } }\n ],\n \"edges\": [\n { \"id\": \"e-start-each\", \"source\": \"start\", \"target\": \"each\" },\n { \"id\": \"e-guard-final\", \"source\": \"no_invented_details\", \"target\": \"final\" },\n { \"id\": \"e-final-out\", \"source\": \"final\", \"target\": \"out\" }\n ]\n}\n",
|
|
108
109
|
"workflows/competitor-teardown/workflow.pdflow": "{\n \"version\": \"1.0\",\n \"metadata\": {\n \"id\": \"competitor-teardown\",\n \"name\": \"Competitor Teardown\",\n \"description\": \"Researches each competitor into the same shape, then names where you are differentiated and where you are exposed.\",\n \"tags\": [\"Marketing\"]\n },\n \"parameters\": [\n { \"name\": \"ours\", \"label\": \"Your product\", \"type\": \"string\", \"required\": true, \"multiline\": true, \"description\": \"In a few sentences: what do you sell, to whom, and what do you claim makes it different?\" },\n { \"name\": \"rivals\", \"label\": \"Competitors\", \"type\": \"string\", \"required\": true, \"multiline\": true, \"description\": \"List the competitors to tear down - one name per line.\" }\n ],\n \"nodes\": [\n { \"id\": \"start\", \"type\": \"trigger\", \"position\": { \"x\": 0, \"y\": 0 }, \"data\": { \"label\": \"Start\" } },\n { \"id\": \"each\", \"type\": \"loop\", \"position\": { \"x\": 0, \"y\": 300 }, \"data\": { \"label\": \"Profile each competitor\", \"loopType\": \"for-each\", \"items\": \"{{ rivals }}\", \"arraySource\": \"{{ rivals }}\", \"itemVariable\": \"rival\", \"body\": [\"profile\"], \"onComplete\": \"gather\", \"maxIterations\": 12 } },\n { \"id\": \"profile\", \"type\": \"agent\", \"parentId\": \"each\", \"position\": { \"x\": 260, \"y\": 300 }, \"data\": { \"label\": \"Profile one competitor\", \"systemPrompt\": \"You profile one competitor at a time into a fixed shape so the profiles can be compared. Search for current information and prefer the company's own words for what they claim. Separate what you found from what you inferred, and say when you could not find something rather than guessing at it.\", \"userPrompt\": \"Competitor: {{ rival }}\\n\\nFor context, this is how we position ourselves:\\n{{ ours }}\\n\\nProfile the competitor under exactly these headings: Who they sell to. What they claim. What they actually appear to do well. Where they are weak. How they price, if findable. Keep it under 250 words and mark anything you inferred.\", \"maxIterations\": 8, \"outputMode\": \"final-response\" } },\n { \"id\": \"profile_tools\", \"type\": \"tool\", \"position\": { \"x\": 520, \"y\": 300 }, \"data\": { \"label\": \"Search\", \"attachedTo\": \"profile\", \"tools\": [\"web_search\"] } },\n { \"id\": \"gather\", \"type\": \"transformer\", \"position\": { \"x\": 0, \"y\": 420 }, \"data\": { \"label\": \"Gather profiles\", \"mode\": \"template\", \"template\": \"OUR POSITIONING\\n{{ ours }}\\n\\nCOMPETITOR PROFILES\\n{{ each }}\" } },\n { \"id\": \"gaps\", \"type\": \"prompt\", \"position\": { \"x\": 0, \"y\": 520 }, \"data\": { \"label\": \"Differentiation and exposure\", \"sourceType\": \"raw\", \"source\": \"\", \"rawPrompt\": \"Compare the profiles below against our own positioning.\\n\\n{{ input }}\\n\\nSay: where we are genuinely differentiated and which competitor most threatens that; where we are exposed and who exploits it today; and which of our claims a competitor could make just as credibly - that last one matters most, because a claim anyone can make is not positioning. Be blunt. Mark anything resting on an inference rather than a found fact.\" } },\n { \"id\": \"out\", \"type\": \"output\", \"position\": { \"x\": 0, \"y\": 620 }, \"data\": { \"label\": \"Teardown\" } }\n ],\n \"edges\": [\n { \"id\": \"e3\", \"source\": \"start\", \"target\": \"each\" },\n { \"id\": \"e4\", \"source\": \"gather\", \"target\": \"gaps\" },\n { \"id\": \"e5\", \"source\": \"gaps\", \"target\": \"out\" }\n ]\n}\n",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.generated.js","sourceRoot":"","sources":["../../../prompts/library/defaults.generated.ts"],"names":[],"mappings":"AAAA;;gFAEgF;AAChF,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,wBAAwB,EAAE,4iFAA4iF;IACtkF,mBAAmB,EAAE,0PAA0P;IAC/Q,2BAA2B,EAAE,87EAA87E;IAC39E,qCAAqC,EAAE,wuBAAwuB;IAC/wB,aAAa,EAAE,ysBAAysB;IACxtB,mBAAmB,EAAE,soJAAsoJ;IAC3pJ,eAAe,EAAE,krBAAkrB;IACnsB,qBAAqB,EAAE,mZAAmZ;IAC1a,eAAe,EAAE,uVAAuV;IACxW,eAAe,EAAE,6gBAA6gB;IAC9hB,2BAA2B,EAAE,qlBAAqlB;IAClnB,gBAAgB,EAAE,mnCAAmnC;IACroC,cAAc,EAAE,86HAA86H;IAC97H,wBAAwB,EAAE,utBAAutB;IACjvB,wBAAwB,EAAE,q7GAAq7G;IAC/8G,yBAAyB,EAAE,49CAA49C;IACv/C,gBAAgB,EAAE,8hCAA8hC;IAChjC,qBAAqB,EAAE,g7CAAg7C;IACv8C,2BAA2B,EAAE,+pBAA+pB;IAC5rB,mBAAmB,EAAE,uiBAAuiB;IAC5jB,wBAAwB,EAAE,+sBAA+sB;IACzuB,yBAAyB,EAAE,0jBAA0jB;IACrlB,mBAAmB,EAAE,qmBAAqmB;IAC1nB,mBAAmB,EAAE,koBAAkoB;IACvpB,yBAAyB,EAAE,2bAA2b;IACtd,sBAAsB,EAAE,yiBAAyiB;IACjkB,oBAAoB,EAAE,qbAAqb;IAC3c,uBAAuB,EAAE,mhBAAmhB;IAC5iB,qBAAqB,EAAE,oKAAoK;IAC3L,0BAA0B,EAAE,4uBAA4uB;IACxwB,6BAA6B,EAAE,00BAA00B;IACz2B,8BAA8B,EAAE,qlCAAqlC;IACrnC,wBAAwB,EAAE,6jCAA6jC;IACvlC,mBAAmB,EAAE,2JAA2J;IAChL,kBAAkB,EAAE,8NAA8N;IAClP,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.generated.js","sourceRoot":"","sources":["../../../prompts/library/defaults.generated.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,9 @@ export declare function listSystemPrompts(opts: {
|
|
|
8
8
|
project: FileService | null;
|
|
9
9
|
/** The project's state directory name (`.corenel` / `.prompd`). */
|
|
10
10
|
projectDir: string;
|
|
11
|
+
/** The config workspace whose `systems/` are the host entries: one host's,
|
|
12
|
+
* for a run bound to it. Omitted = the host's (promptHost). */
|
|
13
|
+
config?: FileService;
|
|
11
14
|
}): Promise<SystemPromptEntry[]>;
|
|
12
15
|
/**
|
|
13
16
|
* What composeAgentSystem needs to compile an entry.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemPrompts.d.ts","sourceRoot":"","sources":["../../prompts/systemPrompts.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,yBAAyB,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC/F,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AA+BrF,wEAAwE;AACxE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,8CAA8C;IAC9C,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"systemPrompts.d.ts","sourceRoot":"","sources":["../../prompts/systemPrompts.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,OAAO,KAAK,EAAE,iBAAiB,EAAsB,MAAM,yBAAyB,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC/F,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AA+BrF,wEAAwE;AACxE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,8CAA8C;IAC9C,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB;mEAC+D;IAC/D,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAc/B;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,WAAW,GAAG,IAAI,GAC1B,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAItD"}
|
|
@@ -34,7 +34,7 @@ async function listRoot(files, dir, origin) {
|
|
|
34
34
|
export async function listSystemPrompts(opts) {
|
|
35
35
|
let config = null;
|
|
36
36
|
try {
|
|
37
|
-
config = promptHost().workspace;
|
|
37
|
+
config = opts.config ?? promptHost().workspace;
|
|
38
38
|
// Shipped defaults (system-base.md and friends) may not be written yet.
|
|
39
39
|
await seedConfig().catch(() => { });
|
|
40
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"systemPrompts.js","sourceRoot":"","sources":["../../prompts/systemPrompts.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG/F,MAAM,WAAW,GAAG,eAAe,CAAC;AAEpC,KAAK,UAAU,QAAQ,CACrB,KAAqC,EACrC,GAAW,EACX,MAA0B;IAE1B,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,IAAI,KAAqD,CAAC;IAC1D,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7D,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC;QACnB,IAAI,WAA+B,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/D,IAAI,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI;gBAAE,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;YACnE,IAAI,OAAO,IAAI,EAAE,WAAW,KAAK,QAAQ;gBAAE,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC,CAAC,kDAAkD,CAAC,CAAC;QAC9D,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,wEAAwE;AACxE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"systemPrompts.js","sourceRoot":"","sources":["../../prompts/systemPrompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileSessionStore.d.ts","sourceRoot":"","sources":["../../sessions/fileSessionStore.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,YAAY,EAAY,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,cAAc,EACtF,WAAW,EAAkB,gBAAgB,EAC9C,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"fileSessionStore.d.ts","sourceRoot":"","sources":["../../sessions/fileSessionStore.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EACV,YAAY,EAAY,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,cAAc,EACtF,WAAW,EAAkB,gBAAgB,EAC9C,MAAM,mBAAmB,CAAC;AA6E3B,qBAAa,iBAAkB,YAAW,aAAa;IAInD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,IAAI;IASZ,OAAO,CAAC,KAAK;IAbf,OAAO,CAAC,OAAO,CAA6B;gBAGlC,QAAQ,EAAE,MAAM,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,EAChE,IAAI,GAAE,MAAM,MAAqB,EASjC,KAAK,GAAE,MAAM,MAAM,GAAG,SAA2B;YAG7C,KAAK;IAmBnB,OAAO,CAAC,UAAU,CAA6B;IAE/C,8EAA8E;IAC9E,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1C,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,IAAI;IAIN,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAuB/H,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAiBnD;;;;;+EAK2E;YAQ7D,YAAY;IAO1B,uFAAuF;mBAClE,WAAW;IAKhC,OAAO,CAAC,MAAM,CAAC,MAAM;IAIf,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAK7D,uFAAuF;mBAClE,OAAO;IAM5B;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,QAAQ,CAAC,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC;IA4DnD,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyC/E;;mBAEe;YACD,IAAI;IAsBZ,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYhD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIxC"}
|