@pantion/dialogs 0.2.1 → 0.3.2
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/dialogs/router/convergence-rules.md +157 -0
- package/dialogs/router/dialog.json +12 -0
- package/dialogs/router/translate.md +21 -0
- package/dialogs/software/convergence-rules.md +202 -15
- package/dialogs/software/prompts/convergence-intro.md +27 -15
- package/dist/core/feedback/aggregator.d.ts +7 -0
- package/dist/core/feedback/aggregator.d.ts.map +1 -0
- package/dist/core/feedback/aggregator.js +119 -0
- package/dist/core/feedback/aggregator.js.map +1 -0
- package/dist/core/feedback/store.d.ts +20 -0
- package/dist/core/feedback/store.d.ts.map +1 -0
- package/dist/core/feedback/store.js +111 -0
- package/dist/core/feedback/store.js.map +1 -0
- package/dist/core/feedback/suggestions.d.ts +5 -0
- package/dist/core/feedback/suggestions.d.ts.map +1 -0
- package/dist/core/feedback/suggestions.js +60 -0
- package/dist/core/feedback/suggestions.js.map +1 -0
- package/dist/core/feedback/types.d.ts +26 -0
- package/dist/core/feedback/types.d.ts.map +1 -0
- package/dist/core/feedback/types.js +2 -0
- package/dist/core/feedback/types.js.map +1 -0
- package/dist/core/index.d.ts +16 -3
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +10 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/protocol/loader.d.ts +4 -0
- package/dist/core/protocol/loader.d.ts.map +1 -1
- package/dist/core/protocol/loader.js +16 -0
- package/dist/core/protocol/loader.js.map +1 -1
- package/dist/core/protocol/stamp-parser.d.ts.map +1 -1
- package/dist/core/protocol/stamp-parser.js +2 -1
- package/dist/core/protocol/stamp-parser.js.map +1 -1
- package/dist/core/protocol/system-prompt.d.ts +17 -0
- package/dist/core/protocol/system-prompt.d.ts.map +1 -1
- package/dist/core/protocol/system-prompt.js +67 -5
- package/dist/core/protocol/system-prompt.js.map +1 -1
- package/dist/core/router/classifier.d.ts +29 -0
- package/dist/core/router/classifier.d.ts.map +1 -0
- package/dist/core/router/classifier.js +160 -0
- package/dist/core/router/classifier.js.map +1 -0
- package/dist/core/router/context.d.ts +28 -0
- package/dist/core/router/context.d.ts.map +1 -0
- package/dist/core/router/context.js +65 -0
- package/dist/core/router/context.js.map +1 -0
- package/dist/core/router/menu.d.ts +18 -0
- package/dist/core/router/menu.d.ts.map +1 -0
- package/dist/core/router/menu.js +109 -0
- package/dist/core/router/menu.js.map +1 -0
- package/dist/core/router/next-actions.d.ts +17 -0
- package/dist/core/router/next-actions.d.ts.map +1 -0
- package/dist/core/router/next-actions.js +153 -0
- package/dist/core/router/next-actions.js.map +1 -0
- package/dist/core/router/types.d.ts +49 -0
- package/dist/core/router/types.d.ts.map +1 -0
- package/dist/core/router/types.js +8 -0
- package/dist/core/router/types.js.map +1 -0
- package/dist/core/types.d.ts +2 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/utils/datetime.d.ts +13 -0
- package/dist/core/utils/datetime.d.ts.map +1 -0
- package/dist/core/utils/datetime.js +17 -0
- package/dist/core/utils/datetime.js.map +1 -0
- package/dist/feature-set.d.ts.map +1 -1
- package/dist/feature-set.js +22 -14
- package/dist/feature-set.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/prompts/convergence-prompts.js +1 -1
- package/dist/prompts/convergence-prompts.js.map +1 -1
- package/dist/prompts/workflow-prompts.d.ts.map +1 -1
- package/dist/prompts/workflow-prompts.js +92 -13
- package/dist/prompts/workflow-prompts.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +8 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/amend.d.ts.map +1 -1
- package/dist/tools/amend.js +2 -2
- package/dist/tools/amend.js.map +1 -1
- package/dist/tools/approve.d.ts.map +1 -1
- package/dist/tools/approve.js +2 -2
- package/dist/tools/approve.js.map +1 -1
- package/dist/tools/build.d.ts +4 -0
- package/dist/tools/build.d.ts.map +1 -0
- package/dist/tools/build.js +200 -0
- package/dist/tools/build.js.map +1 -0
- package/dist/tools/check-convergence.d.ts.map +1 -1
- package/dist/tools/check-convergence.js +15 -1
- package/dist/tools/check-convergence.js.map +1 -1
- package/dist/tools/feedback.d.ts +4 -0
- package/dist/tools/feedback.d.ts.map +1 -0
- package/dist/tools/feedback.js +51 -0
- package/dist/tools/feedback.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +11 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/learn.d.ts +4 -0
- package/dist/tools/learn.d.ts.map +1 -0
- package/dist/tools/learn.js +38 -0
- package/dist/tools/learn.js.map +1 -0
- package/dist/tools/reflect.d.ts.map +1 -1
- package/dist/tools/reflect.js +68 -1
- package/dist/tools/reflect.js.map +1 -1
- package/dist/tools/reject.d.ts.map +1 -1
- package/dist/tools/reject.js +2 -2
- package/dist/tools/reject.js.map +1 -1
- package/dist/tools/router.d.ts +10 -0
- package/dist/tools/router.d.ts.map +1 -0
- package/dist/tools/router.js +315 -0
- package/dist/tools/router.js.map +1 -0
- package/dist/tools/save-canon.d.ts.map +1 -1
- package/dist/tools/save-canon.js +28 -12
- package/dist/tools/save-canon.js.map +1 -1
- package/dist/tools/start.d.ts.map +1 -1
- package/dist/tools/start.js +20 -7
- package/dist/tools/start.js.map +1 -1
- package/dist/tools/translate.d.ts.map +1 -1
- package/dist/tools/translate.js +21 -4
- package/dist/tools/translate.js.map +1 -1
- package/dist/tools/version.d.ts +4 -0
- package/dist/tools/version.d.ts.map +1 -0
- package/dist/tools/version.js +13 -0
- package/dist/tools/version.js.map +1 -0
- package/package.json +1 -1
- package/protocol/commands/dialog-post.md +46 -0
- package/protocol/commands/dialog-stamps.md +67 -0
- package/protocol/commands/dialog.md +4 -98
- package/protocol/commands/start-post.md +53 -0
- package/protocol/commands/start-stamps.md +133 -0
- package/protocol/commands/start.md +20 -167
- package/protocol/core-save.md +102 -0
- package/protocol/core-stamps.md +97 -0
- package/protocol/core.md +4 -191
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { resolve } from 'node:path';
|
|
2
|
+
import { readdirSync, existsSync } from 'node:fs';
|
|
3
|
+
import { homedir } from 'node:os';
|
|
4
|
+
import { readFileSafe, writeFile, canonDir, ensureDir } from '../utils/fs.js';
|
|
5
|
+
// --- Path helpers ---
|
|
6
|
+
export function feedbackFilePath(projectPath, canonName) {
|
|
7
|
+
return resolve(canonDir(projectPath), canonName, 'feedback.md');
|
|
8
|
+
}
|
|
9
|
+
export function projectFeedbackDir(projectPath) {
|
|
10
|
+
return resolve(projectPath, '.pantion', 'feedback');
|
|
11
|
+
}
|
|
12
|
+
export function projectPatternsPath(projectPath) {
|
|
13
|
+
return resolve(projectFeedbackDir(projectPath), 'patterns.md');
|
|
14
|
+
}
|
|
15
|
+
export function globalFeedbackDir() {
|
|
16
|
+
return resolve(homedir(), '.pantion', 'feedback');
|
|
17
|
+
}
|
|
18
|
+
export function globalPatternsPath() {
|
|
19
|
+
return resolve(globalFeedbackDir(), 'patterns.md');
|
|
20
|
+
}
|
|
21
|
+
export function feedbackConfigPath(projectPath) {
|
|
22
|
+
return resolve(projectFeedbackDir(projectPath), 'config.json');
|
|
23
|
+
}
|
|
24
|
+
// --- Config ---
|
|
25
|
+
const DEFAULT_SCOPE = 'project-and-global';
|
|
26
|
+
export function readFeedbackConfig(projectPath) {
|
|
27
|
+
const raw = readFileSafe(feedbackConfigPath(projectPath));
|
|
28
|
+
if (!raw)
|
|
29
|
+
return { scope: DEFAULT_SCOPE };
|
|
30
|
+
try {
|
|
31
|
+
const parsed = JSON.parse(raw);
|
|
32
|
+
if (parsed.scope === 'project-only' || parsed.scope === 'project-and-global') {
|
|
33
|
+
return { scope: parsed.scope };
|
|
34
|
+
}
|
|
35
|
+
return { scope: DEFAULT_SCOPE };
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return { scope: DEFAULT_SCOPE };
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
// --- Format ---
|
|
42
|
+
export function formatFeedbackEntry(entry) {
|
|
43
|
+
return [
|
|
44
|
+
`> **[${entry.type}]** (${entry.severity}) — ${entry.domain}`,
|
|
45
|
+
`> ${entry.description}`,
|
|
46
|
+
`> **Suggestion:** ${entry.suggestion}`,
|
|
47
|
+
`> *Source: ${entry.source} | Canon: ${entry.canonName} | Date: ${entry.date}*`,
|
|
48
|
+
'',
|
|
49
|
+
].join('\n');
|
|
50
|
+
}
|
|
51
|
+
// --- Append ---
|
|
52
|
+
export function appendFeedbackEntry(projectPath, canonName, entry) {
|
|
53
|
+
const path = feedbackFilePath(projectPath, canonName);
|
|
54
|
+
const existing = readFileSafe(path);
|
|
55
|
+
const formatted = formatFeedbackEntry(entry);
|
|
56
|
+
if (existing) {
|
|
57
|
+
writeFile(path, existing.trimEnd() + '\n\n' + formatted);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
const header = `# Feedback — ${canonName}\n\n`;
|
|
61
|
+
writeFile(path, header + formatted);
|
|
62
|
+
}
|
|
63
|
+
return path;
|
|
64
|
+
}
|
|
65
|
+
// --- Read ---
|
|
66
|
+
export function readFeedbackForCanon(projectPath, canonName) {
|
|
67
|
+
return readFileSafe(feedbackFilePath(projectPath, canonName));
|
|
68
|
+
}
|
|
69
|
+
export function readAllFeedback(projectPath) {
|
|
70
|
+
const dir = canonDir(projectPath);
|
|
71
|
+
if (!existsSync(dir))
|
|
72
|
+
return [];
|
|
73
|
+
const results = [];
|
|
74
|
+
let entries;
|
|
75
|
+
try {
|
|
76
|
+
entries = readdirSync(dir, { withFileTypes: true })
|
|
77
|
+
.filter((e) => e.isDirectory())
|
|
78
|
+
.map((e) => e.name);
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
return [];
|
|
82
|
+
}
|
|
83
|
+
for (const name of entries) {
|
|
84
|
+
const content = readFileSafe(resolve(dir, name, 'feedback.md'));
|
|
85
|
+
if (content) {
|
|
86
|
+
results.push({ canonName: name, content });
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return results;
|
|
90
|
+
}
|
|
91
|
+
// --- Patterns (read/write) ---
|
|
92
|
+
export function readProjectPatterns(projectPath) {
|
|
93
|
+
return readFileSafe(projectPatternsPath(projectPath));
|
|
94
|
+
}
|
|
95
|
+
export function readGlobalPatterns() {
|
|
96
|
+
return readFileSafe(globalPatternsPath());
|
|
97
|
+
}
|
|
98
|
+
export function writeProjectPatterns(projectPath, content) {
|
|
99
|
+
ensureDir(projectFeedbackDir(projectPath));
|
|
100
|
+
writeFile(projectPatternsPath(projectPath), content);
|
|
101
|
+
}
|
|
102
|
+
export function writeGlobalPatterns(content) {
|
|
103
|
+
try {
|
|
104
|
+
ensureDir(globalFeedbackDir());
|
|
105
|
+
writeFile(globalPatternsPath(), content);
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
// Silently skip if global dir is not writable (sandbox, CI, restricted envs)
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/core/feedback/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG9E,uBAAuB;AAEvB,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,SAAiB;IACrE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,OAAO,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,OAAO,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC,iBAAiB,EAAE,EAAE,aAAa,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,OAAO,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;AACjE,CAAC;AAED,iBAAiB;AAEjB,MAAM,aAAa,GAAkB,oBAAoB,CAAC;AAE1D,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,GAAG,GAAG,YAAY,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;QAC1D,IAAI,MAAM,CAAC,KAAK,KAAK,cAAc,IAAI,MAAM,CAAC,KAAK,KAAK,oBAAoB,EAAE,CAAC;YAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;QACjC,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAClC,CAAC;AACH,CAAC;AAED,iBAAiB;AAEjB,MAAM,UAAU,mBAAmB,CAAC,KAAoB;IACtD,OAAO;QACL,QAAQ,KAAK,CAAC,IAAI,QAAQ,KAAK,CAAC,QAAQ,OAAO,KAAK,CAAC,MAAM,EAAE;QAC7D,KAAK,KAAK,CAAC,WAAW,EAAE;QACxB,qBAAqB,KAAK,CAAC,UAAU,EAAE;QACvC,cAAc,KAAK,CAAC,MAAM,aAAa,KAAK,CAAC,SAAS,YAAY,KAAK,CAAC,IAAI,GAAG;QAC/E,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,iBAAiB;AAEjB,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,SAAiB,EACjB,KAAoB;IAEpB,MAAM,IAAI,GAAG,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,QAAQ,EAAE,CAAC;QACb,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,gBAAgB,SAAS,MAAM,CAAC;QAC/C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,eAAe;AAEf,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,SAAiB;IACzE,OAAO,YAAY,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,MAAM,GAAG,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAEhC,MAAM,OAAO,GAAkD,EAAE,CAAC;IAClE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;aAChD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;QAChE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gCAAgC;AAEhC,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,OAAO,YAAY,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,YAAY,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB,EAAE,OAAe;IACvE,SAAS,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3C,SAAS,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,IAAI,CAAC;QACH,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC/B,SAAS,CAAC,kBAAkB,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;IAC/E,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LearnedRule } from './types.js';
|
|
2
|
+
export declare function parseApprovedRules(content: string): LearnedRule[];
|
|
3
|
+
export declare function matchRules(rules: LearnedRule[], domain?: string, keywords?: string[]): LearnedRule[];
|
|
4
|
+
export declare function getRelevantSuggestions(projectPath: string, domain?: string, keywords?: string[]): string[];
|
|
5
|
+
//# sourceMappingURL=suggestions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestions.d.ts","sourceRoot":"","sources":["../../../src/core/feedback/suggestions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,CAkBjE;AAID,wBAAgB,UAAU,CACxB,KAAK,EAAE,WAAW,EAAE,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,WAAW,EAAE,CAef;AAID,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EAAE,GAClB,MAAM,EAAE,CAuBV"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { readProjectPatterns, readGlobalPatterns } from './store.js';
|
|
2
|
+
// --- Parse approved rules from patterns.md ---
|
|
3
|
+
const RULE_BLOCK_REGEX = /## \[APPROVED\] (.+)\n\n- \*\*Rule:\*\* (.+)\n- \*\*Domain:\*\* (.+)\n- \*\*Sources:\*\* (.+)\n- \*\*Date:\*\* (.+)/g;
|
|
4
|
+
export function parseApprovedRules(content) {
|
|
5
|
+
const rules = [];
|
|
6
|
+
RULE_BLOCK_REGEX.lastIndex = 0;
|
|
7
|
+
let match;
|
|
8
|
+
while ((match = RULE_BLOCK_REGEX.exec(content)) !== null) {
|
|
9
|
+
rules.push({
|
|
10
|
+
pattern: match[1].trim(),
|
|
11
|
+
rule: match[2].trim(),
|
|
12
|
+
domain: match[3].trim(),
|
|
13
|
+
sources: match[4].trim().split(', '),
|
|
14
|
+
date: match[5].trim(),
|
|
15
|
+
approved: true,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return rules;
|
|
19
|
+
}
|
|
20
|
+
// --- Match rules to domain / keywords ---
|
|
21
|
+
export function matchRules(rules, domain, keywords) {
|
|
22
|
+
if (rules.length === 0)
|
|
23
|
+
return [];
|
|
24
|
+
return rules.filter((rule) => {
|
|
25
|
+
// Domain match
|
|
26
|
+
if (domain && rule.domain.toLowerCase() === domain.toLowerCase())
|
|
27
|
+
return true;
|
|
28
|
+
// Keyword match (at least one keyword appears in rule or pattern)
|
|
29
|
+
if (keywords && keywords.length > 0) {
|
|
30
|
+
const ruleText = `${rule.rule} ${rule.pattern} ${rule.domain}`.toLowerCase();
|
|
31
|
+
return keywords.some((kw) => ruleText.includes(kw.toLowerCase()));
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
// --- Get relevant suggestions for a new session ---
|
|
37
|
+
export function getRelevantSuggestions(projectPath, domain, keywords) {
|
|
38
|
+
const projectContent = readProjectPatterns(projectPath);
|
|
39
|
+
const globalContent = readGlobalPatterns();
|
|
40
|
+
if (!projectContent && !globalContent)
|
|
41
|
+
return [];
|
|
42
|
+
// Parse approved rules from both sources
|
|
43
|
+
const allRules = [];
|
|
44
|
+
if (projectContent)
|
|
45
|
+
allRules.push(...parseApprovedRules(projectContent));
|
|
46
|
+
if (globalContent)
|
|
47
|
+
allRules.push(...parseApprovedRules(globalContent));
|
|
48
|
+
// Deduplicate by rule text
|
|
49
|
+
const seen = new Set();
|
|
50
|
+
const unique = allRules.filter((r) => {
|
|
51
|
+
if (seen.has(r.rule))
|
|
52
|
+
return false;
|
|
53
|
+
seen.add(r.rule);
|
|
54
|
+
return true;
|
|
55
|
+
});
|
|
56
|
+
// Match against domain/keywords
|
|
57
|
+
const matched = matchRules(unique, domain, keywords);
|
|
58
|
+
return matched.map((r) => r.rule);
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=suggestions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestions.js","sourceRoot":"","sources":["../../../src/core/feedback/suggestions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type FeedbackType = 'missed-question' | 'insufficient-answer' | 'unexpected-edge-case' | 'wrong-assumption';
|
|
2
|
+
export type FeedbackSeverity = 'high' | 'medium' | 'low';
|
|
3
|
+
export type FeedbackSource = 'reflect' | 'manual' | 'amend';
|
|
4
|
+
export interface FeedbackEntry {
|
|
5
|
+
type: FeedbackType;
|
|
6
|
+
domain: string;
|
|
7
|
+
severity: FeedbackSeverity;
|
|
8
|
+
description: string;
|
|
9
|
+
suggestion: string;
|
|
10
|
+
source: FeedbackSource;
|
|
11
|
+
canonName: string;
|
|
12
|
+
date: string;
|
|
13
|
+
}
|
|
14
|
+
export interface LearnedRule {
|
|
15
|
+
date: string;
|
|
16
|
+
sources: string[];
|
|
17
|
+
pattern: string;
|
|
18
|
+
rule: string;
|
|
19
|
+
domain: string;
|
|
20
|
+
approved: boolean;
|
|
21
|
+
}
|
|
22
|
+
export type FeedbackScope = 'project-and-global' | 'project-only';
|
|
23
|
+
export interface FeedbackConfig {
|
|
24
|
+
scope: FeedbackScope;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/feedback/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,iBAAiB,GACjB,qBAAqB,GACrB,sBAAsB,GACtB,kBAAkB,CAAC;AAEvB,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,aAAa,GAAG,oBAAoB,GAAG,cAAc,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,aAAa,CAAC;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/feedback/types.ts"],"names":[],"mappings":""}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export type { Message, Session, SessionMeta, SessionStatus, Dialog, DialogManifest, Soul, SoulManifest, OpenQuestion, ConvergenceStamp, ProgressStamp, HumanStamp, HumanStampStatus, ConvergenceEvent, ValidationResult, ValidationIssue, ChecklistCategory, ChecklistStatus, TotalOutcome, CanonMetadata, CanonEntry, ProjectContext, } from './types.js';
|
|
2
2
|
export { extractConvergenceStamp, extractProgressStamp, extractHumanStamp, formatHumanStamp, createPendingHumanStamp, createAutoApprovedHumanStamp, replaceHumanStamp, formatCanonMetadata, extractCanonMetadata, extractOpenQuestionIds, } from './protocol/stamp-parser.js';
|
|
3
3
|
export { detectConvergence, detectStopSignal, } from './protocol/convergence.js';
|
|
4
|
-
export { assembleSystemPrompt, } from './protocol/system-prompt.js';
|
|
5
|
-
export type { SystemPromptOptions } from './protocol/system-prompt.js';
|
|
6
|
-
export { loadProtocolCore, loadProtocolCommand, getProtocolDirectory, } from './protocol/loader.js';
|
|
4
|
+
export { assembleSystemPrompt, assembleDeferredPrompt, } from './protocol/system-prompt.js';
|
|
5
|
+
export type { SystemPromptOptions, DeferredPromptOptions } from './protocol/system-prompt.js';
|
|
6
|
+
export { loadProtocolCore, loadProtocolCommand, loadProtocolCoreSection, loadProtocolCommandPhase, getProtocolDirectory, } from './protocol/loader.js';
|
|
7
|
+
export type { CoreSection, CommandPhase } from './protocol/loader.js';
|
|
7
8
|
export { createSession, saveSession, loadSession, listSessions, getLastSession, findSessionByName, addMessage, updateStatus, } from './session/manager.js';
|
|
8
9
|
export { writeDialogFile, writeSummaryFile, appendAmendment, appendRealityConvergence, updateCanonIndex, } from './session/canon-writer.js';
|
|
9
10
|
export { validateConvergence, validateCanonFile, } from './canon/validator.js';
|
|
@@ -15,6 +16,18 @@ export { writeDialogCanonFile, writeDialogSummaryFile, dialogHasCanon, readDialo
|
|
|
15
16
|
export { listSouls, getSoul, } from './soul/registry.js';
|
|
16
17
|
export { autoSelectDialog, } from './dialog/selector.js';
|
|
17
18
|
export type { DialogSelection } from './dialog/selector.js';
|
|
19
|
+
export type { FeedbackType, FeedbackSeverity, FeedbackSource, FeedbackEntry, LearnedRule, FeedbackScope, FeedbackConfig, } from './feedback/types.js';
|
|
20
|
+
export { feedbackFilePath, projectFeedbackDir, projectPatternsPath, globalFeedbackDir, globalPatternsPath, feedbackConfigPath, readFeedbackConfig, formatFeedbackEntry, appendFeedbackEntry, readFeedbackForCanon, readAllFeedback, readProjectPatterns, readGlobalPatterns, writeProjectPatterns, writeGlobalPatterns, } from './feedback/store.js';
|
|
21
|
+
export { parseFeedbackEntries, detectPatterns, formatPatternsFile, signalPatterns, aggregateFeedback, } from './feedback/aggregator.js';
|
|
22
|
+
export { parseApprovedRules, matchRules, getRelevantSuggestions, } from './feedback/suggestions.js';
|
|
23
|
+
export type { RouterResponseType, RouterAction, RouterMenuItem, MenuSection, DecisionPath, RouterResponse, } from './router/types.js';
|
|
24
|
+
export { classifyIntent, KEYWORD_REGISTER, HIGH_RISK_ACTIONS, ACTION_TO_TOOL } from './router/classifier.js';
|
|
25
|
+
export type { ClassificationContext, ClassificationResult } from './router/classifier.js';
|
|
26
|
+
export { collectContext } from './router/context.js';
|
|
27
|
+
export type { DialogInfo, RouterContext } from './router/context.js';
|
|
28
|
+
export { buildMenu, buildContextSummary } from './router/menu.js';
|
|
29
|
+
export { buildNextActions, STATIC_SUCCESSORS, TOOL_FALLBACKS } from './router/next-actions.js';
|
|
30
|
+
export { stampDateTime, stampDate, } from './utils/datetime.js';
|
|
18
31
|
export { assertPathWithin, assertSafeName, canonDir, ensureDir, writeFile, readFileSafe, } from './utils/fs.js';
|
|
19
32
|
export { detectProjectContext, } from './utils/project-detect.js';
|
|
20
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,OAAO,EACP,OAAO,EACP,WAAW,EACX,aAAa,EACb,MAAM,EACN,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,4BAA4B,EAC5B,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,OAAO,EACP,OAAO,EACP,WAAW,EACX,aAAa,EACb,MAAM,EACN,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,4BAA4B,EAC5B,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAG9F,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGtE,OAAO,EACL,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,YAAY,GACb,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EACL,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,SAAS,EACT,OAAO,GACR,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AAGnC,YAAY,EACV,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7G,YAAY,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE1F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAErE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/F,OAAO,EACL,aAAa,EACb,SAAS,GACV,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,SAAS,EACT,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,oBAAoB,GACrB,MAAM,2BAA2B,CAAC"}
|
package/dist/core/index.js
CHANGED
|
@@ -3,9 +3,9 @@ export { extractConvergenceStamp, extractProgressStamp, extractHumanStamp, forma
|
|
|
3
3
|
// === Protocol: Convergence Detection ===
|
|
4
4
|
export { detectConvergence, detectStopSignal, } from './protocol/convergence.js';
|
|
5
5
|
// === Protocol: System Prompt Assembly ===
|
|
6
|
-
export { assembleSystemPrompt, } from './protocol/system-prompt.js';
|
|
6
|
+
export { assembleSystemPrompt, assembleDeferredPrompt, } from './protocol/system-prompt.js';
|
|
7
7
|
// === Protocol: Loader ===
|
|
8
|
-
export { loadProtocolCore, loadProtocolCommand, getProtocolDirectory, } from './protocol/loader.js';
|
|
8
|
+
export { loadProtocolCore, loadProtocolCommand, loadProtocolCoreSection, loadProtocolCommandPhase, getProtocolDirectory, } from './protocol/loader.js';
|
|
9
9
|
// === Session Management ===
|
|
10
10
|
export { createSession, saveSession, loadSession, listSessions, getLastSession, findSessionByName, addMessage, updateStatus, } from './session/manager.js';
|
|
11
11
|
// === Canon Writer ===
|
|
@@ -24,7 +24,15 @@ export { writeDialogCanonFile, writeDialogSummaryFile, dialogHasCanon, readDialo
|
|
|
24
24
|
export { listSouls, getSoul, } from './soul/registry.js';
|
|
25
25
|
// === Dialog Selector ===
|
|
26
26
|
export { autoSelectDialog, } from './dialog/selector.js';
|
|
27
|
+
export { feedbackFilePath, projectFeedbackDir, projectPatternsPath, globalFeedbackDir, globalPatternsPath, feedbackConfigPath, readFeedbackConfig, formatFeedbackEntry, appendFeedbackEntry, readFeedbackForCanon, readAllFeedback, readProjectPatterns, readGlobalPatterns, writeProjectPatterns, writeGlobalPatterns, } from './feedback/store.js';
|
|
28
|
+
export { parseFeedbackEntries, detectPatterns, formatPatternsFile, signalPatterns, aggregateFeedback, } from './feedback/aggregator.js';
|
|
29
|
+
export { parseApprovedRules, matchRules, getRelevantSuggestions, } from './feedback/suggestions.js';
|
|
30
|
+
export { classifyIntent, KEYWORD_REGISTER, HIGH_RISK_ACTIONS, ACTION_TO_TOOL } from './router/classifier.js';
|
|
31
|
+
export { collectContext } from './router/context.js';
|
|
32
|
+
export { buildMenu, buildContextSummary } from './router/menu.js';
|
|
33
|
+
export { buildNextActions, STATIC_SUCCESSORS, TOOL_FALLBACKS } from './router/next-actions.js';
|
|
27
34
|
// === Utils ===
|
|
35
|
+
export { stampDateTime, stampDate, } from './utils/datetime.js';
|
|
28
36
|
export { assertPathWithin, assertSafeName, canonDir, ensureDir, writeFile, readFileSafe, } from './utils/fs.js';
|
|
29
37
|
export { detectProjectContext, } from './utils/project-detect.js';
|
|
30
38
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AA0BA,kCAAkC;AAClC,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,4BAA4B,EAC5B,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AAEpC,0CAA0C;AAC1C,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAEnC,2CAA2C;AAC3C,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,9 @@ export declare function loadProtocolCore(protocolDir: string, options?: {
|
|
|
2
2
|
includeAdvanced?: boolean;
|
|
3
3
|
}): string;
|
|
4
4
|
export declare function loadProtocolCommand(name: string, protocolDir: string): string;
|
|
5
|
+
export type CoreSection = 'stamps' | 'save';
|
|
6
|
+
export type CommandPhase = 'stamps' | 'post';
|
|
7
|
+
export declare function loadProtocolCoreSection(protocolDir: string, section: CoreSection): string;
|
|
8
|
+
export declare function loadProtocolCommandPhase(commandName: string, phase: CommandPhase, protocolDir: string): string;
|
|
5
9
|
export declare function getProtocolDirectory(protocolDir: string): string;
|
|
6
10
|
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/loader.ts"],"names":[],"mappings":"AAQA,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAarG;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAO7E;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEhE"}
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/loader.ts"],"names":[],"mappings":"AAQA,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAarG;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAO7E;AAED,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC5C,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,MAAM,CAOzF;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAO9G;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEhE"}
|
|
@@ -25,6 +25,22 @@ export function loadProtocolCommand(name, protocolDir) {
|
|
|
25
25
|
}
|
|
26
26
|
return readFileSync(cmdPath, 'utf-8');
|
|
27
27
|
}
|
|
28
|
+
export function loadProtocolCoreSection(protocolDir, section) {
|
|
29
|
+
const dir = assertDir(protocolDir);
|
|
30
|
+
const filePath = resolve(dir, `core-${section}.md`);
|
|
31
|
+
if (!existsSync(filePath)) {
|
|
32
|
+
throw new Error(`Protocol core section not found: core-${section}.md`);
|
|
33
|
+
}
|
|
34
|
+
return readFileSync(filePath, 'utf-8');
|
|
35
|
+
}
|
|
36
|
+
export function loadProtocolCommandPhase(commandName, phase, protocolDir) {
|
|
37
|
+
const dir = assertDir(protocolDir);
|
|
38
|
+
const filePath = resolve(dir, 'commands', `${commandName}-${phase}.md`);
|
|
39
|
+
if (!existsSync(filePath)) {
|
|
40
|
+
throw new Error(`Protocol command phase not found: ${commandName}-${phase}.md`);
|
|
41
|
+
}
|
|
42
|
+
return readFileSync(filePath, 'utf-8');
|
|
43
|
+
}
|
|
28
44
|
export function getProtocolDirectory(protocolDir) {
|
|
29
45
|
return assertDir(protocolDir);
|
|
30
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/core/protocol/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,SAAS,SAAS,CAAC,WAAmB;IACpC,IAAI,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,OAAuC;IAC3F,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACzC,IAAI,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE9C,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACtD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,MAAM,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,WAAmB;IACnE,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC"}
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/core/protocol/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,SAAS,SAAS,CAAC,WAAmB;IACpC,IAAI,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,OAAuC;IAC3F,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACzC,IAAI,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE9C,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACtD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,MAAM,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,WAAmB;IACnE,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC;AAKD,MAAM,UAAU,uBAAuB,CAAC,WAAmB,EAAE,OAAoB;IAC/E,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,OAAO,KAAK,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,KAAK,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,WAAmB,EAAE,KAAmB,EAAE,WAAmB;IACpG,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,WAAW,IAAI,KAAK,KAAK,CAAC,CAAC;IACxE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,qCAAqC,WAAW,IAAI,KAAK,KAAK,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAmB;IACtD,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stamp-parser.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/stamp-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"stamp-parser.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/stamp-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAmH9H;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAenE;AAsBD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAiC7E;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA6CvE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CA+BjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAST;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAOrD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS/E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAQ/D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAiBvE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { stampDateTime } from '../utils/datetime.js';
|
|
1
2
|
const STAMP_START = '=== DIALOGSPEC STAMP ===';
|
|
2
3
|
const STAMP_END = '=== /DIALOGSPEC STAMP ===';
|
|
3
4
|
const PROGRESS_START = '=== DIALOGSPEC PROGRESS ===';
|
|
@@ -274,7 +275,7 @@ export function createPendingHumanStamp() {
|
|
|
274
275
|
export function createAutoApprovedHumanStamp() {
|
|
275
276
|
return formatHumanStamp({
|
|
276
277
|
status: 'AUTO-APPROVED',
|
|
277
|
-
date:
|
|
278
|
+
date: stampDateTime(),
|
|
278
279
|
role: 'dialog-mode',
|
|
279
280
|
note: 'Auto-approved (dialog mode)',
|
|
280
281
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stamp-parser.js","sourceRoot":"","sources":["../../../src/core/protocol/stamp-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stamp-parser.js","sourceRoot":"","sources":["../../../src/core/protocol/stamp-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,4 +13,21 @@ export interface SystemPromptOptions {
|
|
|
13
13
|
* This is the bridge between the protocol .md files and the LLM.
|
|
14
14
|
*/
|
|
15
15
|
export declare function assembleSystemPrompt(options: SystemPromptOptions): string;
|
|
16
|
+
export interface DeferredPromptOptions {
|
|
17
|
+
/** Which deferred phase to load */
|
|
18
|
+
phase: 'stamps' | 'save' | 'post';
|
|
19
|
+
/** The command name (e.g. 'start', 'dialog') */
|
|
20
|
+
commandName: string;
|
|
21
|
+
/** Path to the protocol directory */
|
|
22
|
+
protocolDir: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Assemble deferred protocol content for injection into tool responses.
|
|
26
|
+
* This content was removed from the initial system prompt to reduce token cost
|
|
27
|
+
* and is loaded at the natural moment it's needed:
|
|
28
|
+
* - 'stamps': core-stamps + command-stamps (for check-convergence)
|
|
29
|
+
* - 'save': core-save + command-stamps (for save-canon)
|
|
30
|
+
* - 'post': command-post (for translate)
|
|
31
|
+
*/
|
|
32
|
+
export declare function assembleDeferredPrompt(options: DeferredPromptOptions): string;
|
|
16
33
|
//# sourceMappingURL=system-prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/system-prompt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../../src/core/protocol/system-prompt.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC5J,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAC;CAC7C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAoFzE;AAED,MAAM,WAAW,qBAAqB;IACpC,mCAAmC;IACnC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAsB7E"}
|
|
@@ -1,4 +1,23 @@
|
|
|
1
|
-
import { loadProtocolCore, loadProtocolCommand } from './loader.js';
|
|
1
|
+
import { loadProtocolCore, loadProtocolCommand, loadProtocolCoreSection, loadProtocolCommandPhase } from './loader.js';
|
|
2
|
+
import { stampDateTime } from '../utils/datetime.js';
|
|
3
|
+
const MODE_LABELS = {
|
|
4
|
+
start: 'DIALOG',
|
|
5
|
+
resume: 'RESUME',
|
|
6
|
+
quick: 'DIALOG',
|
|
7
|
+
dialog: 'DIALOG',
|
|
8
|
+
amend: 'AMEND',
|
|
9
|
+
check: 'CHECK',
|
|
10
|
+
translate: 'TRANSLATE',
|
|
11
|
+
reconverge: 'REDIALOG',
|
|
12
|
+
decompose: 'DECOMPOSE',
|
|
13
|
+
reverse: 'REVERSE',
|
|
14
|
+
onboard: 'ONBOARD',
|
|
15
|
+
update: 'UPDATE',
|
|
16
|
+
migrate: 'MIGRATE',
|
|
17
|
+
};
|
|
18
|
+
function getModeLabel(mode) {
|
|
19
|
+
return MODE_LABELS[mode] ?? mode.toUpperCase();
|
|
20
|
+
}
|
|
2
21
|
/**
|
|
3
22
|
* Assemble the full system prompt from protocol core + command + skill rules.
|
|
4
23
|
* This is the bridge between the protocol .md files and the LLM.
|
|
@@ -25,7 +44,20 @@ export function assembleSystemPrompt(options) {
|
|
|
25
44
|
parts.push('# Active Soul — Interaction Style\n\n');
|
|
26
45
|
parts.push(options.soulRules);
|
|
27
46
|
}
|
|
28
|
-
// 5.
|
|
47
|
+
// 5. Visual identity — show prompt with every response during active dialog
|
|
48
|
+
// Skip if the dialog provides its own Visual Identity section (e.g. router)
|
|
49
|
+
const dialogHasOwnVisualIdentity = options.dialogRules?.includes('## Visual Identity');
|
|
50
|
+
if (!dialogHasOwnVisualIdentity) {
|
|
51
|
+
const modeLabel = getModeLabel(options.mode);
|
|
52
|
+
parts.push('\n---\n');
|
|
53
|
+
parts.push('# Visual Identity\n\n');
|
|
54
|
+
parts.push(`You are operating inside an active Pantion dialog. To make this visually clear to the user, prefix EVERY response with this prompt:\n\n`);
|
|
55
|
+
parts.push(`\`\`\`\nPANTION ${modeLabel} (o<\n\`\`\`\n\n`);
|
|
56
|
+
parts.push('Show the prompt first, then your response. No exceptions — every message during the dialog gets the prompt.\n\n');
|
|
57
|
+
parts.push('When the dialog ends (convergence complete, canon saved, or user stops), show this exit banner as your final Pantion output:\n\n');
|
|
58
|
+
parts.push('```\n_ _ _ _ _ _\nPANTION\n (o<\n________<_)\n```\n');
|
|
59
|
+
}
|
|
60
|
+
// 6. Context
|
|
29
61
|
parts.push('\n---\n');
|
|
30
62
|
parts.push('# Session Context\n\n');
|
|
31
63
|
if (options.canonName) {
|
|
@@ -34,8 +66,8 @@ export function assembleSystemPrompt(options) {
|
|
|
34
66
|
if (options.userLanguage) {
|
|
35
67
|
parts.push(`User language: ${options.userLanguage}. Respond in this language.\n`);
|
|
36
68
|
}
|
|
37
|
-
parts.push(`Date: ${
|
|
38
|
-
//
|
|
69
|
+
parts.push(`Date: ${stampDateTime()}\n`);
|
|
70
|
+
// 7. Inference Policy enforcement (dynamic based on stamp value)
|
|
39
71
|
if (options.inferencePolicy === 'strict') {
|
|
40
72
|
parts.push('\n---\n');
|
|
41
73
|
parts.push('# Inference Policy: STRICT\n\n');
|
|
@@ -46,7 +78,7 @@ export function assembleSystemPrompt(options) {
|
|
|
46
78
|
parts.push('- If a concept has multiple interpretations, ask which one the user means.\n');
|
|
47
79
|
parts.push('- Treat FLEX zones as "undecided", not as "your choice".\n');
|
|
48
80
|
}
|
|
49
|
-
//
|
|
81
|
+
// 8. For resume/reconverge/decompose: include the existing dialog
|
|
50
82
|
if (options.existingDialog) {
|
|
51
83
|
parts.push('\n---\n');
|
|
52
84
|
if (options.mode === 'reconverge') {
|
|
@@ -65,4 +97,34 @@ export function assembleSystemPrompt(options) {
|
|
|
65
97
|
}
|
|
66
98
|
return parts.join('\n');
|
|
67
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* Assemble deferred protocol content for injection into tool responses.
|
|
102
|
+
* This content was removed from the initial system prompt to reduce token cost
|
|
103
|
+
* and is loaded at the natural moment it's needed:
|
|
104
|
+
* - 'stamps': core-stamps + command-stamps (for check-convergence)
|
|
105
|
+
* - 'save': core-save + command-stamps (for save-canon)
|
|
106
|
+
* - 'post': command-post (for translate)
|
|
107
|
+
*/
|
|
108
|
+
export function assembleDeferredPrompt(options) {
|
|
109
|
+
const parts = [];
|
|
110
|
+
parts.push('# Deferred Protocol Instructions\n');
|
|
111
|
+
parts.push('The following protocol sections are relevant for this phase of the dialog.\n\n');
|
|
112
|
+
if (options.phase === 'stamps') {
|
|
113
|
+
// Check-convergence needs stamp formats from both core and command
|
|
114
|
+
parts.push(loadProtocolCoreSection(options.protocolDir, 'stamps'));
|
|
115
|
+
parts.push('\n---\n');
|
|
116
|
+
parts.push(loadProtocolCommandPhase(options.commandName, 'stamps', options.protocolDir));
|
|
117
|
+
}
|
|
118
|
+
else if (options.phase === 'save') {
|
|
119
|
+
// Save-canon needs canon structure + saving rules
|
|
120
|
+
parts.push(loadProtocolCoreSection(options.protocolDir, 'save'));
|
|
121
|
+
parts.push('\n---\n');
|
|
122
|
+
parts.push(loadProtocolCommandPhase(options.commandName, 'stamps', options.protocolDir));
|
|
123
|
+
}
|
|
124
|
+
else if (options.phase === 'post') {
|
|
125
|
+
// Translate needs post-convergence rules
|
|
126
|
+
parts.push(loadProtocolCommandPhase(options.commandName, 'post', options.protocolDir));
|
|
127
|
+
}
|
|
128
|
+
return parts.join('\n');
|
|
129
|
+
}
|
|
68
130
|
//# sourceMappingURL=system-prompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../../src/core/protocol/system-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../../src/core/protocol/system-prompt.ts"],"names":[],"mappings":"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"}
|