cognitive-core 0.2.3 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/cognitive-core.js +0 -0
- package/dist/learning/pipeline.d.ts +89 -0
- package/dist/learning/pipeline.d.ts.map +1 -0
- package/dist/learning/pipeline.js +236 -0
- package/dist/learning/pipeline.js.map +1 -0
- package/dist/surfacing/skill-publisher.d.ts.map +1 -1
- package/dist/surfacing/skill-publisher.js +74 -23
- package/dist/surfacing/skill-publisher.js.map +1 -1
- package/dist/types/playbook.d.ts +11 -0
- package/dist/types/playbook.d.ts.map +1 -1
- package/dist/types/playbook.js +2 -0
- package/dist/types/playbook.js.map +1 -1
- package/dist/workspace/templates/index.d.ts +1 -0
- package/dist/workspace/templates/index.d.ts.map +1 -1
- package/dist/workspace/templates/index.js +2 -0
- package/dist/workspace/templates/index.js.map +1 -1
- package/dist/workspace/templates/skill-enrichment.d.ts +48 -0
- package/dist/workspace/templates/skill-enrichment.d.ts.map +1 -0
- package/dist/workspace/templates/skill-enrichment.js +175 -0
- package/dist/workspace/templates/skill-enrichment.js.map +1 -0
- package/package.json +3 -3
- package/src/surfacing/skill-publisher.ts +92 -26
- package/src/types/playbook.ts +15 -0
- package/src/workspace/templates/index.ts +7 -0
- package/src/workspace/templates/skill-enrichment.ts +275 -0
- package/tests/surfacing/skill-publisher.test.ts +81 -8
|
File without changes
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { Trajectory, LearningConfig } from '../types/index.js';
|
|
2
|
+
import type { TrajectoryWithAnalysis } from '../types/trajectory-source.js';
|
|
3
|
+
import type { MemorySystem } from '../memory/system.js';
|
|
4
|
+
import { type AnalysisResult } from './analyzer.js';
|
|
5
|
+
import type { AgenticTaskRunner } from '../workspace/runner.js';
|
|
6
|
+
/**
|
|
7
|
+
* Result of processing a single trajectory
|
|
8
|
+
*/
|
|
9
|
+
export interface ProcessResult {
|
|
10
|
+
trajectoryId: string;
|
|
11
|
+
stored: boolean;
|
|
12
|
+
analysis: AnalysisResult;
|
|
13
|
+
abstractable: boolean;
|
|
14
|
+
playbookExtracted: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Result of batch learning
|
|
18
|
+
*/
|
|
19
|
+
export interface BatchResult {
|
|
20
|
+
trajectoriesProcessed: number;
|
|
21
|
+
playbooksExtracted: number;
|
|
22
|
+
experiencesPruned: number;
|
|
23
|
+
successRate: number;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Learning Pipeline
|
|
27
|
+
* Orchestrates trajectory analysis, playbook extraction, and memory updates
|
|
28
|
+
*/
|
|
29
|
+
export declare class LearningPipeline {
|
|
30
|
+
private analyzer;
|
|
31
|
+
private playbookExtractor;
|
|
32
|
+
private memory;
|
|
33
|
+
private config;
|
|
34
|
+
private taskRunner;
|
|
35
|
+
private accumulated;
|
|
36
|
+
private accumulatedAnalyses;
|
|
37
|
+
private lastBatchTime;
|
|
38
|
+
constructor(memory: MemorySystem, config?: Partial<LearningConfig>);
|
|
39
|
+
/**
|
|
40
|
+
* Set the agentic task runner for workspace-based analysis.
|
|
41
|
+
* When set, analysis tasks are delegated to templates (with heuristic fallback).
|
|
42
|
+
*/
|
|
43
|
+
setTaskRunner(runner: AgenticTaskRunner): void;
|
|
44
|
+
/**
|
|
45
|
+
* Process a single trajectory
|
|
46
|
+
*/
|
|
47
|
+
processTrajectory(trajectory: Trajectory): Promise<ProcessResult>;
|
|
48
|
+
/**
|
|
49
|
+
* Run trajectory analysis via the workspace template.
|
|
50
|
+
* The template's assessComplexity() routes simple cases to heuristicFallback()
|
|
51
|
+
* (which calls the existing TrajectoryAnalyzer), so this is safe for all inputs.
|
|
52
|
+
*/
|
|
53
|
+
private analyzeWithTemplate;
|
|
54
|
+
/**
|
|
55
|
+
* Check if batch learning should run
|
|
56
|
+
*/
|
|
57
|
+
shouldRunBatch(): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Run batch learning on accumulated trajectories
|
|
60
|
+
*/
|
|
61
|
+
runBatchLearning(): Promise<BatchResult>;
|
|
62
|
+
/**
|
|
63
|
+
* Run playbook extraction via the workspace template.
|
|
64
|
+
* Falls back to heuristic extractor on failure.
|
|
65
|
+
*/
|
|
66
|
+
private extractPlaybooks;
|
|
67
|
+
/**
|
|
68
|
+
* Get accumulated trajectory count
|
|
69
|
+
*/
|
|
70
|
+
getAccumulatedCount(): number;
|
|
71
|
+
/**
|
|
72
|
+
* Get accumulated trajectories with their analyses.
|
|
73
|
+
* Read-only view — does not clear the accumulator.
|
|
74
|
+
*/
|
|
75
|
+
getAccumulated(): TrajectoryWithAnalysis[];
|
|
76
|
+
/**
|
|
77
|
+
* Clear accumulated trajectories
|
|
78
|
+
*/
|
|
79
|
+
clearAccumulated(): void;
|
|
80
|
+
/**
|
|
81
|
+
* Update configuration
|
|
82
|
+
*/
|
|
83
|
+
updateConfig(config: Partial<LearningConfig>): void;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Create a learning pipeline
|
|
87
|
+
*/
|
|
88
|
+
export declare function createLearningPipeline(memory: MemorySystem, config?: Partial<LearningConfig>): LearningPipeline;
|
|
89
|
+
//# sourceMappingURL=pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/learning/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAKvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAiB;IAG/B,OAAO,CAAC,UAAU,CAAkC;IAGpD,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,mBAAmB,CAAwB;IACnD,OAAO,CAAC,aAAa,CAAqB;gBAE9B,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAoBlE;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAI9C;;OAEG;IACG,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAyBvE;;;;OAIG;YACW,mBAAmB;IAiBjC;;OAEG;IACH,cAAc,IAAI,OAAO;IA6BzB;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC;IA4E9C;;;OAGG;YACW,gBAAgB;IA0B9B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;;OAGG;IACH,cAAc,IAAI,sBAAsB,EAAE;IAO1C;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAKxB;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;CAMpD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAC/B,gBAAgB,CAElB"}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import { createAnalyzer, } from './analyzer.js';
|
|
2
|
+
import { createPlaybookExtractor, } from './playbook-extractor.js';
|
|
3
|
+
import { trajectoryAnalysisTemplate } from '../workspace/templates/trajectory-analysis.js';
|
|
4
|
+
import { playbookExtractionTemplate } from '../workspace/templates/playbook-extraction.js';
|
|
5
|
+
/**
|
|
6
|
+
* Learning Pipeline
|
|
7
|
+
* Orchestrates trajectory analysis, playbook extraction, and memory updates
|
|
8
|
+
*/
|
|
9
|
+
export class LearningPipeline {
|
|
10
|
+
analyzer;
|
|
11
|
+
playbookExtractor;
|
|
12
|
+
memory;
|
|
13
|
+
config;
|
|
14
|
+
// Optional agentic task runner for workspace-based analysis
|
|
15
|
+
taskRunner = null;
|
|
16
|
+
// Accumulated trajectories for batch learning
|
|
17
|
+
accumulated = [];
|
|
18
|
+
accumulatedAnalyses = [];
|
|
19
|
+
lastBatchTime = null;
|
|
20
|
+
constructor(memory, config) {
|
|
21
|
+
this.memory = memory;
|
|
22
|
+
this.config = {
|
|
23
|
+
creditStrategy: config?.creditStrategy ?? 'simple',
|
|
24
|
+
patternExtractor: config?.patternExtractor ?? 'llm',
|
|
25
|
+
minTrajectories: config?.minTrajectories ?? 10,
|
|
26
|
+
minHoursSinceLast: config?.minHoursSinceLast,
|
|
27
|
+
minSuccessRate: config?.minSuccessRate,
|
|
28
|
+
deduplicationThreshold: config?.deduplicationThreshold ?? 0.9,
|
|
29
|
+
maxExperiences: config?.maxExperiences ?? 1000,
|
|
30
|
+
};
|
|
31
|
+
this.analyzer = createAnalyzer(this.config.creditStrategy);
|
|
32
|
+
this.playbookExtractor = createPlaybookExtractor({
|
|
33
|
+
minTrajectories: this.config.minTrajectories,
|
|
34
|
+
mergeThreshold: this.config.deduplicationThreshold,
|
|
35
|
+
minSuccessRate: this.config.minSuccessRate ?? 0.6,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Set the agentic task runner for workspace-based analysis.
|
|
40
|
+
* When set, analysis tasks are delegated to templates (with heuristic fallback).
|
|
41
|
+
*/
|
|
42
|
+
setTaskRunner(runner) {
|
|
43
|
+
this.taskRunner = runner;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Process a single trajectory
|
|
47
|
+
*/
|
|
48
|
+
async processTrajectory(trajectory) {
|
|
49
|
+
// Store in experience memory
|
|
50
|
+
await this.memory.storeTrajectory(trajectory);
|
|
51
|
+
// Analyze: workspace-based when runner available, heuristic otherwise
|
|
52
|
+
let analysis;
|
|
53
|
+
if (this.taskRunner) {
|
|
54
|
+
analysis = await this.analyzeWithTemplate(trajectory);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
analysis = await this.analyzer.analyze(trajectory);
|
|
58
|
+
}
|
|
59
|
+
// Accumulate for batch learning
|
|
60
|
+
this.accumulated.push(trajectory);
|
|
61
|
+
this.accumulatedAnalyses.push(analysis);
|
|
62
|
+
return {
|
|
63
|
+
trajectoryId: trajectory.id,
|
|
64
|
+
stored: true,
|
|
65
|
+
analysis,
|
|
66
|
+
abstractable: analysis.abstractable,
|
|
67
|
+
playbookExtracted: false, // Playbooks are extracted in batch
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Run trajectory analysis via the workspace template.
|
|
72
|
+
* The template's assessComplexity() routes simple cases to heuristicFallback()
|
|
73
|
+
* (which calls the existing TrajectoryAnalyzer), so this is safe for all inputs.
|
|
74
|
+
*/
|
|
75
|
+
async analyzeWithTemplate(trajectory) {
|
|
76
|
+
try {
|
|
77
|
+
const result = await this.taskRunner.run(trajectoryAnalysisTemplate, {
|
|
78
|
+
trajectory,
|
|
79
|
+
creditStrategy: this.config.creditStrategy,
|
|
80
|
+
});
|
|
81
|
+
return result.output;
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
// If workspace-based analysis fails, fall back to heuristic
|
|
85
|
+
console.error('Workspace-based trajectory analysis failed, falling back to heuristic:', error instanceof Error ? error.message : error);
|
|
86
|
+
return this.analyzer.analyze(trajectory);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Check if batch learning should run
|
|
91
|
+
*/
|
|
92
|
+
shouldRunBatch() {
|
|
93
|
+
// Check minimum trajectories
|
|
94
|
+
if (this.accumulated.length < this.config.minTrajectories) {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
// Check time since last batch
|
|
98
|
+
if (this.config.minHoursSinceLast && this.lastBatchTime) {
|
|
99
|
+
const hoursSinceLast = (Date.now() - this.lastBatchTime.getTime()) / (1000 * 60 * 60);
|
|
100
|
+
if (hoursSinceLast < this.config.minHoursSinceLast) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
// Check success rate
|
|
105
|
+
if (this.config.minSuccessRate) {
|
|
106
|
+
const successCount = this.accumulatedAnalyses.filter((a) => a.success).length;
|
|
107
|
+
const successRate = successCount / this.accumulated.length;
|
|
108
|
+
if (successRate < this.config.minSuccessRate) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Run batch learning on accumulated trajectories
|
|
116
|
+
*/
|
|
117
|
+
async runBatchLearning() {
|
|
118
|
+
if (this.accumulated.length === 0) {
|
|
119
|
+
return {
|
|
120
|
+
trajectoriesProcessed: 0,
|
|
121
|
+
playbooksExtracted: 0,
|
|
122
|
+
experiencesPruned: 0,
|
|
123
|
+
successRate: 0,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
// Extract playbooks: workspace-based when runner available, heuristic otherwise
|
|
127
|
+
let playbooksAdded = 0;
|
|
128
|
+
const existingPlaybooks = await this.memory.playbooks.getAll();
|
|
129
|
+
const playbookExtraction = await this.extractPlaybooks(existingPlaybooks);
|
|
130
|
+
// Add new playbooks
|
|
131
|
+
for (const playbook of playbookExtraction.new) {
|
|
132
|
+
const exists = await this.memory.playbooks.exists(playbook.name, this.config.deduplicationThreshold);
|
|
133
|
+
if (!exists) {
|
|
134
|
+
await this.memory.playbooks.add(playbook);
|
|
135
|
+
playbooksAdded++;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
// Apply updates to existing playbooks
|
|
139
|
+
for (const update of playbookExtraction.updates) {
|
|
140
|
+
if (update.refinement) {
|
|
141
|
+
await this.memory.playbooks.addRefinement(update.id, update.refinement.context, update.refinement.addition, update.refinement.source);
|
|
142
|
+
}
|
|
143
|
+
if (update.newTrigger) {
|
|
144
|
+
const playbook = await this.memory.playbooks.get(update.id);
|
|
145
|
+
if (playbook && !playbook.applicability.triggers.includes(update.newTrigger)) {
|
|
146
|
+
playbook.applicability.triggers.push(update.newTrigger);
|
|
147
|
+
await this.memory.playbooks.add(playbook);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
if (update.newAntiPattern) {
|
|
151
|
+
const playbook = await this.memory.playbooks.get(update.id);
|
|
152
|
+
if (playbook && !playbook.applicability.antiPatterns.includes(update.newAntiPattern)) {
|
|
153
|
+
playbook.applicability.antiPatterns.push(update.newAntiPattern);
|
|
154
|
+
await this.memory.playbooks.add(playbook);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
// Prune experiences if needed
|
|
159
|
+
const pruned = await this.memory.experiences.prune({
|
|
160
|
+
maxCount: this.config.maxExperiences,
|
|
161
|
+
});
|
|
162
|
+
// Calculate success rate
|
|
163
|
+
const successCount = this.accumulatedAnalyses.filter((a) => a.success).length;
|
|
164
|
+
const successRate = successCount / this.accumulated.length;
|
|
165
|
+
// Clear accumulated and update time
|
|
166
|
+
const trajectoriesProcessed = this.accumulated.length;
|
|
167
|
+
this.accumulated = [];
|
|
168
|
+
this.accumulatedAnalyses = [];
|
|
169
|
+
this.lastBatchTime = new Date();
|
|
170
|
+
return {
|
|
171
|
+
trajectoriesProcessed,
|
|
172
|
+
playbooksExtracted: playbooksAdded,
|
|
173
|
+
experiencesPruned: pruned.totalPruned,
|
|
174
|
+
successRate,
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Run playbook extraction via the workspace template.
|
|
179
|
+
* Falls back to heuristic extractor on failure.
|
|
180
|
+
*/
|
|
181
|
+
async extractPlaybooks(existingPlaybooks) {
|
|
182
|
+
if (this.taskRunner) {
|
|
183
|
+
try {
|
|
184
|
+
const result = await this.taskRunner.run(playbookExtractionTemplate, {
|
|
185
|
+
trajectories: this.accumulated,
|
|
186
|
+
analyses: this.accumulatedAnalyses,
|
|
187
|
+
existingPlaybooks,
|
|
188
|
+
});
|
|
189
|
+
return result.output;
|
|
190
|
+
}
|
|
191
|
+
catch (error) {
|
|
192
|
+
console.error('Workspace-based playbook extraction failed, falling back to heuristic:', error instanceof Error ? error.message : error);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
return this.playbookExtractor.extract(this.accumulated, this.accumulatedAnalyses, existingPlaybooks);
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get accumulated trajectory count
|
|
199
|
+
*/
|
|
200
|
+
getAccumulatedCount() {
|
|
201
|
+
return this.accumulated.length;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Get accumulated trajectories with their analyses.
|
|
205
|
+
* Read-only view — does not clear the accumulator.
|
|
206
|
+
*/
|
|
207
|
+
getAccumulated() {
|
|
208
|
+
return this.accumulated.map((trajectory, i) => ({
|
|
209
|
+
trajectory,
|
|
210
|
+
analysis: this.accumulatedAnalyses[i],
|
|
211
|
+
}));
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Clear accumulated trajectories
|
|
215
|
+
*/
|
|
216
|
+
clearAccumulated() {
|
|
217
|
+
this.accumulated = [];
|
|
218
|
+
this.accumulatedAnalyses = [];
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Update configuration
|
|
222
|
+
*/
|
|
223
|
+
updateConfig(config) {
|
|
224
|
+
this.config = { ...this.config, ...config };
|
|
225
|
+
if (config.creditStrategy) {
|
|
226
|
+
this.analyzer.setStrategy(config.creditStrategy);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Create a learning pipeline
|
|
232
|
+
*/
|
|
233
|
+
export function createLearningPipeline(memory, config) {
|
|
234
|
+
return new LearningPipeline(memory, config);
|
|
235
|
+
}
|
|
236
|
+
//# sourceMappingURL=pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/learning/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-publisher.d.ts","sourceRoot":"","sources":["../../src/surfacing/skill-publisher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"skill-publisher.d.ts","sourceRoot":"","sources":["../../src/surfacing/skill-publisher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AA2CrE;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,KAAK,CA6GhE;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,YAAY,CAA0B;gBAElC,OAAO,EAAE,cAAc;IAInC;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC;IAyBjE;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQvE;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAuB/E;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIxC;;OAEG;IACH,iBAAiB,IAAI,MAAM;CAG5B"}
|
|
@@ -6,6 +6,42 @@
|
|
|
6
6
|
* conversion at the publish boundary.
|
|
7
7
|
*/
|
|
8
8
|
import { getPlaybookSuccessRate } from '../types/playbook.js';
|
|
9
|
+
/**
|
|
10
|
+
* Maximum length for the generated `description` field.
|
|
11
|
+
* Claude Code's skill format caps description at 1024 chars, so we truncate
|
|
12
|
+
* to stay safely within that boundary.
|
|
13
|
+
*/
|
|
14
|
+
const MAX_DESCRIPTION_LENGTH = 1024;
|
|
15
|
+
/**
|
|
16
|
+
* Build the `description` field for a published Skill.
|
|
17
|
+
*
|
|
18
|
+
* The description is what lightweight trigger matchers — notably Claude Code's
|
|
19
|
+
* skill loader — key off to decide whether to load a skill. It needs two things:
|
|
20
|
+
*
|
|
21
|
+
* 1. A short "what it does" lead (pulled from the first situation, or the
|
|
22
|
+
* strategy if no situation is set).
|
|
23
|
+
* 2. The concrete trigger phrases, surfaced inline so substring/keyword
|
|
24
|
+
* matchers catch them. These live in `applicability.triggers` on the
|
|
25
|
+
* playbook but are invisible to downstream consumers unless we lift them.
|
|
26
|
+
*
|
|
27
|
+
* Shape: `<lead>. Use when "<t1>", "<t2>", ..., "<tN>".`
|
|
28
|
+
*/
|
|
29
|
+
function buildDescription(playbook) {
|
|
30
|
+
let lead = playbook.applicability.situations[0]
|
|
31
|
+
?? `${playbook.name}: ${playbook.guidance.strategy.slice(0, 100)}`;
|
|
32
|
+
// Ensure a sentence terminator before appending the trigger clause.
|
|
33
|
+
if (lead.length > 0 && !/[.!?]$/.test(lead)) {
|
|
34
|
+
lead += '.';
|
|
35
|
+
}
|
|
36
|
+
const triggers = playbook.applicability.triggers;
|
|
37
|
+
const triggerClause = triggers.length > 0
|
|
38
|
+
? ` Use when ${triggers.map((t) => `"${t}"`).join(', ')}.`
|
|
39
|
+
: '';
|
|
40
|
+
const full = lead + triggerClause;
|
|
41
|
+
if (full.length <= MAX_DESCRIPTION_LENGTH)
|
|
42
|
+
return full;
|
|
43
|
+
return full.slice(0, MAX_DESCRIPTION_LENGTH - 3) + '...';
|
|
44
|
+
}
|
|
9
45
|
/**
|
|
10
46
|
* Convert a Playbook to a Skill
|
|
11
47
|
*/
|
|
@@ -20,37 +56,52 @@ export function convertPlaybookToSkill(playbook) {
|
|
|
20
56
|
if (playbook.guidance.steps?.length) {
|
|
21
57
|
solution += '\n\nSteps:\n' + playbook.guidance.steps.map((s, i) => `${i + 1}. ${s}`).join('\n');
|
|
22
58
|
}
|
|
23
|
-
// Build
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
//
|
|
28
|
-
|
|
59
|
+
// Build description for semantic matching and lightweight trigger routing
|
|
60
|
+
const description = buildDescription(playbook);
|
|
61
|
+
// Build structured instructions body
|
|
62
|
+
const instructionParts = [];
|
|
63
|
+
// --- When to use / When not to use (Change A) ---
|
|
64
|
+
if (playbook.applicability.situations.length > 0) {
|
|
65
|
+
instructionParts.push('## When to use\n\n'
|
|
66
|
+
+ playbook.applicability.situations.map((s) => `- ${s}`).join('\n'));
|
|
67
|
+
}
|
|
29
68
|
if (playbook.applicability.antiPatterns.length > 0) {
|
|
30
|
-
|
|
69
|
+
instructionParts.push('## When not to use\n\n'
|
|
70
|
+
+ playbook.applicability.antiPatterns.map((a) => `- ${a}`).join('\n'));
|
|
31
71
|
}
|
|
32
|
-
|
|
33
|
-
|
|
72
|
+
// --- Solution ---
|
|
73
|
+
instructionParts.push(`## Solution\n\n${solution}`);
|
|
74
|
+
// --- Verification with bulleted indicators (Change B) ---
|
|
75
|
+
const verificationParts = [];
|
|
76
|
+
if (playbook.verification.successIndicators.length > 0) {
|
|
77
|
+
verificationParts.push('Success:\n'
|
|
78
|
+
+ playbook.verification.successIndicators.map((s) => `- ${s}`).join('\n'));
|
|
34
79
|
}
|
|
35
|
-
if (playbook.
|
|
36
|
-
|
|
80
|
+
if (playbook.verification.failureIndicators.length > 0) {
|
|
81
|
+
verificationParts.push('Failure:\n'
|
|
82
|
+
+ playbook.verification.failureIndicators.map((f) => `- ${f}`).join('\n'));
|
|
37
83
|
}
|
|
38
84
|
if (playbook.verification.rollbackStrategy) {
|
|
39
|
-
|
|
85
|
+
verificationParts.push(`Rollback: ${playbook.verification.rollbackStrategy}`);
|
|
86
|
+
}
|
|
87
|
+
if (verificationParts.length > 0) {
|
|
88
|
+
instructionParts.push(`## Verification\n\n${verificationParts.join('\n\n')}`);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
instructionParts.push('## Verification\n\nVerify the approach worked as expected.');
|
|
92
|
+
}
|
|
93
|
+
// --- Notes (refinements only — anti-patterns now in their own section) ---
|
|
94
|
+
const notesParts = [];
|
|
95
|
+
if (playbook.evolution.refinements.length > 0) {
|
|
96
|
+
notesParts.push('Refinements:\n'
|
|
97
|
+
+ playbook.evolution.refinements.map((r) => `- In ${r.context}: ${r.addition}`).join('\n'));
|
|
40
98
|
}
|
|
41
|
-
// Build description for semantic matching
|
|
42
|
-
const description = playbook.applicability.situations[0]
|
|
43
|
-
?? `${playbook.name}: ${playbook.guidance.strategy.slice(0, 100)}`;
|
|
44
|
-
// Build instructions as structured markdown combining all content
|
|
45
|
-
const instructionParts = [];
|
|
46
|
-
instructionParts.push(`## Problem\n${playbook.applicability.situations.join('. ')}`);
|
|
47
|
-
instructionParts.push(`## Solution\n${solution}`);
|
|
48
|
-
instructionParts.push(`## Verification\n${verification}`);
|
|
49
99
|
if (notesParts.length > 0) {
|
|
50
|
-
instructionParts.push(`## Notes\n${notesParts.join('\n\n')}`);
|
|
100
|
+
instructionParts.push(`## Notes\n\n${notesParts.join('\n\n')}`);
|
|
51
101
|
}
|
|
102
|
+
// --- Example ---
|
|
52
103
|
if (playbook.guidance.codeExample) {
|
|
53
|
-
instructionParts.push(`## Example\n\`\`\`\n${playbook.guidance.codeExample}\n\`\`\``);
|
|
104
|
+
instructionParts.push(`## Example\n\n\`\`\`\n${playbook.guidance.codeExample}\n\`\`\``);
|
|
54
105
|
}
|
|
55
106
|
const instructions = instructionParts.join('\n\n');
|
|
56
107
|
// Estimate tokens (rough: 4 chars per token)
|
|
@@ -61,7 +112,7 @@ export function convertPlaybookToSkill(playbook) {
|
|
|
61
112
|
version: playbook.evolution.version,
|
|
62
113
|
description,
|
|
63
114
|
instructions,
|
|
64
|
-
author: 'cognitive-core',
|
|
115
|
+
author: playbook.provenance?.curatedBy ?? 'cognitive-core',
|
|
65
116
|
tags: playbook.applicability.domains,
|
|
66
117
|
status: 'active',
|
|
67
118
|
metrics: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-publisher.js","sourceRoot":"","sources":["../../src/surfacing/skill-publisher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAkB;IACvD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC;IACpF,MAAM,WAAW,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAErD,oCAAoC;IACpC,IAAI,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC1C,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,QAAQ,IAAI,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACpC,QAAQ,IAAI,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClG,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"skill-publisher.js","sourceRoot":"","sources":["../../src/surfacing/skill-publisher.ts"],"names":[],"mappings":"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"}
|
package/dist/types/playbook.d.ts
CHANGED
|
@@ -22,6 +22,17 @@ export interface Playbook {
|
|
|
22
22
|
embedding?: number[];
|
|
23
23
|
createdAt: Date;
|
|
24
24
|
updatedAt: Date;
|
|
25
|
+
/**
|
|
26
|
+
* Whether end-users can invoke this skill directly (e.g. via /slash-command).
|
|
27
|
+
* Propagated into the published SKILL.md frontmatter as `user-invocable`.
|
|
28
|
+
*/
|
|
29
|
+
userInvocable?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Arbitrary key-value metadata propagated verbatim into the published
|
|
32
|
+
* SKILL.md frontmatter `metadata:` block. Use for ecosystem-specific
|
|
33
|
+
* fields (audience, component, ecosystem) without changing the core schema.
|
|
34
|
+
*/
|
|
35
|
+
publishMetadata?: Record<string, unknown>;
|
|
25
36
|
}
|
|
26
37
|
/**
|
|
27
38
|
* When to apply this playbook
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playbook.d.ts","sourceRoot":"","sources":["../../src/types/playbook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IAGb,aAAa,EAAE,qBAAqB,CAAC;IAGrC,QAAQ,EAAE,gBAAgB,CAAC;IAG3B,YAAY,EAAE,oBAAoB,CAAC;IAGnC,SAAS,EAAE,iBAAiB,CAAC;IAG7B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAGhC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"playbook.d.ts","sourceRoot":"","sources":["../../src/types/playbook.ts"],"names":[],"mappings":"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"}
|
package/dist/types/playbook.js
CHANGED
|
@@ -34,6 +34,8 @@ export function createPlaybook(input) {
|
|
|
34
34
|
complexity: input.complexity ?? 'moderate',
|
|
35
35
|
estimatedEffort: input.estimatedEffort ?? 3,
|
|
36
36
|
embedding: input.embedding,
|
|
37
|
+
userInvocable: input.userInvocable,
|
|
38
|
+
publishMetadata: input.publishMetadata,
|
|
37
39
|
createdAt: input.createdAt ?? now,
|
|
38
40
|
updatedAt: input.updatedAt ?? now,
|
|
39
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"playbook.js","sourceRoot":"","sources":["../../src/types/playbook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"playbook.js","sourceRoot":"","sources":["../../src/types/playbook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqIH;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,KAIC;IAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,YAAY,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAClF,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI;YAClC,iBAAiB,EAAE,EAAE;YACrB,iBAAiB,EAAE,EAAE;SACtB;QACD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI;YAC5B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;SAChB;QACD,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI;YAC9B,MAAM,EAAE,WAAW;YACnB,UAAU,EAAE,GAAG;SAChB;QACD,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,4BAA4B;QACjE,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,UAAU;QAC1C,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,CAAC;QAC3C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,GAAG;QACjC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,GAAG;KAClC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAkB,EAClB,OAAoC,OAAO;IAE3C,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChF,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC;QAC5B,KAAK,OAAO;YACV,OAAO,GAAG,KAAK,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC;QACnC,KAAK,OAAO,CAAC;QACb;YACE,OAAO,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;IAC5C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAkB;IACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC;IAChF,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1B,OAAO,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAkB,EAAE,UAAkB,CAAC;IACtE,OAAO,QAAQ,CAAC,SAAS,CAAC,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC;AACtF,CAAC"}
|
|
@@ -11,4 +11,5 @@ export { teamPlaybookExtractionTemplate, type TeamPlaybookExtractionInput, type
|
|
|
11
11
|
export { playbookEfficacyAuditTemplate, type PlaybookEfficacyAuditInput, type PlaybookEfficacyAuditOutput, type PlaybookRecommendation, } from './playbook-efficacy-audit.js';
|
|
12
12
|
export { playbookDecayDetectionTemplate, type PlaybookDecayDetectionInput, type PlaybookDecayDetectionOutput, type DecaySignal, } from './playbook-decay-detection.js';
|
|
13
13
|
export { playbookLifecycleReviewTemplate, type PlaybookLifecycleReviewInput, type PlaybookLifecycleReviewOutput, type LifecycleRecommendation, } from './playbook-lifecycle-review.js';
|
|
14
|
+
export { skillEnrichmentTemplate, type SkillEnrichmentInput, type SkillEnrichmentOutput, } from './skill-enrichment.js';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/templates/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,2BAA2B,EAC3B,KAAK,wBAAwB,GAC9B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,uBAAuB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,6BAA6B,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,GAC5B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,WAAW,GACjB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,+BAA+B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,GAC7B,MAAM,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/templates/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,2BAA2B,EAC3B,KAAK,wBAAwB,GAC9B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,uBAAuB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,6BAA6B,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,GAC5B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,WAAW,GACjB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACL,+BAA+B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,GAC7B,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EACL,uBAAuB,EACvB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,uBAAuB,CAAC"}
|
|
@@ -24,4 +24,6 @@ export { playbookEfficacyAuditTemplate, } from './playbook-efficacy-audit.js';
|
|
|
24
24
|
export { playbookDecayDetectionTemplate, } from './playbook-decay-detection.js';
|
|
25
25
|
// Playbook Lifecycle Review (meta-learning — portfolio health)
|
|
26
26
|
export { playbookLifecycleReviewTemplate, } from './playbook-lifecycle-review.js';
|
|
27
|
+
// Skill Enrichment (publish pipeline — agent-enriched SKILL.md generation)
|
|
28
|
+
export { skillEnrichmentTemplate, } from './skill-enrichment.js';
|
|
27
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workspace/templates/index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,sFAAsF;AACtF,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,6DAA6D;AAC7D,OAAO,EACL,sBAAsB,GAEvB,MAAM,sBAAsB,CAAC;AAE9B,qEAAqE;AACrE,OAAO,EACL,sBAAsB,GAGvB,MAAM,sBAAsB,CAAC;AAE9B,4DAA4D;AAC5D,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,0DAA0D;AAC1D,OAAO,EACL,0BAA0B,GAG3B,MAAM,0BAA0B,CAAC;AAElC,mDAAmD;AACnD,OAAO,EACL,2BAA2B,GAE5B,MAAM,2BAA2B,CAAC;AAEnC,wDAAwD;AACxD,OAAO,EACL,uBAAuB,GAExB,MAAM,uBAAuB,CAAC;AAE/B,2DAA2D;AAC3D,OAAO,EACL,8BAA8B,GAE/B,MAAM,+BAA+B,CAAC;AAEvC,2DAA2D;AAC3D,OAAO,EACL,8BAA8B,GAK/B,MAAM,+BAA+B,CAAC;AAEvC,6DAA6D;AAC7D,OAAO,EACL,6BAA6B,GAI9B,MAAM,8BAA8B,CAAC;AAEtC,qEAAqE;AACrE,OAAO,EACL,8BAA8B,GAI/B,MAAM,+BAA+B,CAAC;AAEvC,+DAA+D;AAC/D,OAAO,EACL,+BAA+B,GAIhC,MAAM,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workspace/templates/index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,sFAAsF;AACtF,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,6DAA6D;AAC7D,OAAO,EACL,sBAAsB,GAEvB,MAAM,sBAAsB,CAAC;AAE9B,qEAAqE;AACrE,OAAO,EACL,sBAAsB,GAGvB,MAAM,sBAAsB,CAAC;AAE9B,4DAA4D;AAC5D,OAAO,EACL,0BAA0B,GAE3B,MAAM,0BAA0B,CAAC;AAElC,0DAA0D;AAC1D,OAAO,EACL,0BAA0B,GAG3B,MAAM,0BAA0B,CAAC;AAElC,mDAAmD;AACnD,OAAO,EACL,2BAA2B,GAE5B,MAAM,2BAA2B,CAAC;AAEnC,wDAAwD;AACxD,OAAO,EACL,uBAAuB,GAExB,MAAM,uBAAuB,CAAC;AAE/B,2DAA2D;AAC3D,OAAO,EACL,8BAA8B,GAE/B,MAAM,+BAA+B,CAAC;AAEvC,2DAA2D;AAC3D,OAAO,EACL,8BAA8B,GAK/B,MAAM,+BAA+B,CAAC;AAEvC,6DAA6D;AAC7D,OAAO,EACL,6BAA6B,GAI9B,MAAM,8BAA8B,CAAC;AAEtC,qEAAqE;AACrE,OAAO,EACL,8BAA8B,GAI/B,MAAM,+BAA+B,CAAC;AAEvC,+DAA+D;AAC/D,OAAO,EACL,+BAA+B,GAIhC,MAAM,gCAAgC,CAAC;AAExC,2EAA2E;AAC3E,OAAO,EACL,uBAAuB,GAGxB,MAAM,uBAAuB,CAAC"}
|