pi-continuous-learning 0.5.1 → 0.7.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 +78 -0
- package/dist/agents-md.d.ts +23 -2
- package/dist/agents-md.d.ts.map +1 -1
- package/dist/agents-md.js +58 -3
- package/dist/agents-md.js.map +1 -1
- package/dist/cli/analyze-single-shot.d.ts +62 -0
- package/dist/cli/analyze-single-shot.d.ts.map +1 -0
- package/dist/cli/analyze-single-shot.js +105 -0
- package/dist/cli/analyze-single-shot.js.map +1 -0
- package/dist/cli/analyze.js +82 -81
- package/dist/cli/analyze.js.map +1 -1
- package/dist/command-scaffold.d.ts +25 -0
- package/dist/command-scaffold.d.ts.map +1 -0
- package/dist/command-scaffold.js +77 -0
- package/dist/command-scaffold.js.map +1 -0
- package/dist/confidence.d.ts.map +1 -1
- package/dist/confidence.js +2 -1
- package/dist/confidence.js.map +1 -1
- package/dist/config.d.ts +16 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +31 -0
- package/dist/config.js.map +1 -1
- package/dist/graduation.d.ts +63 -0
- package/dist/graduation.d.ts.map +1 -0
- package/dist/graduation.js +155 -0
- package/dist/graduation.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/instinct-cleanup.d.ts +57 -0
- package/dist/instinct-cleanup.d.ts.map +1 -0
- package/dist/instinct-cleanup.js +150 -0
- package/dist/instinct-cleanup.js.map +1 -0
- package/dist/instinct-graduate.d.ts +43 -0
- package/dist/instinct-graduate.d.ts.map +1 -0
- package/dist/instinct-graduate.js +253 -0
- package/dist/instinct-graduate.js.map +1 -0
- package/dist/instinct-parser.d.ts.map +1 -1
- package/dist/instinct-parser.js +12 -0
- package/dist/instinct-parser.js.map +1 -1
- package/dist/instinct-tools.d.ts.map +1 -1
- package/dist/instinct-tools.js +19 -0
- package/dist/instinct-tools.js.map +1 -1
- package/dist/instinct-validator.d.ts +61 -0
- package/dist/instinct-validator.d.ts.map +1 -0
- package/dist/instinct-validator.js +235 -0
- package/dist/instinct-validator.js.map +1 -0
- package/dist/observation-preprocessor.d.ts +26 -0
- package/dist/observation-preprocessor.d.ts.map +1 -0
- package/dist/observation-preprocessor.js +31 -0
- package/dist/observation-preprocessor.js.map +1 -0
- package/dist/prompts/analyzer-system-single-shot.d.ts +6 -0
- package/dist/prompts/analyzer-system-single-shot.d.ts.map +1 -0
- package/dist/prompts/analyzer-system-single-shot.js +164 -0
- package/dist/prompts/analyzer-system-single-shot.js.map +1 -0
- package/dist/prompts/analyzer-user-single-shot.d.ts +22 -0
- package/dist/prompts/analyzer-user-single-shot.d.ts.map +1 -0
- package/dist/prompts/analyzer-user-single-shot.js +53 -0
- package/dist/prompts/analyzer-user-single-shot.js.map +1 -0
- package/dist/prompts/analyzer-user.d.ts +3 -1
- package/dist/prompts/analyzer-user.d.ts.map +1 -1
- package/dist/prompts/analyzer-user.js +20 -7
- package/dist/prompts/analyzer-user.js.map +1 -1
- package/dist/skill-scaffold.d.ts +23 -0
- package/dist/skill-scaffold.d.ts.map +1 -0
- package/dist/skill-scaffold.js +62 -0
- package/dist/skill-scaffold.js.map +1 -0
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/agents-md.ts +73 -3
- package/src/cli/analyze-single-shot.ts +175 -0
- package/src/cli/analyze.ts +93 -124
- package/src/command-scaffold.ts +105 -0
- package/src/confidence.ts +2 -1
- package/src/config.ts +40 -0
- package/src/graduation.ts +243 -0
- package/src/index.ts +14 -0
- package/src/instinct-cleanup.ts +204 -0
- package/src/instinct-graduate.ts +377 -0
- package/src/instinct-parser.ts +12 -0
- package/src/instinct-tools.ts +26 -0
- package/src/instinct-validator.ts +287 -0
- package/src/observation-preprocessor.ts +48 -0
- package/src/prompts/analyzer-system-single-shot.ts +163 -0
- package/src/prompts/analyzer-user-single-shot.ts +94 -0
- package/src/prompts/analyzer-user.ts +26 -8
- package/src/skill-scaffold.ts +90 -0
- package/src/types.ts +10 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instinct-tools.js","sourceRoot":"","sources":["../src/instinct-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instinct-tools.js","sourceRoot":"","sources":["../src/instinct-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instinct validation and semantic deduplication.
|
|
3
|
+
* Rejects instincts with empty, undefined, nonsense, or low-quality fields,
|
|
4
|
+
* and detects near-duplicate instincts via Jaccard similarity.
|
|
5
|
+
*/
|
|
6
|
+
import type { Instinct } from "./types.js";
|
|
7
|
+
export declare const KNOWN_DOMAINS: Set<string>;
|
|
8
|
+
/** Common imperative verbs expected at the start of an instinct action. */
|
|
9
|
+
export declare const KNOWN_VERBS: Set<string>;
|
|
10
|
+
export interface ValidationResult {
|
|
11
|
+
valid: boolean;
|
|
12
|
+
reason?: string;
|
|
13
|
+
/** Non-fatal warnings that indicate lower-quality instincts. */
|
|
14
|
+
warnings?: string[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Validates that an instinct's fields meet quality requirements.
|
|
18
|
+
*
|
|
19
|
+
* Rules:
|
|
20
|
+
* - action and trigger must be non-empty, non-null, non-"undefined", and >= 10 chars
|
|
21
|
+
* - action first word should be a known imperative verb (warning if not)
|
|
22
|
+
* - domain, if provided, must be in KNOWN_DOMAINS (with "other" as escape hatch)
|
|
23
|
+
*
|
|
24
|
+
* Returns { valid: true } or { valid: false, reason: "..." }.
|
|
25
|
+
* Non-fatal issues are reported in the optional `warnings` array.
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateInstinct(fields: {
|
|
28
|
+
action: unknown;
|
|
29
|
+
trigger: unknown;
|
|
30
|
+
domain?: unknown;
|
|
31
|
+
}): ValidationResult;
|
|
32
|
+
/**
|
|
33
|
+
* Tokenizes text into a set of meaningful lowercase words.
|
|
34
|
+
* Splits on non-alphanumeric characters and filters stop words and short tokens.
|
|
35
|
+
*/
|
|
36
|
+
export declare function tokenize(text: string): Set<string>;
|
|
37
|
+
/**
|
|
38
|
+
* Computes Jaccard similarity between two token sets.
|
|
39
|
+
* Returns 1.0 for two empty sets, 0.0 if one is empty.
|
|
40
|
+
*/
|
|
41
|
+
export declare function jaccardSimilarity(a: Set<string>, b: Set<string>): number;
|
|
42
|
+
export interface SimilarityMatch {
|
|
43
|
+
instinct: Instinct;
|
|
44
|
+
similarity: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Checks whether a candidate instinct is semantically similar to any existing instinct.
|
|
48
|
+
*
|
|
49
|
+
* Tokenizes trigger+action for both candidate and each existing instinct,
|
|
50
|
+
* computes Jaccard similarity, and returns the closest match above the threshold.
|
|
51
|
+
*
|
|
52
|
+
* @param candidate - The new instinct being considered (trigger + action)
|
|
53
|
+
* @param existing - All current instincts to check against
|
|
54
|
+
* @param skipId - ID to skip (the candidate's own ID on updates)
|
|
55
|
+
* @param threshold - Similarity threshold; default 0.6
|
|
56
|
+
*/
|
|
57
|
+
export declare function findSimilarInstinct(candidate: {
|
|
58
|
+
trigger: string;
|
|
59
|
+
action: string;
|
|
60
|
+
}, existing: Instinct[], skipId?: string, threshold?: number): SimilarityMatch | null;
|
|
61
|
+
//# sourceMappingURL=instinct-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instinct-validator.d.ts","sourceRoot":"","sources":["../src/instinct-validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAS3C,eAAO,MAAM,aAAa,aAqBxB,CAAC;AAMH,2EAA2E;AAC3E,eAAO,MAAM,WAAW,aAwEtB,CAAC;AAMH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AA2BD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,gBAAgB,CAiCnB;AAeD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAOlD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,CAWxE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC9C,QAAQ,EAAE,QAAQ,EAAE,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,SAAM,GACd,eAAe,GAAG,IAAI,CAmBxB"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instinct validation and semantic deduplication.
|
|
3
|
+
* Rejects instincts with empty, undefined, nonsense, or low-quality fields,
|
|
4
|
+
* and detects near-duplicate instincts via Jaccard similarity.
|
|
5
|
+
*/
|
|
6
|
+
const MIN_FIELD_LENGTH = 10;
|
|
7
|
+
const INVALID_LITERALS = new Set(["undefined", "null", "none", ""]);
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
// Known domains (with "other" as escape hatch)
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
export const KNOWN_DOMAINS = new Set([
|
|
12
|
+
"git",
|
|
13
|
+
"testing",
|
|
14
|
+
"debugging",
|
|
15
|
+
"workflow",
|
|
16
|
+
"typescript",
|
|
17
|
+
"javascript",
|
|
18
|
+
"python",
|
|
19
|
+
"go",
|
|
20
|
+
"css",
|
|
21
|
+
"design",
|
|
22
|
+
"security",
|
|
23
|
+
"performance",
|
|
24
|
+
"documentation",
|
|
25
|
+
"react",
|
|
26
|
+
"node",
|
|
27
|
+
"database",
|
|
28
|
+
"api",
|
|
29
|
+
"devops",
|
|
30
|
+
"architecture",
|
|
31
|
+
"other",
|
|
32
|
+
]);
|
|
33
|
+
// ---------------------------------------------------------------------------
|
|
34
|
+
// Verb heuristic for action field
|
|
35
|
+
// ---------------------------------------------------------------------------
|
|
36
|
+
/** Common imperative verbs expected at the start of an instinct action. */
|
|
37
|
+
export const KNOWN_VERBS = new Set([
|
|
38
|
+
"add",
|
|
39
|
+
"always",
|
|
40
|
+
"analyze",
|
|
41
|
+
"apply",
|
|
42
|
+
"ask",
|
|
43
|
+
"avoid",
|
|
44
|
+
"build",
|
|
45
|
+
"call",
|
|
46
|
+
"catch",
|
|
47
|
+
"check",
|
|
48
|
+
"clean",
|
|
49
|
+
"confirm",
|
|
50
|
+
"consider",
|
|
51
|
+
"create",
|
|
52
|
+
"define",
|
|
53
|
+
"delete",
|
|
54
|
+
"document",
|
|
55
|
+
"emit",
|
|
56
|
+
"ensure",
|
|
57
|
+
"exclude",
|
|
58
|
+
"export",
|
|
59
|
+
"extract",
|
|
60
|
+
"fetch",
|
|
61
|
+
"find",
|
|
62
|
+
"fix",
|
|
63
|
+
"follow",
|
|
64
|
+
"format",
|
|
65
|
+
"generate",
|
|
66
|
+
"get",
|
|
67
|
+
"handle",
|
|
68
|
+
"import",
|
|
69
|
+
"include",
|
|
70
|
+
"inspect",
|
|
71
|
+
"load",
|
|
72
|
+
"log",
|
|
73
|
+
"look",
|
|
74
|
+
"merge",
|
|
75
|
+
"monitor",
|
|
76
|
+
"move",
|
|
77
|
+
"never",
|
|
78
|
+
"parse",
|
|
79
|
+
"pass",
|
|
80
|
+
"prefer",
|
|
81
|
+
"print",
|
|
82
|
+
"read",
|
|
83
|
+
"record",
|
|
84
|
+
"refactor",
|
|
85
|
+
"reject",
|
|
86
|
+
"rename",
|
|
87
|
+
"require",
|
|
88
|
+
"resolve",
|
|
89
|
+
"return",
|
|
90
|
+
"run",
|
|
91
|
+
"save",
|
|
92
|
+
"scan",
|
|
93
|
+
"search",
|
|
94
|
+
"send",
|
|
95
|
+
"set",
|
|
96
|
+
"show",
|
|
97
|
+
"skip",
|
|
98
|
+
"start",
|
|
99
|
+
"stop",
|
|
100
|
+
"test",
|
|
101
|
+
"track",
|
|
102
|
+
"update",
|
|
103
|
+
"use",
|
|
104
|
+
"validate",
|
|
105
|
+
"verify",
|
|
106
|
+
"watch",
|
|
107
|
+
"wrap",
|
|
108
|
+
"write",
|
|
109
|
+
]);
|
|
110
|
+
// ---------------------------------------------------------------------------
|
|
111
|
+
// Internal helpers
|
|
112
|
+
// ---------------------------------------------------------------------------
|
|
113
|
+
function isInvalidField(value, fieldName) {
|
|
114
|
+
if (value === undefined || value === null) {
|
|
115
|
+
return `${fieldName} is ${String(value)}`;
|
|
116
|
+
}
|
|
117
|
+
if (typeof value !== "string") {
|
|
118
|
+
return `${fieldName} is not a string (got ${typeof value})`;
|
|
119
|
+
}
|
|
120
|
+
const trimmed = value.trim();
|
|
121
|
+
if (INVALID_LITERALS.has(trimmed.toLowerCase())) {
|
|
122
|
+
return `${fieldName} is the literal string "${trimmed}"`;
|
|
123
|
+
}
|
|
124
|
+
if (trimmed.length < MIN_FIELD_LENGTH) {
|
|
125
|
+
return `${fieldName} is too short (${trimmed.length} chars, minimum ${MIN_FIELD_LENGTH})`;
|
|
126
|
+
}
|
|
127
|
+
return null;
|
|
128
|
+
}
|
|
129
|
+
// ---------------------------------------------------------------------------
|
|
130
|
+
// validateInstinct
|
|
131
|
+
// ---------------------------------------------------------------------------
|
|
132
|
+
/**
|
|
133
|
+
* Validates that an instinct's fields meet quality requirements.
|
|
134
|
+
*
|
|
135
|
+
* Rules:
|
|
136
|
+
* - action and trigger must be non-empty, non-null, non-"undefined", and >= 10 chars
|
|
137
|
+
* - action first word should be a known imperative verb (warning if not)
|
|
138
|
+
* - domain, if provided, must be in KNOWN_DOMAINS (with "other" as escape hatch)
|
|
139
|
+
*
|
|
140
|
+
* Returns { valid: true } or { valid: false, reason: "..." }.
|
|
141
|
+
* Non-fatal issues are reported in the optional `warnings` array.
|
|
142
|
+
*/
|
|
143
|
+
export function validateInstinct(fields) {
|
|
144
|
+
const actionError = isInvalidField(fields.action, "action");
|
|
145
|
+
if (actionError) {
|
|
146
|
+
return { valid: false, reason: actionError };
|
|
147
|
+
}
|
|
148
|
+
const triggerError = isInvalidField(fields.trigger, "trigger");
|
|
149
|
+
if (triggerError) {
|
|
150
|
+
return { valid: false, reason: triggerError };
|
|
151
|
+
}
|
|
152
|
+
const warnings = [];
|
|
153
|
+
// Domain validation
|
|
154
|
+
if (fields.domain !== undefined) {
|
|
155
|
+
if (typeof fields.domain !== "string" || !KNOWN_DOMAINS.has(fields.domain.toLowerCase().trim())) {
|
|
156
|
+
return {
|
|
157
|
+
valid: false,
|
|
158
|
+
reason: `domain "${String(fields.domain)}" is not in the known set. Use one of: ${[...KNOWN_DOMAINS].join(", ")}`,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// Verb heuristic (warning only - does not reject)
|
|
163
|
+
const action = fields.action.trim();
|
|
164
|
+
const firstWord = action.split(/\s+/)[0]?.toLowerCase() ?? "";
|
|
165
|
+
if (firstWord && !KNOWN_VERBS.has(firstWord)) {
|
|
166
|
+
warnings.push(`action should start with an imperative verb (got "${firstWord}"). Consider rewriting as a clear instruction.`);
|
|
167
|
+
}
|
|
168
|
+
return warnings.length > 0 ? { valid: true, warnings } : { valid: true };
|
|
169
|
+
}
|
|
170
|
+
// ---------------------------------------------------------------------------
|
|
171
|
+
// Jaccard similarity deduplication
|
|
172
|
+
// ---------------------------------------------------------------------------
|
|
173
|
+
const STOP_WORDS = new Set([
|
|
174
|
+
"a", "an", "the", "is", "are", "was", "were", "be", "been", "being",
|
|
175
|
+
"have", "has", "had", "do", "does", "did", "will", "would", "should",
|
|
176
|
+
"could", "may", "might", "shall", "can", "of", "in", "on", "at", "to",
|
|
177
|
+
"for", "with", "by", "from", "up", "about", "into", "it", "its", "this",
|
|
178
|
+
"that", "these", "those", "and", "or", "but", "if", "as", "when", "where",
|
|
179
|
+
"how", "what", "which", "who", "not", "no", "so",
|
|
180
|
+
]);
|
|
181
|
+
/**
|
|
182
|
+
* Tokenizes text into a set of meaningful lowercase words.
|
|
183
|
+
* Splits on non-alphanumeric characters and filters stop words and short tokens.
|
|
184
|
+
*/
|
|
185
|
+
export function tokenize(text) {
|
|
186
|
+
return new Set(text
|
|
187
|
+
.toLowerCase()
|
|
188
|
+
.split(/[^a-z0-9]+/)
|
|
189
|
+
.filter((t) => t.length > 2 && !STOP_WORDS.has(t)));
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Computes Jaccard similarity between two token sets.
|
|
193
|
+
* Returns 1.0 for two empty sets, 0.0 if one is empty.
|
|
194
|
+
*/
|
|
195
|
+
export function jaccardSimilarity(a, b) {
|
|
196
|
+
if (a.size === 0 && b.size === 0)
|
|
197
|
+
return 1.0;
|
|
198
|
+
if (a.size === 0 || b.size === 0)
|
|
199
|
+
return 0.0;
|
|
200
|
+
let intersection = 0;
|
|
201
|
+
for (const token of a) {
|
|
202
|
+
if (b.has(token))
|
|
203
|
+
intersection++;
|
|
204
|
+
}
|
|
205
|
+
const union = a.size + b.size - intersection;
|
|
206
|
+
return intersection / union;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Checks whether a candidate instinct is semantically similar to any existing instinct.
|
|
210
|
+
*
|
|
211
|
+
* Tokenizes trigger+action for both candidate and each existing instinct,
|
|
212
|
+
* computes Jaccard similarity, and returns the closest match above the threshold.
|
|
213
|
+
*
|
|
214
|
+
* @param candidate - The new instinct being considered (trigger + action)
|
|
215
|
+
* @param existing - All current instincts to check against
|
|
216
|
+
* @param skipId - ID to skip (the candidate's own ID on updates)
|
|
217
|
+
* @param threshold - Similarity threshold; default 0.6
|
|
218
|
+
*/
|
|
219
|
+
export function findSimilarInstinct(candidate, existing, skipId, threshold = 0.6) {
|
|
220
|
+
const candidateTokens = tokenize(`${candidate.trigger} ${candidate.action}`);
|
|
221
|
+
let bestMatch = null;
|
|
222
|
+
for (const instinct of existing) {
|
|
223
|
+
if (instinct.id === skipId)
|
|
224
|
+
continue;
|
|
225
|
+
const existingTokens = tokenize(`${instinct.trigger} ${instinct.action}`);
|
|
226
|
+
const similarity = jaccardSimilarity(candidateTokens, existingTokens);
|
|
227
|
+
if (similarity >= threshold) {
|
|
228
|
+
if (bestMatch === null || similarity > bestMatch.similarity) {
|
|
229
|
+
bestMatch = { instinct, similarity };
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
return bestMatch;
|
|
234
|
+
}
|
|
235
|
+
//# sourceMappingURL=instinct-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instinct-validator.js","sourceRoot":"","sources":["../src/instinct-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Observation preprocessing for cost reduction.
|
|
3
|
+
*
|
|
4
|
+
* Strips high-volume, low-signal data from raw observation events before
|
|
5
|
+
* sending to the LLM analyzer. Reduces context size by ~80% on typical sessions.
|
|
6
|
+
*
|
|
7
|
+
* Rules:
|
|
8
|
+
* - turn_start → DROP (no information not already in turn_end)
|
|
9
|
+
* - tool_start → DROP (tool name + sequence captured by tool_complete)
|
|
10
|
+
* - tool_complete, is_error: false → KEEP, strip output field
|
|
11
|
+
* - tool_complete, is_error: true → KEEP as-is (error message needed)
|
|
12
|
+
* - all others → KEEP as-is
|
|
13
|
+
*/
|
|
14
|
+
import type { Observation } from "./types.js";
|
|
15
|
+
/**
|
|
16
|
+
* Preprocess a single observation.
|
|
17
|
+
* Returns null if the observation should be dropped entirely.
|
|
18
|
+
* Returns a new (immutable) observation with large fields stripped if applicable.
|
|
19
|
+
*/
|
|
20
|
+
export declare function preprocessObservation(obs: Observation): Observation | null;
|
|
21
|
+
/**
|
|
22
|
+
* Preprocess an array of raw observations.
|
|
23
|
+
* Drops nulls and returns only the meaningful events.
|
|
24
|
+
*/
|
|
25
|
+
export declare function preprocessObservations(observations: Observation[]): Observation[];
|
|
26
|
+
//# sourceMappingURL=observation-preprocessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-preprocessor.d.ts","sourceRoot":"","sources":["../src/observation-preprocessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI,CAY1E;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CASjF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preprocess a single observation.
|
|
3
|
+
* Returns null if the observation should be dropped entirely.
|
|
4
|
+
* Returns a new (immutable) observation with large fields stripped if applicable.
|
|
5
|
+
*/
|
|
6
|
+
export function preprocessObservation(obs) {
|
|
7
|
+
if (obs.event === "turn_start" || obs.event === "tool_start") {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
if (obs.event === "tool_complete" && !obs.is_error) {
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
12
|
+
const { output: _, ...stripped } = obs;
|
|
13
|
+
return stripped;
|
|
14
|
+
}
|
|
15
|
+
return obs;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Preprocess an array of raw observations.
|
|
19
|
+
* Drops nulls and returns only the meaningful events.
|
|
20
|
+
*/
|
|
21
|
+
export function preprocessObservations(observations) {
|
|
22
|
+
const result = [];
|
|
23
|
+
for (const obs of observations) {
|
|
24
|
+
const processed = preprocessObservation(obs);
|
|
25
|
+
if (processed !== null) {
|
|
26
|
+
result.push(processed);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=observation-preprocessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observation-preprocessor.js","sourceRoot":"","sources":["../src/observation-preprocessor.ts"],"names":[],"mappings":"AAeA;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAgB;IACpD,IAAI,GAAG,CAAC,KAAK,KAAK,YAAY,IAAI,GAAG,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACnD,6DAA6D;QAC7D,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,GAAG,CAAC;QACvC,OAAO,QAAuB,CAAC;IACjC,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,YAA2B;IAChE,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* System prompt for the single-shot (non-agentic) background analyzer.
|
|
3
|
+
* Instructs the model to return a JSON change-set instead of using tool calls.
|
|
4
|
+
*/
|
|
5
|
+
export declare function buildSingleShotSystemPrompt(): string;
|
|
6
|
+
//# sourceMappingURL=analyzer-system-single-shot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzer-system-single-shot.d.ts","sourceRoot":"","sources":["../../src/prompts/analyzer-system-single-shot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CA8JpD"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* System prompt for the single-shot (non-agentic) background analyzer.
|
|
3
|
+
* Instructs the model to return a JSON change-set instead of using tool calls.
|
|
4
|
+
*/
|
|
5
|
+
export function buildSingleShotSystemPrompt() {
|
|
6
|
+
return `You are a coding behavior analyst. Your job is to read session observations
|
|
7
|
+
and produce a JSON change-set to create or update instinct files that capture reusable coding patterns.
|
|
8
|
+
|
|
9
|
+
## Output Format
|
|
10
|
+
|
|
11
|
+
Return ONLY a valid JSON object (no prose, no markdown fences) with this structure:
|
|
12
|
+
|
|
13
|
+
{
|
|
14
|
+
"changes": [
|
|
15
|
+
{
|
|
16
|
+
"action": "create",
|
|
17
|
+
"instinct": {
|
|
18
|
+
"id": "kebab-case-id",
|
|
19
|
+
"title": "Short title",
|
|
20
|
+
"trigger": "When this should activate",
|
|
21
|
+
"action": "What the agent should do (verb phrase)",
|
|
22
|
+
"confidence": 0.5,
|
|
23
|
+
"domain": "typescript",
|
|
24
|
+
"scope": "project",
|
|
25
|
+
"observation_count": 3,
|
|
26
|
+
"confirmed_count": 0,
|
|
27
|
+
"contradicted_count": 0,
|
|
28
|
+
"inactive_count": 0,
|
|
29
|
+
"evidence": ["brief note 1", "brief note 2"]
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"action": "update",
|
|
34
|
+
"instinct": { "...same fields as create..." }
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"action": "delete",
|
|
38
|
+
"id": "instinct-id-to-delete",
|
|
39
|
+
"scope": "project"
|
|
40
|
+
}
|
|
41
|
+
]
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
Return { "changes": [] } if no changes are needed.
|
|
45
|
+
|
|
46
|
+
## Pattern Detection Heuristics
|
|
47
|
+
|
|
48
|
+
Analyze observations for these categories:
|
|
49
|
+
|
|
50
|
+
### User Corrections
|
|
51
|
+
- User rephrases a request after an agent response
|
|
52
|
+
- User explicitly rejects an approach
|
|
53
|
+
- Trigger: the corrected behavior; Action: the preferred approach
|
|
54
|
+
|
|
55
|
+
### Error Resolutions
|
|
56
|
+
- Tool call returns is_error: true followed by a successful retry
|
|
57
|
+
- Trigger: the error condition; Action: the proven resolution
|
|
58
|
+
|
|
59
|
+
### Repeated Workflows
|
|
60
|
+
- Same sequence of tool calls appears 3+ times
|
|
61
|
+
- Trigger: the workflow start condition; Action: the efficient path
|
|
62
|
+
|
|
63
|
+
### Tool Preferences
|
|
64
|
+
- Agent consistently uses one tool over alternatives
|
|
65
|
+
- Trigger: the task type; Action: the preferred tool and parameters
|
|
66
|
+
|
|
67
|
+
### Anti-Patterns
|
|
68
|
+
- Actions that consistently lead to errors or user corrections
|
|
69
|
+
- Trigger: the bad pattern situation; Action: what to do instead
|
|
70
|
+
|
|
71
|
+
### Turn Structure
|
|
72
|
+
- turn_end events summarize turns: tool_count and error_count
|
|
73
|
+
- High error_count turns suggest inefficient approaches
|
|
74
|
+
|
|
75
|
+
### Context Pressure
|
|
76
|
+
- session_compact events signal context window pressure
|
|
77
|
+
|
|
78
|
+
### User Shell Commands
|
|
79
|
+
- user_bash events capture manual shell commands the user runs
|
|
80
|
+
- Repeated commands after agent actions reveal verification patterns
|
|
81
|
+
|
|
82
|
+
### Model Preferences
|
|
83
|
+
- model_select events track when users switch models
|
|
84
|
+
|
|
85
|
+
## Feedback Analysis
|
|
86
|
+
|
|
87
|
+
Each observation may include an active_instincts field listing instinct IDs
|
|
88
|
+
that were injected into the agent's system prompt before that turn.
|
|
89
|
+
|
|
90
|
+
Use this to update existing instinct confidence scores:
|
|
91
|
+
- Confirmed (+0.05): instinct was active and agent followed guidance without correction
|
|
92
|
+
- Contradicted (-0.15): instinct was active but user corrected the agent
|
|
93
|
+
- Inactive (no change): instinct was injected but trigger never arose
|
|
94
|
+
|
|
95
|
+
When updating, increment the corresponding count field and recalculate confidence.
|
|
96
|
+
|
|
97
|
+
## Confidence Scoring Rules
|
|
98
|
+
|
|
99
|
+
### Initial Confidence (new instincts)
|
|
100
|
+
- 1-2 observations -> 0.3
|
|
101
|
+
- 3-5 observations -> 0.5
|
|
102
|
+
- 6-10 observations -> 0.7
|
|
103
|
+
- 11+ observations -> 0.85
|
|
104
|
+
|
|
105
|
+
### Clamping
|
|
106
|
+
- Always clamp to [0.1, 0.9]
|
|
107
|
+
|
|
108
|
+
## Scope Decision Guide
|
|
109
|
+
|
|
110
|
+
Use project scope when the pattern is specific to this project's tech stack or conventions.
|
|
111
|
+
Use global scope when the pattern applies universally to any coding session.
|
|
112
|
+
When in doubt, prefer project scope.
|
|
113
|
+
|
|
114
|
+
## Conservativeness Rules
|
|
115
|
+
|
|
116
|
+
1. Only create a new instinct with 3+ clear independent observations supporting the pattern.
|
|
117
|
+
2. No code snippets in the action field - plain language only.
|
|
118
|
+
3. Each instinct must have one well-defined trigger.
|
|
119
|
+
4. New instincts from observation data alone are capped at 0.85 confidence.
|
|
120
|
+
5. Check existing instincts (provided in the user message) for duplicates before creating. Update instead.
|
|
121
|
+
6. Write actions as clear instructions starting with a verb.
|
|
122
|
+
7. Be skeptical of outliers - patterns seen only in unusual circumstances should not become instincts.
|
|
123
|
+
|
|
124
|
+
## Quality Tiers
|
|
125
|
+
|
|
126
|
+
Not all patterns are worth recording as instincts. Use this classification before creating:
|
|
127
|
+
|
|
128
|
+
### Tier 1 - Project Conventions (RECORD as instinct)
|
|
129
|
+
Patterns specific to this project's tech stack, codebase conventions, or team practices.
|
|
130
|
+
Examples:
|
|
131
|
+
- "Use the Result<T, E> type for error handling in this project"
|
|
132
|
+
- "Place tests next to source files as *.test.ts"
|
|
133
|
+
- "Prefer functional style - avoid class-based patterns in this codebase"
|
|
134
|
+
|
|
135
|
+
### Tier 2 - Workflow Patterns (RECORD as global instinct)
|
|
136
|
+
Recurring multi-step workflows that apply across many projects.
|
|
137
|
+
Examples:
|
|
138
|
+
- "Run linter and type-checker after every code change"
|
|
139
|
+
- "Write tests before implementation in TDD projects"
|
|
140
|
+
|
|
141
|
+
### Tier 3 - Generic Agent Behavior (DO NOT RECORD - already known)
|
|
142
|
+
Fundamental behaviors all coding agents should follow. These are not project-specific patterns.
|
|
143
|
+
|
|
144
|
+
**DO NOT create instincts for:**
|
|
145
|
+
- Reading files before editing them ("read before edit")
|
|
146
|
+
- Grepping for context before modifying code
|
|
147
|
+
- Clarifying ambiguous requirements before starting
|
|
148
|
+
- Using conventional commit message formats
|
|
149
|
+
- Checking for errors after tool calls
|
|
150
|
+
- Any behavior that is basic good practice for any coding agent
|
|
151
|
+
|
|
152
|
+
These patterns belong in AGENTS.md from the start, not in learned instincts.
|
|
153
|
+
|
|
154
|
+
## AGENTS.md Deduplication
|
|
155
|
+
|
|
156
|
+
The user message includes the current AGENTS.md content for this project and globally.
|
|
157
|
+
Before creating any instinct, check: **is this pattern already covered by AGENTS.md?**
|
|
158
|
+
|
|
159
|
+
If yes: do NOT create an instinct. The pattern is already enforced.
|
|
160
|
+
If a pattern appears in AGENTS.md in the same form, skip it entirely.
|
|
161
|
+
|
|
162
|
+
Only create instincts for patterns that are genuinely absent from AGENTS.md.`;
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=analyzer-system-single-shot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzer-system-single-shot.js","sourceRoot":"","sources":["../../src/prompts/analyzer-system-single-shot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EA4JoE,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* User prompt builder for the single-shot background analyzer.
|
|
3
|
+
* Includes current instincts inline (no tool calls needed) and filtered observations.
|
|
4
|
+
*/
|
|
5
|
+
import type { InstalledSkill, Instinct, ProjectEntry } from "../types.js";
|
|
6
|
+
export interface SingleShotPromptOptions {
|
|
7
|
+
agentsMdProject?: string | null;
|
|
8
|
+
agentsMdGlobal?: string | null;
|
|
9
|
+
installedSkills?: InstalledSkill[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Builds the user prompt for the single-shot analyzer.
|
|
13
|
+
* Embeds all current instincts inline so the model has full context
|
|
14
|
+
* without making any tool calls.
|
|
15
|
+
*
|
|
16
|
+
* @param project - Project metadata
|
|
17
|
+
* @param existingInstincts - All current instincts (project + global)
|
|
18
|
+
* @param observationLines - Preprocessed observation lines (JSONL strings)
|
|
19
|
+
* @param options - Optional AGENTS.md content and installed skills
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildSingleShotUserPrompt(project: ProjectEntry, existingInstincts: Instinct[], observationLines: string[], options?: SingleShotPromptOptions): string;
|
|
22
|
+
//# sourceMappingURL=analyzer-user-single-shot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyzer-user-single-shot.d.ts","sourceRoot":"","sources":["../../src/prompts/analyzer-user-single-shot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG1E,MAAM,WAAW,uBAAuB;IACtC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;CACpC;AAED;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,YAAY,EACrB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,GAAE,uBAA4B,GACpC,MAAM,CAiER"}
|