aspectcode 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/aspectcode.js +3 -0
- package/dist/cli.d.ts +7 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/complaintProcessor.d.ts +16 -0
- package/dist/complaintProcessor.d.ts.map +1 -0
- package/dist/complaintProcessor.js +134 -0
- package/dist/complaintProcessor.js.map +1 -0
- package/dist/config.d.ts +7 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +19 -0
- package/dist/config.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +37 -2
- package/dist/main.js.map +1 -1
- package/dist/optimize.d.ts +7 -1
- package/dist/optimize.d.ts.map +1 -1
- package/dist/optimize.js +26 -5
- package/dist/optimize.js.map +1 -1
- package/dist/pipeline.d.ts +8 -0
- package/dist/pipeline.d.ts.map +1 -1
- package/dist/pipeline.js +89 -18
- package/dist/pipeline.js.map +1 -1
- package/dist/ui/Dashboard.d.ts +12 -0
- package/dist/ui/Dashboard.d.ts.map +1 -0
- package/dist/ui/Dashboard.js +162 -0
- package/dist/ui/Dashboard.js.map +1 -0
- package/dist/ui/inkLogger.d.ts +20 -0
- package/dist/ui/inkLogger.d.ts.map +1 -0
- package/dist/ui/inkLogger.js +42 -0
- package/dist/ui/inkLogger.js.map +1 -0
- package/dist/ui/prompts.d.ts +19 -0
- package/dist/ui/prompts.d.ts.map +1 -0
- package/dist/ui/prompts.js +125 -0
- package/dist/ui/prompts.js.map +1 -0
- package/dist/ui/store.d.ts +60 -0
- package/dist/ui/store.d.ts.map +1 -0
- package/dist/ui/store.js +104 -0
- package/dist/ui/store.js.map +1 -0
- package/dist/ui/theme.d.ts +27 -0
- package/dist/ui/theme.d.ts.map +1 -0
- package/dist/ui/theme.js +41 -0
- package/dist/ui/theme.js.map +1 -0
- package/dist/workspace.d.ts +2 -0
- package/dist/workspace.d.ts.map +1 -1
- package/dist/workspace.js +3 -2
- package/dist/workspace.js.map +1 -1
- package/dist/writer.d.ts +18 -4
- package/dist/writer.d.ts.map +1 -1
- package/dist/writer.js +49 -5
- package/dist/writer.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/agent.d.ts +9 -1
- package/node_modules/@aspectcode/optimizer/dist/agent.d.ts.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/agent.js +38 -0
- package/node_modules/@aspectcode/optimizer/dist/agent.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/index.d.ts +3 -3
- package/node_modules/@aspectcode/optimizer/dist/index.d.ts.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/index.js +4 -1
- package/node_modules/@aspectcode/optimizer/dist/index.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/prompts.d.ts +12 -0
- package/node_modules/@aspectcode/optimizer/dist/prompts.d.ts.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/prompts.js +55 -0
- package/node_modules/@aspectcode/optimizer/dist/prompts.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/providers/anthropic.js +1 -1
- package/node_modules/@aspectcode/optimizer/dist/providers/anthropic.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/providers/openai.js +1 -1
- package/node_modules/@aspectcode/optimizer/dist/providers/openai.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/types.d.ts +24 -0
- package/node_modules/@aspectcode/optimizer/dist/types.d.ts.map +1 -1
- package/node_modules/@aspectcode/optimizer/dist/types.js.map +1 -1
- package/node_modules/@aspectcode/optimizer/package.json +1 -1
- package/package.json +6 -3
|
@@ -13,6 +13,8 @@ exports.buildSystemPrompt = buildSystemPrompt;
|
|
|
13
13
|
exports.buildOptimizePrompt = buildOptimizePrompt;
|
|
14
14
|
exports.buildEvalPrompt = buildEvalPrompt;
|
|
15
15
|
exports.parseEvalResponse = parseEvalResponse;
|
|
16
|
+
exports.buildComplaintPrompt = buildComplaintPrompt;
|
|
17
|
+
exports.parseComplaintResponse = parseComplaintResponse;
|
|
16
18
|
/** Default maximum KB characters to include before truncation. */
|
|
17
19
|
const DEFAULT_KB_CHAR_BUDGET = 60000;
|
|
18
20
|
/**
|
|
@@ -153,4 +155,57 @@ function parseEvalResponse(response) {
|
|
|
153
155
|
}
|
|
154
156
|
return { score, feedback, suggestions };
|
|
155
157
|
}
|
|
158
|
+
// ── Complaint-driven prompts ─────────────────────────────────
|
|
159
|
+
/**
|
|
160
|
+
* Build a prompt that instructs the LLM to address specific user complaints
|
|
161
|
+
* by modifying the AGENTS.md instructions.
|
|
162
|
+
*/
|
|
163
|
+
function buildComplaintPrompt(currentInstructions, complaints) {
|
|
164
|
+
const numbered = complaints.map((c, i) => `${i + 1}. ${c}`).join('\n');
|
|
165
|
+
return `You are updating AGENTS.md instructions to address user complaints about
|
|
166
|
+
AI coding assistant behaviour. Each complaint describes something the AI did
|
|
167
|
+
wrong or forgot. Your job is to add, modify, or strengthen rules so the
|
|
168
|
+
described problem will not happen again.
|
|
169
|
+
|
|
170
|
+
## Complaints
|
|
171
|
+
${numbered}
|
|
172
|
+
|
|
173
|
+
## Current Instructions
|
|
174
|
+
${currentInstructions}
|
|
175
|
+
|
|
176
|
+
## Rules
|
|
177
|
+
- Address EVERY complaint. For each one, add or modify a specific, actionable rule.
|
|
178
|
+
- Do NOT remove existing rules unless they directly contradict a fix.
|
|
179
|
+
- Keep instructions concise — each new rule should be one or two lines.
|
|
180
|
+
- Output the FULL updated instructions (not just the diff).
|
|
181
|
+
|
|
182
|
+
Respond in EXACTLY this format:
|
|
183
|
+
|
|
184
|
+
CHANGES:
|
|
185
|
+
- <short description of change 1>
|
|
186
|
+
- <short description of change 2>
|
|
187
|
+
...
|
|
188
|
+
|
|
189
|
+
INSTRUCTIONS:
|
|
190
|
+
<full updated instructions content>`;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Parse a complaint response into changes + updated instructions.
|
|
194
|
+
*/
|
|
195
|
+
function parseComplaintResponse(response) {
|
|
196
|
+
const changes = [];
|
|
197
|
+
const changesMatch = response.match(/CHANGES:\s*([\s\S]*?)(?=\nINSTRUCTIONS:)/i);
|
|
198
|
+
if (changesMatch) {
|
|
199
|
+
for (const line of changesMatch[1].split('\n')) {
|
|
200
|
+
const trimmed = line.replace(/^[-*]\s*/, '').trim();
|
|
201
|
+
if (trimmed)
|
|
202
|
+
changes.push(trimmed);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
const instructionsMatch = response.match(/INSTRUCTIONS:\s*([\s\S]*)/i);
|
|
206
|
+
const instructions = instructionsMatch
|
|
207
|
+
? instructionsMatch[1].trim()
|
|
208
|
+
: response.trim(); // fallback: treat entire response as instructions
|
|
209
|
+
return { changes, instructions };
|
|
210
|
+
}
|
|
156
211
|
//# sourceMappingURL=prompts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AASH,gCAeC;AAMD,8CAmCC;AAQD,kDAoCC;AAMD,0CA6BC;AAKD,8CAqBC;
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AASH,gCAeC;AAMD,8CAmCC;AAQD,kDAoCC;AAMD,0CA6BC;AAKD,8CAqBC;AAQD,oDAgCC;AAKD,wDAoBC;AAzOD,kEAAkE;AAClE,MAAM,sBAAsB,GAAG,KAAM,CAAC;AAEtC;;;GAGG;AACH,SAAgB,UAAU,CAAC,EAAU,EAAE,aAAqB,sBAAsB;IAChF,IAAI,EAAE,CAAC,MAAM,IAAI,UAAU;QAAE,OAAO,EAAE,CAAC;IAEvC,8CAA8C;IAC9C,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,UAAU,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;QACvC,OAAO,CACL,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC;YACpB,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;YACtC,+CAA+C,CAChD,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,+CAA+C,CAAC;AACnF,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,EAAU,EAAE,YAAqB,EAAE,gBAAyB;IAC5F,MAAM,SAAS,GAAG,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAE/C,IAAI,MAAM,GAAG;;;;;;;;;;;;;;;;EAgBb,SAAS,EAAE,CAAC;IAEZ,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,IAAI;;;;;;;;;EASZ,gBAAgB,EAAE,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CACjC,mBAA2B,EAC3B,MAAe,EACf,aAAsB;IAEtB,IAAI,MAAM,GAAG;;;;;;;;;;;EAWb,mBAAmB,EAAE,CAAC;IAEtB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI;;;;;EAKZ,MAAM,EAAE,CAAC;IACT,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI;;;;EAIZ,aAAa,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAC7B,qBAA6B,EAC7B,EAAU,EACV,YAAqB;IAErB,MAAM,SAAS,GAAG,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAE/C,OAAO;;;;;;;;;;;;;;;;;;EAkBP,SAAS;;;EAGT,qBAAqB,EAAE,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,QAAgB;IAKhD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtF,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAEnF,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACrE,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,gBAAgB,EAAE,CAAC;QACrB,KAAK,MAAM,IAAI,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpD,IAAI,OAAO;gBAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AAC1C,CAAC;AAED,gEAAgE;AAEhE;;;GAGG;AACH,SAAgB,oBAAoB,CAClC,mBAA2B,EAC3B,UAAoB;IAEpB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvE,OAAO;;;;;;EAMP,QAAQ;;;EAGR,mBAAmB;;;;;;;;;;;;;;;;oCAgBe,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CAAC,QAAgB;IAIrD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACjF,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IACvE,MAAM,YAAY,GAAG,iBAAiB;QACpC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAC7B,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,kDAAkD;IAEvE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;AACnC,CAAC"}
|
|
@@ -45,7 +45,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
45
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
46
|
exports.createAnthropicProvider = createAnthropicProvider;
|
|
47
47
|
const retry_1 = require("./retry");
|
|
48
|
-
const DEFAULT_MODEL = 'claude-
|
|
48
|
+
const DEFAULT_MODEL = 'claude-3-5-haiku-20241022';
|
|
49
49
|
const DEFAULT_TEMPERATURE = 0.4;
|
|
50
50
|
const DEFAULT_MAX_TOKENS = 4096;
|
|
51
51
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBH,0DAqFC;AAlGD,mCAAoC;AAEpC,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,7 +44,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
44
44
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
45
|
exports.createOpenAiProvider = createOpenAiProvider;
|
|
46
46
|
const retry_1 = require("./retry");
|
|
47
|
-
const DEFAULT_MODEL = 'gpt-4o';
|
|
47
|
+
const DEFAULT_MODEL = 'gpt-4o-mini';
|
|
48
48
|
const DEFAULT_TEMPERATURE = 0.4;
|
|
49
49
|
const DEFAULT_MAX_TOKENS = 4096;
|
|
50
50
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBH,oDAkDC;AA/DD,mCAAoC;AAEpC,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBH,oDAkDC;AA/DD,mCAAoC;AAEpC,MAAM,aAAa,GAAG,aAAa,CAAC;AACpC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAC,MAAc,EAAE,OAAyB;IAC5E,MAAM,OAAO,GAAG,OAAO,EAAE,KAAK,IAAI,aAAa,CAAC;IAChD,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,mBAAmB,CAAC;IAChE,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,kBAAkB,CAAC;IAE3D,oCAAoC;IACpC,IAAI,aAAiF,CAAC;IAEtF,KAAK,UAAU,SAAS;QACtB,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,aAAa,GAAG,kDAAO,QAAQ,IAAE,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,OAAO;QACL,IAAI,EAAE,QAAQ;QAEd,KAAK,CAAC,IAAI,CAAC,QAAuB;YAChC,OAAO,IAAA,iBAAS,EAAC,KAAK,IAAI,EAAE;gBAC1B,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;gBAEjC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;oBACpD,KAAK,EAAE,OAAO;oBACd,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB,CAAC,CAAC;oBACH,WAAW;oBACX,UAAU,EAAE,SAAS;iBACtB,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;gBACzC,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBACvD,CAAC;gBAED,2BAA2B;gBAC3B,IAAI,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;oBACtC,OAAO,CAAC,IAAI,CACV,gEAAgE;wBAChE,4CAA4C,SAAS,IAAI,CAC1D,CAAC;gBACJ,CAAC;gBAED,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -86,6 +86,30 @@ export declare const PROVIDER_ENV_KEYS: {
|
|
|
86
86
|
readonly anthropic: "ANTHROPIC_API_KEY";
|
|
87
87
|
};
|
|
88
88
|
export type ProviderName = keyof typeof PROVIDER_ENV_KEYS;
|
|
89
|
+
/** Options for processing a user complaint against the current AGENTS.md. */
|
|
90
|
+
export interface ComplaintOptions {
|
|
91
|
+
/** Current AGENTS.md content. */
|
|
92
|
+
currentInstructions: string;
|
|
93
|
+
/** Full KB content (architecture + map + context). */
|
|
94
|
+
kb: string;
|
|
95
|
+
/** One or more user-supplied complaints about AI behaviour. */
|
|
96
|
+
complaints: string[];
|
|
97
|
+
/** LLM provider to use. */
|
|
98
|
+
provider: LlmProvider;
|
|
99
|
+
/** Optional logger. */
|
|
100
|
+
log?: OptLogger;
|
|
101
|
+
/** Character budget for KB in prompts. Default: 60000. */
|
|
102
|
+
kbCharBudget?: number;
|
|
103
|
+
/** AbortSignal for cooperative cancellation. */
|
|
104
|
+
signal?: AbortSignal;
|
|
105
|
+
}
|
|
106
|
+
/** Result of complaint-driven optimization. */
|
|
107
|
+
export interface ComplaintResult {
|
|
108
|
+
/** Updated AGENTS.md content. */
|
|
109
|
+
optimizedInstructions: string;
|
|
110
|
+
/** Human-readable list of changes applied (one per complaint). */
|
|
111
|
+
changes: string[];
|
|
112
|
+
}
|
|
89
113
|
/** Optional env-var to force a specific provider. */
|
|
90
114
|
export declare const LLM_PROVIDER_ENV = "LLM_PROVIDER";
|
|
91
115
|
/** Optional env-var to override the default model. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,+CAA+C;AAC/C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,qEAAqE;IACrE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAChD;AAED,oDAAoD;AACpD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID,sDAAsD;AACtD,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,mBAAmB,EAAE,MAAM,CAAC;IAE5B,sDAAsD;IACtD,EAAE,EAAE,MAAM,CAAC;IAEX,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IAEtB,2BAA2B;IAC3B,QAAQ,EAAE,WAAW,CAAC;IAEtB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,SAAS,CAAC;IAEhB,6FAA6F;IAC7F,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gDAAgD;IAChD,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,iDAAiD;AACjD,MAAM,WAAW,UAAU;IACzB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,wCAAwC;IACxC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,8CAA8C;AAC9C,MAAM,WAAW,cAAc;IAC7B,yEAAyE;IACzE,qBAAqB,EAAE,MAAM,CAAC;IAE9B,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IAEnB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAID,4DAA4D;AAC5D,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAwGH,+DAA+D;AAE/D,4DAA4D;AAC/C,QAAA,iBAAiB,GAAG;IAC/B,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;CACtB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAwGH,+DAA+D;AAE/D,4DAA4D;AAC/C,QAAA,iBAAiB,GAAG;IAC/B,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,mBAAmB;CACtB,CAAC;AAuCX,qDAAqD;AACxC,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAE/C,sDAAsD;AACzC,QAAA,aAAa,GAAG,WAAW,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aspectcode",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "CLI for Aspect Code — generate knowledge-base artifacts from the command line",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/main.js",
|
|
@@ -46,18 +46,21 @@
|
|
|
46
46
|
"@aspectcode/optimizer"
|
|
47
47
|
],
|
|
48
48
|
"dependencies": {
|
|
49
|
+
"@anthropic-ai/sdk": "^0.39.0",
|
|
49
50
|
"@aspectcode/core": "0.3.1",
|
|
50
51
|
"@aspectcode/emitters": "0.3.1",
|
|
51
|
-
"@aspectcode/optimizer": "0.3.
|
|
52
|
-
"@anthropic-ai/sdk": "^0.39.0",
|
|
52
|
+
"@aspectcode/optimizer": "0.3.2",
|
|
53
53
|
"chokidar": "^4.0.3",
|
|
54
54
|
"dotenv": "^16.4.0",
|
|
55
|
+
"ink": "3.2.0",
|
|
55
56
|
"openai": "^4.70.0",
|
|
57
|
+
"react": "17.0.2",
|
|
56
58
|
"web-tree-sitter": "^0.21.0"
|
|
57
59
|
},
|
|
58
60
|
"devDependencies": {
|
|
59
61
|
"@types/mocha": "^10.0.0",
|
|
60
62
|
"@types/node": "^22.0.0",
|
|
63
|
+
"@types/react": "17.0.91",
|
|
61
64
|
"mocha": "^10.4.0",
|
|
62
65
|
"ts-node": "^10.9.2",
|
|
63
66
|
"typescript": "^5.5.4"
|