aura-code 0.10.1 → 0.10.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/dist/agent/compactor.d.ts +26 -4
- package/dist/agent/compactor.js +57 -63
- package/dist/agent/compactor.js.map +1 -1
- package/dist/agent/context.d.ts +1 -0
- package/dist/agent/context.js +3 -2
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/loop.d.ts +2 -1
- package/dist/agent/loop.js +52 -7
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/mixture.js +5 -3
- package/dist/agent/mixture.js.map +1 -1
- package/dist/agent/system-prompt.js +9 -16
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/agent/tiered-context.d.ts +36 -0
- package/dist/agent/tiered-context.js +234 -0
- package/dist/agent/tiered-context.js.map +1 -0
- package/dist/cli/command-palette.js +2 -0
- package/dist/cli/command-palette.js.map +1 -1
- package/dist/cli/diamond.d.ts +1 -3
- package/dist/cli/diamond.js +52 -29
- package/dist/cli/diamond.js.map +1 -1
- package/dist/cli/display.d.ts +2 -0
- package/dist/cli/display.js +3 -0
- package/dist/cli/display.js.map +1 -1
- package/dist/cli/help-data.js +1 -0
- package/dist/cli/help-data.js.map +1 -1
- package/dist/cli/index.js +49 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/tui.js +75 -31
- package/dist/cli/tui.js.map +1 -1
- package/dist/providers/anthropic.d.ts +1 -0
- package/dist/providers/anthropic.js +15 -3
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/factory.js +9 -2
- package/dist/providers/factory.js.map +1 -1
- package/dist/providers/openai-compatible.js +22 -1
- package/dist/providers/openai-compatible.js.map +1 -1
- package/dist/providers/types.d.ts +1 -0
- package/dist/ruby/alternator.js +1 -1
- package/dist/ruby/alternator.js.map +1 -1
- package/dist/tools/gmail-tool.js +3 -3
- package/dist/tools/gmail-tool.js.map +1 -1
- package/dist/tools/index.js +12 -12
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/telegram-bot.js +43 -7
- package/dist/tools/telegram-bot.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mixture.js","sourceRoot":"","sources":["../../src/agent/mixture.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAuEH,
|
|
1
|
+
{"version":3,"file":"mixture.js","sourceRoot":"","sources":["../../src/agent/mixture.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,24 +20,15 @@ function buildSystemPrompt(ctx, providerName, task) {
|
|
|
20
20
|
return `You are Aura — a precise, efficient AI coding agent.
|
|
21
21
|
You are working in a ${ctx.language} project called "${ctx.name}" (${ctx.framework}).
|
|
22
22
|
|
|
23
|
-
## Voice and character
|
|
24
|
-
- You are precise, not verbose. Cite specifics (file paths, line numbers, function names) — never generalities.
|
|
25
|
-
- End summaries with what was verified, not what was attempted.
|
|
26
|
-
- You are self-aware: you know you were built by agents. Reference this when relevant.
|
|
27
|
-
- Never hedge with "I think" or "I believe" — state findings and act on evidence.
|
|
28
|
-
|
|
29
23
|
## How you operate
|
|
30
|
-
-
|
|
24
|
+
- Work in a loop: read context → plan → execute tools → verify → repeat until done.
|
|
31
25
|
- Always READ files before EDITING them. Never guess at file structure.
|
|
32
|
-
- Use search_code
|
|
33
|
-
- Use edit_file for
|
|
34
|
-
- After
|
|
35
|
-
-
|
|
36
|
-
- If a tool returns an error, read the error carefully and adjust.
|
|
37
|
-
- Be explicit about what you're doing and why, in 1-2 sentences before each tool call.
|
|
38
|
-
- When done, summarize exactly what changed and what was verified (tests passed, build succeeded, specific checks that passed).
|
|
26
|
+
- Use search_code for exact locations — don't assume line numbers.
|
|
27
|
+
- Use edit_file for existing files; only write_file for new/tiny files — prefer targeted, minimal changes over rewrites.
|
|
28
|
+
- After changes, run_tests. Fix new failures before proceeding — never leave the codebase with more failures than you started with; roll back regressions you can't fix.
|
|
29
|
+
- State intent in 1-2 sentences before each tool call; always start with a tool (search_code/read_file/list_dir) — never respond with prose alone.
|
|
39
30
|
- If the task requires a code change, you must eventually call write_file or edit_file to apply it. Do not spend all turns on read_file and search_code — at some point you must commit to making the change. Aim for a 2:1 ratio of reads to writes, not 100% reads.
|
|
40
|
-
-
|
|
31
|
+
- When done, summarize exactly what changed and what was verified — not what was attempted. Cite specifics (file paths, line numbers, function names), never generalities. State findings and act on evidence, never hedge with "I think" or "I believe".
|
|
41
32
|
|
|
42
33
|
## Tool call arguments
|
|
43
34
|
- Never inline large multi-line content (HTML, generated code, long files) as a raw string inside a tool call's JSON arguments — models frequently produce invalid JSON when escaping quotes/newlines in big blocks, causing repeated failed calls.
|
|
@@ -51,7 +42,6 @@ You are working in a ${ctx.language} project called "${ctx.name}" (${ctx.framewo
|
|
|
51
42
|
## Code standards
|
|
52
43
|
- Match the existing code style: indentation, naming conventions, comment style.
|
|
53
44
|
- Do not introduce new dependencies unless explicitly asked.
|
|
54
|
-
- Prefer targeted, minimal changes over rewrites.
|
|
55
45
|
- Add or update tests when you modify logic.
|
|
56
46
|
${domainBlock}${memoryBlock}${confessionsBlock}${pluginBlock}
|
|
57
47
|
## Safety
|
|
@@ -76,6 +66,9 @@ ${ctx.tree}
|
|
|
76
66
|
${ctx.config}
|
|
77
67
|
\`\`\`
|
|
78
68
|
|
|
69
|
+
### Aura Standing Rules
|
|
70
|
+
${ctx.auraRules}
|
|
71
|
+
|
|
79
72
|
### README
|
|
80
73
|
${ctx.readme}
|
|
81
74
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../src/agent/system-prompt.ts"],"names":[],"mappings":";;AAQA,
|
|
1
|
+
{"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../../src/agent/system-prompt.ts"],"names":[],"mappings":";;AAQA,8CAsEC;AA0BD,oDAmCC;AA1ID,+DAA6D;AAC7D,2DAAwD;AACxD,6CAAsD;AACtD,oDAAsD;AAEtD,MAAM,YAAY,GAAG,6LAA6L,CAAC;AAEnN,SAAgB,iBAAiB,CAAC,GAAmB,EAAE,YAAoB,EAAE,IAAY;IACvF,MAAM,WAAW,GAAG,IAAA,0CAAoB,EAAC,IAAI,CAAC,CAAC;IAC/C,4EAA4E;IAC5E,yEAAyE;IACzE,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACjE,oEAAoE;IACpE,6EAA6E;IAC7E,MAAM,gBAAgB,GAAG,IAAA,mCAAsB,GAAE,CAAC;IAClD,+EAA+E;IAC/E,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAEhD,OAAO;uBACc,GAAG,CAAC,QAAQ,oBAAoB,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;EAyBhF,WAAW,GAAG,WAAW,GAAG,gBAAgB,GAAG,WAAW;;;;;;;;;YAShD,GAAG,CAAC,QAAQ;aACX,GAAG,CAAC,SAAS;QAClB,GAAG,CAAC,IAAI;;;;EAId,GAAG,CAAC,IAAI;;;;;EAKR,GAAG,CAAC,MAAM;;;;EAIV,GAAG,CAAC,SAAS;;;EAGb,GAAG,CAAC,MAAM;;;EAGV,GAAG,CAAC,aAAa;;YAEP,YAAY,uDAAuD,CAAC;AAChF,CAAC;AAED,2EAA2E;AAC3E,IAAI,kBAAkB,GAAkB,IAAI,CAAC;AAE7C,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAA,0BAAc,GAAE,CAAC;YACjC,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC;YACD,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB,GAAG,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,IAAI,CAAC,kBAAkB;QAAE,OAAO,EAAE,CAAC;IACnC,oEAAoE;IACpE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,EAAE,CAAC;IACtD,OAAO,kGAAkG,kBAAkB,EAAE,CAAC;AAChI,CAAC;AAED,SAAgB,oBAAoB,CAAC,IAAY,EAAE,WAAmB;IACpE,OAAO,wEAAwE,IAAI;;gBAErE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BzB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { HistoryMessage } from '../providers/types.js';
|
|
2
|
+
import { type CompactionExtras } from './compactor.js';
|
|
3
|
+
export declare function isTieredStrategyEnabled(): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Cheap/fast model used for middle-compression, resolved in priority order:
|
|
6
|
+
* 1. AURA_CONTEXT_SUMMARY_MODEL — fully user-overridable (any model id
|
|
7
|
+
* the main session could use: Sonnet, Opus, Fable, local Ollama, ...).
|
|
8
|
+
* 2. deepseek-v4-flash, if DEEPSEEK_API_KEY is set — the recommended
|
|
9
|
+
* default this feature was built and tested against.
|
|
10
|
+
* 3. AURA_FALLBACK_MODEL (first entry if comma-separated).
|
|
11
|
+
* 4. The session's own main model, as a last resort (still correct, just
|
|
12
|
+
* not "cheap" — better than failing compaction).
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveSummaryModel(mainModel: string): string;
|
|
15
|
+
export interface TieredMetrics {
|
|
16
|
+
strategy: 'tiered';
|
|
17
|
+
beforeTokens: number;
|
|
18
|
+
afterTokens: number;
|
|
19
|
+
compactionCount: number;
|
|
20
|
+
newBullets: number;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Tiered counterpart to compactor.ts's compactHistory. Same trigger contract
|
|
24
|
+
* (mutates `history` in place, fires on the same escalating threshold) but
|
|
25
|
+
* async — the middle-compression bullet pass is an LLM call on the cheap
|
|
26
|
+
* summary model.
|
|
27
|
+
*
|
|
28
|
+
* `extras` is accepted for call-site symmetry with compactHistory but
|
|
29
|
+
* intentionally unused here: affectHint/executiveDigest are transient
|
|
30
|
+
* per-call advisories, not historical facts, so they don't belong in an
|
|
31
|
+
* append-only fact log.
|
|
32
|
+
*/
|
|
33
|
+
export declare function compactHistoryTiered(history: HistoryMessage[], totalTokens: number, model: string, sessionPath: string | undefined, extras?: CompactionExtras): Promise<{
|
|
34
|
+
compacted: boolean;
|
|
35
|
+
metrics?: TieredMetrics;
|
|
36
|
+
}>;
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.isTieredStrategyEnabled = isTieredStrategyEnabled;
|
|
37
|
+
exports.resolveSummaryModel = resolveSummaryModel;
|
|
38
|
+
exports.compactHistoryTiered = compactHistoryTiered;
|
|
39
|
+
/**
|
|
40
|
+
* Tiered context strategy — ANCHOR + FACT-LOG + TAIL.
|
|
41
|
+
*
|
|
42
|
+
* Alternative to compactor.ts's escalating-recap strategy, gated behind
|
|
43
|
+
* AURA_CONTEXT_STRATEGY=tiered so it can be A/B-compared against the default
|
|
44
|
+
* rather than shipped as a silent replacement (see isTieredStrategyEnabled).
|
|
45
|
+
*
|
|
46
|
+
* - ANCHOR: history[0] (the original task) — never touched.
|
|
47
|
+
* - TAIL: verbatim recent turns, sized identically to the default strategy
|
|
48
|
+
* (computeTailBoundary / RETENTION_RATIO from compactor.ts) so the two
|
|
49
|
+
* strategies fire at the same trigger and keep the same amount of raw
|
|
50
|
+
* recent context — the only variable being compared is what happens to
|
|
51
|
+
* the middle.
|
|
52
|
+
* - FACT LOG: everything between anchor and tail, reduced to 1-3 bullet
|
|
53
|
+
* facts per turn (file changed, decision made, value set, command run +
|
|
54
|
+
* result). Bullets are stored in an on-disk sidecar (one JSON file per
|
|
55
|
+
* session, independent of the session's own history blob) and are
|
|
56
|
+
* strictly append-only: each compaction pass only asks the summary model
|
|
57
|
+
* to bullet-ize the newly-aged-out turns and appends the result — it never
|
|
58
|
+
* re-summarizes the existing log. That keeps the rendered fact-log message
|
|
59
|
+
* a stable-prefix-plus-appended-suffix across calls, which is what lets a
|
|
60
|
+
* cache breakpoint placed after it actually hit.
|
|
61
|
+
* - Summarization runs on a separate, cheap/fast model (see
|
|
62
|
+
* resolveSummaryModel), not the session's main model, so the compaction
|
|
63
|
+
* pass itself doesn't eat the token savings it's trying to create.
|
|
64
|
+
*/
|
|
65
|
+
const fs = __importStar(require("fs"));
|
|
66
|
+
const path = __importStar(require("path"));
|
|
67
|
+
const factory_js_1 = require("../providers/factory.js");
|
|
68
|
+
const env_js_1 = require("../util/env.js");
|
|
69
|
+
const compactor_js_1 = require("./compactor.js");
|
|
70
|
+
/** Marker prefixing the rendered fact-log placeholder message in `history`. */
|
|
71
|
+
const FACT_LOG_MARKER = '[Context fact log';
|
|
72
|
+
function isTieredStrategyEnabled() {
|
|
73
|
+
return (0, env_js_1.getEnv)('AURA_CONTEXT_STRATEGY') === 'tiered';
|
|
74
|
+
}
|
|
75
|
+
function isFactLogMessage(msg) {
|
|
76
|
+
return msg.role === 'assistant' && msg.content.startsWith(FACT_LOG_MARKER);
|
|
77
|
+
}
|
|
78
|
+
const EMPTY_LOG = { compactionCount: 0, bullets: [] };
|
|
79
|
+
/** In-memory fallback for ephemeral sessions (no sessionPath to persist to).
|
|
80
|
+
* Keyed by history array identity, matching compactHistory's in-place-mutate
|
|
81
|
+
* contract (the array reference is stable for the life of a run). */
|
|
82
|
+
const memoryLogs = new WeakMap();
|
|
83
|
+
function sidecarPath(sessionPath) {
|
|
84
|
+
return sessionPath.replace(/\.json$/, '') + '.factlog.json';
|
|
85
|
+
}
|
|
86
|
+
function loadFactLog(sessionPath, history) {
|
|
87
|
+
if (!sessionPath)
|
|
88
|
+
return memoryLogs.get(history) ?? EMPTY_LOG;
|
|
89
|
+
try {
|
|
90
|
+
const raw = fs.readFileSync(sidecarPath(sessionPath), 'utf8');
|
|
91
|
+
return JSON.parse(raw);
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
return EMPTY_LOG;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function saveFactLog(sessionPath, history, log) {
|
|
98
|
+
if (!sessionPath) {
|
|
99
|
+
memoryLogs.set(history, log);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
const target = sidecarPath(sessionPath);
|
|
103
|
+
const dir = path.dirname(target);
|
|
104
|
+
if (!fs.existsSync(dir))
|
|
105
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
106
|
+
fs.writeFileSync(target, JSON.stringify(log, null, 2), 'utf8');
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Cheap/fast model used for middle-compression, resolved in priority order:
|
|
110
|
+
* 1. AURA_CONTEXT_SUMMARY_MODEL — fully user-overridable (any model id
|
|
111
|
+
* the main session could use: Sonnet, Opus, Fable, local Ollama, ...).
|
|
112
|
+
* 2. deepseek-v4-flash, if DEEPSEEK_API_KEY is set — the recommended
|
|
113
|
+
* default this feature was built and tested against.
|
|
114
|
+
* 3. AURA_FALLBACK_MODEL (first entry if comma-separated).
|
|
115
|
+
* 4. The session's own main model, as a last resort (still correct, just
|
|
116
|
+
* not "cheap" — better than failing compaction).
|
|
117
|
+
*/
|
|
118
|
+
function resolveSummaryModel(mainModel) {
|
|
119
|
+
const override = (0, env_js_1.getEnv)('AURA_CONTEXT_SUMMARY_MODEL');
|
|
120
|
+
if (override)
|
|
121
|
+
return override;
|
|
122
|
+
if ((0, env_js_1.getApiKey)('DEEPSEEK_API_KEY'))
|
|
123
|
+
return 'deepseek-v4-flash';
|
|
124
|
+
const fallback = (0, env_js_1.getEnv)('AURA_FALLBACK_MODEL');
|
|
125
|
+
if (fallback)
|
|
126
|
+
return fallback.split(',')[0].trim();
|
|
127
|
+
return mainModel;
|
|
128
|
+
}
|
|
129
|
+
let summaryProviderCache;
|
|
130
|
+
function getSummaryProvider(mainModel) {
|
|
131
|
+
const model = resolveSummaryModel(mainModel);
|
|
132
|
+
if (summaryProviderCache?.model === model)
|
|
133
|
+
return summaryProviderCache.provider;
|
|
134
|
+
const provider = (0, factory_js_1.createProvider)({ model });
|
|
135
|
+
summaryProviderCache = { model, provider };
|
|
136
|
+
return provider;
|
|
137
|
+
}
|
|
138
|
+
const BULLET_SYSTEM = [
|
|
139
|
+
'You compress coding-session turns into a durable fact log.',
|
|
140
|
+
'For each turn given, write 1-3 markdown bullets ("- ..."), each a concrete standalone fact:',
|
|
141
|
+
'a file changed, a decision made, a value/config set, or a command run and its result.',
|
|
142
|
+
'Be specific — file names, exact values, exit codes. No generic advice, no headers, no prose.',
|
|
143
|
+
'Output ONLY bullet lines, one per line, in the same order as the turns given.',
|
|
144
|
+
].join(' ');
|
|
145
|
+
/** Fuller per-message transcript line than compactor's summariseMessage —
|
|
146
|
+
* the summary model gets more raw material to extract concrete facts from. */
|
|
147
|
+
function renderTurn(msg) {
|
|
148
|
+
switch (msg.role) {
|
|
149
|
+
case 'user':
|
|
150
|
+
return `User: ${msg.content.slice(0, 400)}`;
|
|
151
|
+
case 'assistant': {
|
|
152
|
+
const text = msg.content ? `Assistant: ${msg.content.slice(0, 400)}` : '';
|
|
153
|
+
const calls = msg.toolCalls?.length
|
|
154
|
+
? `Called: ${msg.toolCalls.map(c => `${c.name}(${JSON.stringify(c.input).slice(0, 200)})`).join(', ')}`
|
|
155
|
+
: '';
|
|
156
|
+
return [text, calls].filter(Boolean).join('\n') || 'Assistant: (no content)';
|
|
157
|
+
}
|
|
158
|
+
case 'tool_result':
|
|
159
|
+
return msg.results
|
|
160
|
+
.map(r => `Result[${r.name}]${r.isError ? ' (error)' : ''}: ${(r.content ?? '').slice(0, 400)}`)
|
|
161
|
+
.join('\n');
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
async function summarizeTurns(turns, mainModel) {
|
|
165
|
+
if (turns.length === 0)
|
|
166
|
+
return [];
|
|
167
|
+
const provider = getSummaryProvider(mainModel);
|
|
168
|
+
const transcript = turns.map((t, i) => `--- turn ${i + 1} (${t.role}) ---\n${renderTurn(t)}`).join('\n\n');
|
|
169
|
+
const response = await provider.complete(BULLET_SYSTEM, [{ role: 'user', content: transcript }], []);
|
|
170
|
+
const lines = response.text.split('\n').map(l => l.trim()).filter(l => l.startsWith('- '));
|
|
171
|
+
return lines.length > 0 ? lines : [`- ${turns.length} turns compacted (summary model returned no bullets)`];
|
|
172
|
+
}
|
|
173
|
+
function renderFactLog(log) {
|
|
174
|
+
return {
|
|
175
|
+
role: 'assistant',
|
|
176
|
+
content: [
|
|
177
|
+
`${FACT_LOG_MARKER}: ${log.bullets.length} facts from earlier turns.]`,
|
|
178
|
+
...log.bullets,
|
|
179
|
+
].join('\n'),
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Tiered counterpart to compactor.ts's compactHistory. Same trigger contract
|
|
184
|
+
* (mutates `history` in place, fires on the same escalating threshold) but
|
|
185
|
+
* async — the middle-compression bullet pass is an LLM call on the cheap
|
|
186
|
+
* summary model.
|
|
187
|
+
*
|
|
188
|
+
* `extras` is accepted for call-site symmetry with compactHistory but
|
|
189
|
+
* intentionally unused here: affectHint/executiveDigest are transient
|
|
190
|
+
* per-call advisories, not historical facts, so they don't belong in an
|
|
191
|
+
* append-only fact log.
|
|
192
|
+
*/
|
|
193
|
+
async function compactHistoryTiered(history, totalTokens, model, sessionPath,
|
|
194
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
195
|
+
extras) {
|
|
196
|
+
const log = loadFactLog(sessionPath, history);
|
|
197
|
+
const window = (0, factory_js_1.getContextWindow)(model) ?? compactor_js_1.DEFAULT_WINDOW;
|
|
198
|
+
const threshold = Math.floor(window * (0, compactor_js_1.thresholdRatio)(log.compactionCount));
|
|
199
|
+
if (totalTokens < threshold)
|
|
200
|
+
return { compacted: false };
|
|
201
|
+
if (history.length <= 3)
|
|
202
|
+
return { compacted: false };
|
|
203
|
+
const keepFrom = (0, compactor_js_1.computeTailBoundary)(history, window);
|
|
204
|
+
const middle = history.slice(1, keepFrom);
|
|
205
|
+
// The existing fact-log placeholder (if any) sits at the front of `middle`
|
|
206
|
+
// after a prior pass — its content is already captured in `log`, so it's
|
|
207
|
+
// dropped rather than re-summarized (that's the incremental guarantee).
|
|
208
|
+
const newTurns = middle.filter(msg => !isFactLogMessage(msg));
|
|
209
|
+
if (newTurns.length === 0)
|
|
210
|
+
return { compacted: false };
|
|
211
|
+
const newBullets = await summarizeTurns(newTurns, model);
|
|
212
|
+
const updatedLog = {
|
|
213
|
+
compactionCount: log.compactionCount + 1,
|
|
214
|
+
bullets: [...log.bullets, ...newBullets],
|
|
215
|
+
};
|
|
216
|
+
saveFactLog(sessionPath, history, updatedLog);
|
|
217
|
+
const placeholder = renderFactLog(updatedLog);
|
|
218
|
+
const preserved = [history[0], placeholder, ...history.slice(keepFrom)];
|
|
219
|
+
history.length = 0;
|
|
220
|
+
for (const msg of preserved)
|
|
221
|
+
history.push(msg);
|
|
222
|
+
const afterTokens = (0, compactor_js_1.countText)(placeholder.content) + preserved.slice(2).reduce((sum, m) => sum + (0, compactor_js_1.countMessage)(m), 0) + (0, compactor_js_1.countMessage)(history[0]);
|
|
223
|
+
return {
|
|
224
|
+
compacted: true,
|
|
225
|
+
metrics: {
|
|
226
|
+
strategy: 'tiered',
|
|
227
|
+
beforeTokens: totalTokens,
|
|
228
|
+
afterTokens,
|
|
229
|
+
compactionCount: updatedLog.compactionCount,
|
|
230
|
+
newBullets: newBullets.length,
|
|
231
|
+
},
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
//# sourceMappingURL=tiered-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiered-context.js","sourceRoot":"","sources":["../../src/agent/tiered-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,8 @@ exports.PALETTE_COMMANDS = [
|
|
|
60
60
|
{ id: ':q', label: 'Quit', description: 'Exit Aura', category: 'System' },
|
|
61
61
|
{ id: ':context', label: 'Context health', description: 'Token usage dashboard', category: 'System' },
|
|
62
62
|
{ id: ':doctor', label: 'Doctor', description: 'Run health checks', category: 'System' },
|
|
63
|
+
{ id: ':compact', label: 'Force compact', description: 'Manual context compaction (alias: :compress)', category: 'System' },
|
|
64
|
+
{ id: ':compress', label: 'Force compress', description: 'Manual context compaction (alias: :compact)', category: 'System' },
|
|
63
65
|
];
|
|
64
66
|
/**
|
|
65
67
|
* Fuzzy-match a query against a command's label + id.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-palette.js","sourceRoot":"","sources":["../../src/cli/command-palette.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"command-palette.js","sourceRoot":"","sources":["../../src/cli/command-palette.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/diamond.d.ts
CHANGED
|
@@ -35,9 +35,7 @@ export declare function gradientStopFor(row: number, total: number): chalk.Chalk
|
|
|
35
35
|
* shading is applied at render time by styleGemRow, not baked in here.
|
|
36
36
|
*/
|
|
37
37
|
export declare const GEM: string[];
|
|
38
|
-
|
|
39
|
-
export declare const GEM_WIDTH: number;
|
|
40
|
-
/** The gem's styled Nth row, or null if out of range — for compositing beside other columns. */
|
|
38
|
+
export declare const GEM_WIDTH = 0;
|
|
41
39
|
export declare function gemRow(i: number): string | null;
|
|
42
40
|
export interface BannerInfo {
|
|
43
41
|
version: string;
|
package/dist/cli/diamond.js
CHANGED
|
@@ -111,32 +111,21 @@ function gradientStopFor(row, total) {
|
|
|
111
111
|
* so the point renders cleanly on every terminal font; per-row 3D facet
|
|
112
112
|
* shading is applied at render time by styleGemRow, not baked in here.
|
|
113
113
|
*/
|
|
114
|
-
exports.GEM = [
|
|
115
|
-
|
|
116
|
-
' ████████ ', // crown
|
|
117
|
-
' ██████████ ', // crown → girdle
|
|
118
|
-
'████████████', // girdle (widest)
|
|
119
|
-
' █████████ ', // pavilion
|
|
120
|
-
' ███████ ', // pavilion
|
|
121
|
-
' █████ ', // pavilion
|
|
122
|
-
' ███ ', // pavilion, narrowing to the point
|
|
123
|
-
' █ ', // point
|
|
124
|
-
];
|
|
125
|
-
/** Column width of one gem row (all rows share the same padded width). */
|
|
126
|
-
exports.GEM_WIDTH = exports.GEM[0].length;
|
|
127
|
-
/** The gem's styled Nth row, or null if out of range — for compositing beside other columns. */
|
|
114
|
+
exports.GEM = [];
|
|
115
|
+
exports.GEM_WIDTH = 0;
|
|
128
116
|
function gemRow(i) {
|
|
129
|
-
|
|
130
|
-
return row === undefined ? null : styleGemRow(row, FACET_SHADES);
|
|
117
|
+
return null;
|
|
131
118
|
}
|
|
132
119
|
const LOGO = [
|
|
133
|
-
'
|
|
134
|
-
'
|
|
135
|
-
'
|
|
136
|
-
'
|
|
137
|
-
'
|
|
138
|
-
'
|
|
139
|
-
'
|
|
120
|
+
' ██▓▒▒ ',
|
|
121
|
+
' ███▓▒▒▒ ',
|
|
122
|
+
' █████╗ ██╗ ██╗██████╗ █████╗ ████▓▒▒▒▒ ██████╗ ██████╗ ██████╗ ███████╗',
|
|
123
|
+
'██╔══██╗██║ ██║██╔══██╗██╔══██╗ █████▓▒▒▒▒▒ ██╔════╝██╔═══██╗██╔══██╗██╔════╝',
|
|
124
|
+
'███████║██║ ██║██████╔╝███████║ ████▓▒▒▒▒ ██║ ██║ ██║██║ ██║█████╗ ',
|
|
125
|
+
'██╔══██║██║ ██║██╔══██╗██╔══██║ ███▓▒▒▒ ██║ ██║ ██║██║ ██║██╔══╝ ',
|
|
126
|
+
'██║ ██║╚██████╔╝██║ ██║██║ ██║ ██▓▒▒ ╚██████╗╚██████╔╝██████╔╝███████╗',
|
|
127
|
+
'╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ █▓▒ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝',
|
|
128
|
+
' ▓ '
|
|
140
129
|
];
|
|
141
130
|
// Shade zones for 3D faceted diamond: [leftFace, midFace, shadowFace].
|
|
142
131
|
// Light comes from top-left, so left face is brightest.
|
|
@@ -150,7 +139,7 @@ function clearToTop() {
|
|
|
150
139
|
}
|
|
151
140
|
/** A ruby-gradient horizontal rule spanning the terminal width (capped). */
|
|
152
141
|
function rule() {
|
|
153
|
-
const width = Math.
|
|
142
|
+
const width = Math.max(10, process.stdout.columns ?? 80);
|
|
154
143
|
return gradient('─'.repeat(width));
|
|
155
144
|
}
|
|
156
145
|
/**
|
|
@@ -185,6 +174,37 @@ function gemBlockLines(indent) {
|
|
|
185
174
|
function renderGemBlock(indent) {
|
|
186
175
|
gemBlockLines(indent).forEach(line => console.log(line));
|
|
187
176
|
}
|
|
177
|
+
const logoColors = ['#ff8c00', '#ff1493', '#dc143c', '#6d1322'];
|
|
178
|
+
function hexToRgb(hex) {
|
|
179
|
+
const r = parseInt(hex.slice(1, 3), 16);
|
|
180
|
+
const g = parseInt(hex.slice(3, 5), 16);
|
|
181
|
+
const b = parseInt(hex.slice(5, 7), 16);
|
|
182
|
+
return { r, g, b };
|
|
183
|
+
}
|
|
184
|
+
function styleLogoRow(str) {
|
|
185
|
+
if (str.length === 0)
|
|
186
|
+
return str;
|
|
187
|
+
let out = '';
|
|
188
|
+
const len = str.length;
|
|
189
|
+
for (let i = 0; i < len; i++) {
|
|
190
|
+
const progress = i / Math.max(1, len - 1);
|
|
191
|
+
const scaled = progress * (logoColors.length - 1);
|
|
192
|
+
const index = Math.floor(scaled);
|
|
193
|
+
const factor = scaled - index;
|
|
194
|
+
if (index >= logoColors.length - 1) {
|
|
195
|
+
out += chalk_1.default.hex(logoColors[logoColors.length - 1]).bold(str[i]);
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
const c1 = hexToRgb(logoColors[index]);
|
|
199
|
+
const c2 = hexToRgb(logoColors[index + 1]);
|
|
200
|
+
const r = Math.round(c1.r + (c2.r - c1.r) * factor);
|
|
201
|
+
const g = Math.round(c1.g + (c2.g - c1.g) * factor);
|
|
202
|
+
const b = Math.round(c1.b + (c2.b - c1.b) * factor);
|
|
203
|
+
out += chalk_1.default.rgb(r, g, b).bold(str[i]);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
return out;
|
|
207
|
+
}
|
|
188
208
|
/**
|
|
189
209
|
* The banner's fully-styled lines, one string per terminal row:
|
|
190
210
|
* - Brilliant-cut gem centered above the wordmark, each row faceted
|
|
@@ -196,12 +216,15 @@ function renderGemBlock(indent) {
|
|
|
196
216
|
* from scroll mode) — the alt screen has no scrollback to recover it from.
|
|
197
217
|
*/
|
|
198
218
|
function buildBannerLines(info) {
|
|
199
|
-
|
|
200
|
-
const
|
|
201
|
-
|
|
219
|
+
// Push 3 empty strings to move the logo down by 2 extra rows from the top edge
|
|
220
|
+
const lines = ['', '', ''];
|
|
221
|
+
if (exports.GEM && exports.GEM.length > 0) {
|
|
222
|
+
const gemIndent = Math.floor((LOGO[0].length - exports.GEM[0].length) / 2);
|
|
223
|
+
lines.push(...gemBlockLines(gemIndent), '');
|
|
224
|
+
}
|
|
202
225
|
LOGO.forEach(row => {
|
|
203
|
-
|
|
204
|
-
lines.push(
|
|
226
|
+
// Add 2 spaces for left padding
|
|
227
|
+
lines.push(' ' + styleLogoRow(row));
|
|
205
228
|
});
|
|
206
229
|
lines.push('');
|
|
207
230
|
const meta = [
|
package/dist/cli/diamond.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diamond.js","sourceRoot":"","sources":["../../src/cli/diamond.ts"],"names":[],"mappings":";;;;;;AAwDA,4BAYC;AAGD,oCAYC;AAOD,0CAGC;
|
|
1
|
+
{"version":3,"file":"diamond.js","sourceRoot":"","sources":["../../src/cli/diamond.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/display.d.ts
CHANGED
package/dist/cli/display.js
CHANGED
|
@@ -15,6 +15,9 @@ function createTerminalDisplay() {
|
|
|
15
15
|
agentThinking() {
|
|
16
16
|
process.stdout.write(chalk_1.default.hex(diamond_js_1.FAINT_HEX)(' ◆ ') + chalk_1.default.hex(diamond_js_1.TEXT_DIM_HEX)('thinking…') + '\r');
|
|
17
17
|
},
|
|
18
|
+
stopThinking() {
|
|
19
|
+
// Terminal display doesn't use a spinner — nothing to clear.
|
|
20
|
+
},
|
|
18
21
|
streamText(text) {
|
|
19
22
|
if (!inStream) {
|
|
20
23
|
process.stdout.write('\n' + chalk_1.default.hex(diamond_js_1.TEXT_HEX)(''));
|