aurix-ai 2.3.1 → 2.4.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/dist/agent/AgentLoop.d.ts +1 -0
- package/dist/agent/AgentLoop.d.ts.map +1 -1
- package/dist/agent/AgentLoop.js +6 -0
- package/dist/agent/AgentLoop.js.map +1 -1
- package/dist/agent/Checkpoint.d.ts +32 -0
- package/dist/agent/Checkpoint.d.ts.map +1 -0
- package/dist/agent/Checkpoint.js +200 -0
- package/dist/agent/Checkpoint.js.map +1 -0
- package/dist/cli/App.d.ts.map +1 -1
- package/dist/cli/App.js +65 -3
- package/dist/cli/App.js.map +1 -1
- package/dist/cli/ChatArea.d.ts +1 -0
- package/dist/cli/ChatArea.d.ts.map +1 -1
- package/dist/cli/ChatArea.js.map +1 -1
- package/dist/cli/InputBox.d.ts +2 -1
- package/dist/cli/InputBox.d.ts.map +1 -1
- package/dist/cli/InputBox.js +14 -2
- package/dist/cli/InputBox.js.map +1 -1
- package/dist/cli/RewindPicker.d.ts +11 -0
- package/dist/cli/RewindPicker.d.ts.map +1 -0
- package/dist/cli/RewindPicker.js +89 -0
- package/dist/cli/RewindPicker.js.map +1 -0
- package/dist/tools/FileEdit.d.ts.map +1 -1
- package/dist/tools/FileEdit.js +3 -0
- package/dist/tools/FileEdit.js.map +1 -1
- package/dist/tools/FileOps.d.ts.map +1 -1
- package/dist/tools/FileOps.js +2 -0
- package/dist/tools/FileOps.js.map +1 -1
- package/package.json +1 -1
|
@@ -46,6 +46,7 @@ export declare class AgentLoop {
|
|
|
46
46
|
getResearchMode(): ResearchDepth;
|
|
47
47
|
runResearch(query: string): AsyncGenerator<AgentEvent>;
|
|
48
48
|
getMessages(): Message[];
|
|
49
|
+
setMessages(msgs: Message[]): void;
|
|
49
50
|
clearHistory(): void;
|
|
50
51
|
setProvider(config: Partial<AurixConfig>): void;
|
|
51
52
|
getModel(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentLoop.d.ts","sourceRoot":"","sources":["../../src/agent/AgentLoop.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAY,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAe,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAoEzD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IAC/F,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAK;gBAErC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY;IAYvD,gBAAgB,IAAI,OAAO;IAQ3B,YAAY,IAAI,OAAO;IAIvB,SAAS,IAAI,IAAI;IAIjB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjC,eAAe;IAIf,aAAa,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAanJ,SAAS,IAAI,WAAW;IAIjB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC;YAid/D,aAAa;IAyB5B,eAAe,IAAI,aAAa;IAIzB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC;IAgC7D,WAAW,IAAI,OAAO,EAAE;IAIxB,YAAY,IAAI,IAAI;IAKpB,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAW/C,QAAQ,IAAI,MAAM;IAIlB,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,YAAY;IAI/B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAQtC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;CAcxC"}
|
|
1
|
+
{"version":3,"file":"AgentLoop.d.ts","sourceRoot":"","sources":["../../src/agent/AgentLoop.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAY,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAe,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAoEzD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IAC/F,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,gBAAgB,CAAC,CAAmB;IAC5C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAK;gBAErC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY;IAYvD,gBAAgB,IAAI,OAAO;IAQ3B,YAAY,IAAI,OAAO;IAIvB,SAAS,IAAI,IAAI;IAIjB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjC,eAAe;IAIf,aAAa,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAanJ,SAAS,IAAI,WAAW;IAIjB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC;YAid/D,aAAa;IAyB5B,eAAe,IAAI,aAAa;IAIzB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC;IAgC7D,WAAW,IAAI,OAAO,EAAE;IAIxB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI;IAOlC,YAAY,IAAI,IAAI;IAKpB,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAW/C,QAAQ,IAAI,MAAM;IAIlB,eAAe,IAAI,MAAM;IAIzB,eAAe,IAAI,YAAY;IAI/B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAQtC,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;CAcxC"}
|
package/dist/agent/AgentLoop.js
CHANGED
|
@@ -611,6 +611,12 @@ export class AgentLoop {
|
|
|
611
611
|
getMessages() {
|
|
612
612
|
return [...this.messages];
|
|
613
613
|
}
|
|
614
|
+
setMessages(msgs) {
|
|
615
|
+
const system = this.messages[0];
|
|
616
|
+
this.messages = system && system.role === 'system' && (msgs.length === 0 || msgs[0].role !== 'system')
|
|
617
|
+
? [system, ...msgs]
|
|
618
|
+
: [...msgs];
|
|
619
|
+
}
|
|
614
620
|
clearHistory() {
|
|
615
621
|
const system = this.messages[0];
|
|
616
622
|
this.messages = [system];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentLoop.js","sourceRoot":"","sources":["../../src/agent/AgentLoop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentLoop.js","sourceRoot":"","sources":["../../src/agent/AgentLoop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export interface FileBackup {
|
|
2
|
+
backupFileName: string | null;
|
|
3
|
+
version: number;
|
|
4
|
+
}
|
|
5
|
+
export interface Snapshot {
|
|
6
|
+
checkpointId: string;
|
|
7
|
+
fileBackups: Record<string, FileBackup>;
|
|
8
|
+
timestamp: number;
|
|
9
|
+
}
|
|
10
|
+
export declare class CheckpointEngine {
|
|
11
|
+
private sessionId;
|
|
12
|
+
private dir;
|
|
13
|
+
private state;
|
|
14
|
+
constructor(sessionId: string);
|
|
15
|
+
private statePath;
|
|
16
|
+
private load;
|
|
17
|
+
private save;
|
|
18
|
+
private ensureDir;
|
|
19
|
+
private backupName;
|
|
20
|
+
private backupPath;
|
|
21
|
+
trackBeforeEdit(filePath: string): void;
|
|
22
|
+
private nullVersions;
|
|
23
|
+
private differs;
|
|
24
|
+
commit(checkpointId: string): void;
|
|
25
|
+
hasSnapshot(checkpointId: string): boolean;
|
|
26
|
+
private findSnapshot;
|
|
27
|
+
changedSince(checkpointId: string): number;
|
|
28
|
+
restore(checkpointId: string): string[];
|
|
29
|
+
}
|
|
30
|
+
export declare function getCheckpointEngine(): CheckpointEngine | null;
|
|
31
|
+
export declare function initCheckpointEngine(sessionId: string): CheckpointEngine;
|
|
32
|
+
//# sourceMappingURL=Checkpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkpoint.d.ts","sourceRoot":"","sources":["../../src/agent/Checkpoint.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,UAAU;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAA0E;gBAE3E,SAAS,EAAE,MAAM;IAM7B,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,IAAI;IAcZ,OAAO,CAAC,IAAI;IAeZ,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,UAAU;IAKlB,OAAO,CAAC,UAAU;IAMlB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgCvC,OAAO,CAAC,YAAY,CAAqB;IAGzC,OAAO,CAAC,OAAO;IAef,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAelC,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAI1C,OAAO,CAAC,YAAY;IAQpB,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAiB1C,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;CAqBxC;AAGD,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,IAAI,CAE7D;AACD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAGxE"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import * as os from 'os';
|
|
4
|
+
import { createHash } from 'crypto';
|
|
5
|
+
// Lightweight file-history engine for the rewind feature. A "checkpoint" is
|
|
6
|
+
// keyed by a user-message id. We track every file BEFORE it is edited (so the
|
|
7
|
+
// pre-edit bytes are captured), then a snapshot records which backup version
|
|
8
|
+
// represents each tracked file at that point. Restore replays a snapshot to
|
|
9
|
+
// disk. Backups are content-addressed copies — no git, no temp worktrees.
|
|
10
|
+
const HISTORY_ROOT = path.join(os.homedir(), '.aurix', 'file-history');
|
|
11
|
+
const MAX_SNAPSHOTS = 100;
|
|
12
|
+
export class CheckpointEngine {
|
|
13
|
+
sessionId;
|
|
14
|
+
dir;
|
|
15
|
+
state = { snapshots: [], trackedFiles: new Set(), versions: {} };
|
|
16
|
+
constructor(sessionId) {
|
|
17
|
+
this.sessionId = sessionId;
|
|
18
|
+
this.dir = path.join(HISTORY_ROOT, sessionId);
|
|
19
|
+
this.load();
|
|
20
|
+
}
|
|
21
|
+
statePath() {
|
|
22
|
+
return path.join(this.dir, 'snapshots.json');
|
|
23
|
+
}
|
|
24
|
+
load() {
|
|
25
|
+
try {
|
|
26
|
+
const p = this.statePath();
|
|
27
|
+
if (!fs.existsSync(p))
|
|
28
|
+
return;
|
|
29
|
+
const raw = JSON.parse(fs.readFileSync(p, 'utf-8'));
|
|
30
|
+
this.state.snapshots = raw.snapshots || [];
|
|
31
|
+
this.state.trackedFiles = new Set(raw.trackedFiles || []);
|
|
32
|
+
this.state.versions = raw.versions || {};
|
|
33
|
+
this.nullVersions = new Set(raw.nullVersions || []);
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
// corrupt/missing state must never break startup
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
save() {
|
|
40
|
+
try {
|
|
41
|
+
this.ensureDir();
|
|
42
|
+
const data = {
|
|
43
|
+
snapshots: this.state.snapshots,
|
|
44
|
+
trackedFiles: Array.from(this.state.trackedFiles),
|
|
45
|
+
versions: this.state.versions,
|
|
46
|
+
nullVersions: Array.from(this.nullVersions),
|
|
47
|
+
};
|
|
48
|
+
fs.writeFileSync(this.statePath(), JSON.stringify(data));
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
// persistence is best-effort
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
ensureDir() {
|
|
55
|
+
if (!fs.existsSync(this.dir))
|
|
56
|
+
fs.mkdirSync(this.dir, { recursive: true });
|
|
57
|
+
}
|
|
58
|
+
backupName(filePath, version) {
|
|
59
|
+
const hash = createHash('sha256').update(filePath).digest('hex').slice(0, 16);
|
|
60
|
+
return `${hash}@v${version}`;
|
|
61
|
+
}
|
|
62
|
+
backupPath(name) {
|
|
63
|
+
return path.join(this.dir, name);
|
|
64
|
+
}
|
|
65
|
+
// Capture a file's CURRENT bytes before it is edited. Safe to call repeatedly;
|
|
66
|
+
// only creates a new backup version when the file actually changed.
|
|
67
|
+
trackBeforeEdit(filePath) {
|
|
68
|
+
try {
|
|
69
|
+
const abs = path.resolve(filePath);
|
|
70
|
+
this.state.trackedFiles.add(abs);
|
|
71
|
+
const exists = fs.existsSync(abs);
|
|
72
|
+
const curVersion = this.state.versions[abs] || 0;
|
|
73
|
+
// If we already have a backup and the file is unchanged since it, skip.
|
|
74
|
+
if (curVersion > 0) {
|
|
75
|
+
const prevName = this.backupName(abs, curVersion);
|
|
76
|
+
if (!this.differs(abs, prevName))
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const nextVersion = curVersion + 1;
|
|
80
|
+
this.ensureDir();
|
|
81
|
+
if (!exists) {
|
|
82
|
+
// record a "did not exist" marker by leaving no file; version maps to null
|
|
83
|
+
this.state.versions[abs] = nextVersion;
|
|
84
|
+
this.nullVersions.add(`${abs}@v${nextVersion}`);
|
|
85
|
+
this.save();
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
const name = this.backupName(abs, nextVersion);
|
|
89
|
+
fs.copyFileSync(abs, this.backupPath(name));
|
|
90
|
+
try {
|
|
91
|
+
fs.chmodSync(this.backupPath(name), fs.statSync(abs).mode);
|
|
92
|
+
}
|
|
93
|
+
catch { }
|
|
94
|
+
this.state.versions[abs] = nextVersion;
|
|
95
|
+
this.save();
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
// tracking must never break a tool call
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
nullVersions = new Set();
|
|
102
|
+
// true if the on-disk file differs from a stored backup (or backup missing).
|
|
103
|
+
differs(filePath, backupName) {
|
|
104
|
+
try {
|
|
105
|
+
const bp = this.backupPath(backupName);
|
|
106
|
+
if (!fs.existsSync(bp))
|
|
107
|
+
return true;
|
|
108
|
+
if (!fs.existsSync(filePath))
|
|
109
|
+
return true;
|
|
110
|
+
const a = fs.readFileSync(filePath);
|
|
111
|
+
const b = fs.readFileSync(bp);
|
|
112
|
+
return !a.equals(b);
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// Commit a snapshot for the given checkpoint id, recording the current backup
|
|
119
|
+
// version of every tracked file.
|
|
120
|
+
commit(checkpointId) {
|
|
121
|
+
const fileBackups = {};
|
|
122
|
+
for (const f of this.state.trackedFiles) {
|
|
123
|
+
const version = this.state.versions[f] || 0;
|
|
124
|
+
const isNull = this.nullVersions.has(`${f}@v${version}`);
|
|
125
|
+
fileBackups[f] = {
|
|
126
|
+
version,
|
|
127
|
+
backupFileName: isNull || version === 0 ? null : this.backupName(f, version),
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
this.state.snapshots.push({ checkpointId, fileBackups, timestamp: Date.now() });
|
|
131
|
+
if (this.state.snapshots.length > MAX_SNAPSHOTS)
|
|
132
|
+
this.state.snapshots.shift();
|
|
133
|
+
this.save();
|
|
134
|
+
}
|
|
135
|
+
hasSnapshot(checkpointId) {
|
|
136
|
+
return this.state.snapshots.some(s => s.checkpointId === checkpointId);
|
|
137
|
+
}
|
|
138
|
+
findSnapshot(checkpointId) {
|
|
139
|
+
for (let i = this.state.snapshots.length - 1; i >= 0; i--) {
|
|
140
|
+
if (this.state.snapshots[i].checkpointId === checkpointId)
|
|
141
|
+
return this.state.snapshots[i];
|
|
142
|
+
}
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
// Count of files that changed between a checkpoint and now (for UI hints).
|
|
146
|
+
changedSince(checkpointId) {
|
|
147
|
+
const snap = this.findSnapshot(checkpointId);
|
|
148
|
+
if (!snap)
|
|
149
|
+
return 0;
|
|
150
|
+
let n = 0;
|
|
151
|
+
for (const f of Object.keys(snap.fileBackups)) {
|
|
152
|
+
const b = snap.fileBackups[f];
|
|
153
|
+
if (b.backupFileName === null) {
|
|
154
|
+
if (fs.existsSync(f))
|
|
155
|
+
n++;
|
|
156
|
+
}
|
|
157
|
+
else if (this.differs(f, b.backupFileName)) {
|
|
158
|
+
n++;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return n;
|
|
162
|
+
}
|
|
163
|
+
// Restore disk state to the chosen checkpoint. Pure side-effect; snapshots are
|
|
164
|
+
// not popped, so the user can rewind repeatedly. Returns changed file paths.
|
|
165
|
+
restore(checkpointId) {
|
|
166
|
+
const snap = this.findSnapshot(checkpointId);
|
|
167
|
+
if (!snap)
|
|
168
|
+
return [];
|
|
169
|
+
const changed = [];
|
|
170
|
+
for (const f of Object.keys(snap.fileBackups)) {
|
|
171
|
+
const b = snap.fileBackups[f];
|
|
172
|
+
try {
|
|
173
|
+
if (b.backupFileName === null) {
|
|
174
|
+
if (fs.existsSync(f)) {
|
|
175
|
+
fs.unlinkSync(f);
|
|
176
|
+
changed.push(f);
|
|
177
|
+
}
|
|
178
|
+
continue;
|
|
179
|
+
}
|
|
180
|
+
if (this.differs(f, b.backupFileName)) {
|
|
181
|
+
fs.copyFileSync(this.backupPath(b.backupFileName), f);
|
|
182
|
+
changed.push(f);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
// skip files that can't be restored
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
return changed;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
let engine = null;
|
|
193
|
+
export function getCheckpointEngine() {
|
|
194
|
+
return engine;
|
|
195
|
+
}
|
|
196
|
+
export function initCheckpointEngine(sessionId) {
|
|
197
|
+
engine = new CheckpointEngine(sessionId);
|
|
198
|
+
return engine;
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=Checkpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Checkpoint.js","sourceRoot":"","sources":["../../src/agent/Checkpoint.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/cli/App.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/cli/App.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAiBzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQzD,UAAU,QAAQ;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ,mBAyhD3D"}
|
package/dist/cli/App.js
CHANGED
|
@@ -11,6 +11,7 @@ import { StatusBar } from './StatusBar.js';
|
|
|
11
11
|
import { PermissionPrompt } from './PermissionPrompt.js';
|
|
12
12
|
import { LoginModal } from './LoginModal.js';
|
|
13
13
|
import { ConnectModal } from './ConnectModal.js';
|
|
14
|
+
import { RewindPicker } from './RewindPicker.js';
|
|
14
15
|
import { WhatsAppModal } from './WhatsAppModal.js';
|
|
15
16
|
import { theme, switchTheme, ALL_THEME_NAMES, setBorderStyle } from './theme.js';
|
|
16
17
|
import { createSlashCommands, findCommand, formatCommandHelp, parseSlash } from './commands.js';
|
|
@@ -42,6 +43,7 @@ export function App({ config, registry, resumeId }) {
|
|
|
42
43
|
const [permissionMode, setPermissionMode] = useState(registry.getPermissionMode() === 'bypass' ? 'bypass' : 'ask');
|
|
43
44
|
const agentRef = React.useRef(null);
|
|
44
45
|
const [toast, setToast] = useState(null);
|
|
46
|
+
const [showRewind, setShowRewind] = useState(false);
|
|
45
47
|
const toastTimer = React.useRef(null);
|
|
46
48
|
const pendingImagesRef = React.useRef([]);
|
|
47
49
|
const showToast = useCallback((msg) => {
|
|
@@ -80,6 +82,11 @@ export function App({ config, registry, resumeId }) {
|
|
|
80
82
|
}, [renderer]);
|
|
81
83
|
if (!agentRef.current) {
|
|
82
84
|
agentRef.current = new AgentLoop(config, registry);
|
|
85
|
+
try {
|
|
86
|
+
const { initCheckpointEngine } = require('../agent/Checkpoint.js');
|
|
87
|
+
initCheckpointEngine(resumeId || `sess_${Date.now()}`);
|
|
88
|
+
}
|
|
89
|
+
catch { }
|
|
83
90
|
}
|
|
84
91
|
const resumedRef = React.useRef(false);
|
|
85
92
|
const resumeSessionIdRef = React.useRef(resumeId);
|
|
@@ -191,6 +198,42 @@ export function App({ config, registry, resumeId }) {
|
|
|
191
198
|
return;
|
|
192
199
|
}
|
|
193
200
|
});
|
|
201
|
+
const handleRewind = useCallback(async (checkpointId, mode) => {
|
|
202
|
+
setShowRewind(false);
|
|
203
|
+
let restoredText = '';
|
|
204
|
+
// 1. Restore conversation: truncate messages back to the chosen checkpoint.
|
|
205
|
+
if (mode === 'both' || mode === 'conversation') {
|
|
206
|
+
setMessages(prev => {
|
|
207
|
+
const idx = prev.findIndex(m => m.checkpointId === checkpointId);
|
|
208
|
+
if (idx < 0)
|
|
209
|
+
return prev;
|
|
210
|
+
restoredText = prev[idx].content;
|
|
211
|
+
return prev.slice(0, idx);
|
|
212
|
+
});
|
|
213
|
+
try {
|
|
214
|
+
const trimmed = agent.getMessages();
|
|
215
|
+
const cut = trimmed.findIndex((m) => m.content && m.content.includes(restoredText));
|
|
216
|
+
if (cut > 0)
|
|
217
|
+
agent.setMessages?.(trimmed.slice(0, cut));
|
|
218
|
+
}
|
|
219
|
+
catch { }
|
|
220
|
+
}
|
|
221
|
+
// 2. Restore code: replay the file snapshot to disk.
|
|
222
|
+
let fileNote = '';
|
|
223
|
+
if (mode === 'both' || mode === 'code') {
|
|
224
|
+
try {
|
|
225
|
+
const { getCheckpointEngine } = await import('../agent/Checkpoint.js');
|
|
226
|
+
const changed = getCheckpointEngine()?.restore(checkpointId) || [];
|
|
227
|
+
fileNote = changed.length ? ` Restored ${changed.length} file(s).` : ' No file changes to restore.';
|
|
228
|
+
}
|
|
229
|
+
catch { }
|
|
230
|
+
}
|
|
231
|
+
setMessages(prev => [...prev, {
|
|
232
|
+
role: 'system',
|
|
233
|
+
content: `⟲ Rewound to an earlier point.${fileNote}`,
|
|
234
|
+
timestamp: new Date(),
|
|
235
|
+
}]);
|
|
236
|
+
}, [agent]);
|
|
194
237
|
const handleSubmit = useCallback(async (text) => {
|
|
195
238
|
if (isProcessing)
|
|
196
239
|
return;
|
|
@@ -1183,11 +1226,18 @@ Supervisor auto-routes to the best specialist(s) for each task.`);
|
|
|
1183
1226
|
}]);
|
|
1184
1227
|
return;
|
|
1185
1228
|
}
|
|
1229
|
+
const checkpointId = `cp_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
|
|
1186
1230
|
setMessages(prev => [...prev, {
|
|
1187
1231
|
role: 'user',
|
|
1188
1232
|
content: outboundText,
|
|
1189
1233
|
timestamp: new Date(),
|
|
1234
|
+
checkpointId,
|
|
1190
1235
|
}]);
|
|
1236
|
+
try {
|
|
1237
|
+
const { getCheckpointEngine } = await import('../agent/Checkpoint.js');
|
|
1238
|
+
getCheckpointEngine()?.commit(checkpointId);
|
|
1239
|
+
}
|
|
1240
|
+
catch { }
|
|
1191
1241
|
if (showBanner)
|
|
1192
1242
|
setShowBanner(false);
|
|
1193
1243
|
setScrollOffset(0);
|
|
@@ -1288,7 +1338,13 @@ Supervisor auto-routes to the best specialist(s) for each task.`);
|
|
|
1288
1338
|
renderer.clearSelection?.();
|
|
1289
1339
|
}
|
|
1290
1340
|
catch { }
|
|
1291
|
-
}, children: [_jsx("box", { flexGrow: 1, minHeight: 0, flexDirection: "column", children: isHome ? (_jsxs("box", { flexGrow: 1, alignItems: "center", paddingLeft: 2, paddingRight: 2, flexDirection: "column", children: [_jsx("box", { flexGrow: 1, minHeight: 0 }), _jsx("box", { flexShrink: 0, flexDirection: "column", alignItems: "center", children: _jsx("text", { fg: theme.primary, children: logoLines().join('\n') }) }), _jsx("box", { height: 1, minHeight: 0, flexShrink: 1 }), _jsx("box", { width: "100%", maxWidth: promptW, paddingTop: 1, flexShrink: 0, children: _jsx(InputBox, { onSubmit: handleSubmit, disabled: false, commands: commands, home: true, model: agent.getModel(), contextPct: ctxStats.estimatedPct, cwd: process.cwd(), mode: mode, onModeCycle: cycleMode, onExit: doExit
|
|
1341
|
+
}, children: [_jsx("box", { flexGrow: 1, minHeight: 0, flexDirection: "column", children: isHome ? (_jsxs("box", { flexGrow: 1, alignItems: "center", paddingLeft: 2, paddingRight: 2, flexDirection: "column", children: [_jsx("box", { flexGrow: 1, minHeight: 0 }), _jsx("box", { flexShrink: 0, flexDirection: "column", alignItems: "center", children: _jsx("text", { fg: theme.primary, children: logoLines().join('\n') }) }), _jsx("box", { height: 1, minHeight: 0, flexShrink: 1 }), _jsx("box", { width: "100%", maxWidth: promptW, paddingTop: 1, flexShrink: 0, children: _jsx(InputBox, { onSubmit: handleSubmit, disabled: false, commands: commands, home: true, model: agent.getModel(), contextPct: ctxStats.estimatedPct, cwd: process.cwd(), mode: mode, onModeCycle: cycleMode, onExit: doExit, onRewind: () => {
|
|
1342
|
+
if (messages.some(m => m.role === 'user' && m.checkpointId)) {
|
|
1343
|
+
setShowRewind(true);
|
|
1344
|
+
return true;
|
|
1345
|
+
}
|
|
1346
|
+
return false;
|
|
1347
|
+
} }) }), _jsx("box", { flexGrow: 1, minHeight: 0 }), _jsxs("box", { width: "100%", flexShrink: 0, justifyContent: "space-between", paddingX: 2, children: [_jsx("text", { fg: theme.textMuted, children: process.cwd().replace(/^\/root\//, '~/') }), _jsxs("text", { fg: theme.textMuted, children: ["v", require('../../package.json').version] })] })] })) : (_jsxs("box", { flexDirection: "row", flexGrow: 1, minHeight: 0, children: [_jsxs("box", { flexDirection: "column", flexGrow: 1, flexShrink: 1, minHeight: 0, children: [_jsxs("box", { flexDirection: "column", flexGrow: 1, flexShrink: 1, minHeight: 0, children: [_jsx(ChatArea, { messages: messages, isProcessing: isProcessing, activeTool: activeTool, scrollOffset: scrollOffset }), permissionPrompt && (_jsx(PermissionPrompt, { request: permissionPrompt.request, onResolve: (reply) => {
|
|
1292
1348
|
const resolve = permissionPrompt.resolve;
|
|
1293
1349
|
setPermissionPrompt(null);
|
|
1294
1350
|
resolve(reply);
|
|
@@ -1315,7 +1371,7 @@ Supervisor auto-routes to the best specialist(s) for each task.`);
|
|
|
1315
1371
|
content: `Login updated.\n Base URL: ${newBaseUrl || '(unchanged)'}\n API Key: ${newApiKey ? newApiKey.slice(0, 8) + '...' : '(skipped)'}\n Model: ${newModel || agent.getModel()}`,
|
|
1316
1372
|
timestamp: new Date(),
|
|
1317
1373
|
}]);
|
|
1318
|
-
}, onCancel: () => setShowLogin(false) })), connectModal && (_jsx(ConnectModal, { platform: connectModal, onSubmit: async (token) => {
|
|
1374
|
+
}, onCancel: () => setShowLogin(false) })), showRewind && (_jsx(RewindPicker, { messages: messages, onRestore: handleRewind, onCancel: () => setShowRewind(false) })), connectModal && (_jsx(ConnectModal, { platform: connectModal, onSubmit: async (token) => {
|
|
1319
1375
|
const platform = connectModal;
|
|
1320
1376
|
setConnectModal(null);
|
|
1321
1377
|
try {
|
|
@@ -1378,6 +1434,12 @@ Supervisor auto-routes to the best specialist(s) for each task.`);
|
|
|
1378
1434
|
timestamp: new Date(),
|
|
1379
1435
|
}]);
|
|
1380
1436
|
}
|
|
1381
|
-
} })), _jsx(InputBox, { onSubmit: handleSubmit, disabled: isProcessing || !!permissionPrompt || showLogin || !!connectModal || showWhatsApp, commands: commands, model: agent.getModel(), contextPct: ctxStats.estimatedPct, cwd: process.cwd(), mode: mode, onModeCycle: cycleMode, onExit: doExit
|
|
1437
|
+
} })), _jsx(InputBox, { onSubmit: handleSubmit, disabled: isProcessing || !!permissionPrompt || showLogin || !!connectModal || showWhatsApp, commands: commands, model: agent.getModel(), contextPct: ctxStats.estimatedPct, cwd: process.cwd(), mode: mode, onModeCycle: cycleMode, onExit: doExit, onRewind: () => {
|
|
1438
|
+
if (messages.some(m => m.role === 'user' && m.checkpointId)) {
|
|
1439
|
+
setShowRewind(true);
|
|
1440
|
+
return true;
|
|
1441
|
+
}
|
|
1442
|
+
return false;
|
|
1443
|
+
} })] }), _jsx("box", { flexShrink: 0, children: _jsx(StatusBar, { model: agent.getModel(), provider: agent.getProviderName(), researchMode: researchMode, cwd: process.cwd() }) })] }), _jsxs("box", { flexDirection: "column", width: 28, backgroundColor: theme.bgPanel, border: ["left"], borderColor: theme.border, paddingX: 1, paddingY: 1, flexShrink: 0, children: [_jsxs("box", { flexDirection: "column", children: [_jsx("text", { fg: theme.textMuted, attributes: TextAttributes.BOLD, children: "context" }), _jsxs("box", { marginTop: 1, children: [_jsx("text", { fg: barColor, children: barStr }), _jsxs("text", { fg: theme.textMuted, children: [' ', tokenStats.pct, "%"] })] }), _jsx("box", { children: _jsxs("text", { fg: theme.textMuted, children: [fmtTok(tokenStats.total), " tokens"] }) })] }), _jsxs("box", { flexDirection: "column", marginTop: 1, children: [_jsx("text", { fg: theme.textMuted, attributes: TextAttributes.BOLD, children: "tokens" }), _jsxs("box", { marginTop: 1, children: [_jsx("text", { fg: theme.secondary, children: "\u2191 " }), _jsx("text", { fg: theme.text, children: fmtTok(tokenStats.input) })] }), _jsxs("box", { children: [_jsx("text", { fg: theme.primary, children: "\u2193 " }), _jsx("text", { fg: theme.text, children: fmtTok(tokenStats.output) })] })] }), _jsxs("box", { flexDirection: "column", marginTop: 1, children: [_jsx("text", { fg: theme.textMuted, attributes: TextAttributes.BOLD, children: "model" }), _jsx("box", { marginTop: 1, children: _jsx("text", { fg: theme.text, children: agent.getModel() }) })] }), _jsxs("box", { flexDirection: "column", marginTop: 1, children: [_jsx("text", { fg: theme.textMuted, attributes: TextAttributes.BOLD, children: "info" }), _jsxs("box", { marginTop: 1, children: [_jsx("text", { fg: theme.textMuted, children: "provider " }), _jsx("text", { fg: theme.text, children: agent.getProviderName() })] }), _jsxs("box", { children: [_jsx("text", { fg: theme.textMuted, children: "depth " }), _jsx("text", { fg: researchMode === 'ultra' || researchMode === 'max' ? theme.accent : theme.text, children: researchMode })] }), _jsxs("box", { children: [_jsx("text", { fg: theme.textMuted, children: "messages " }), _jsx("text", { fg: theme.text, children: ctxStats.messageCount })] }), _jsxs("box", { children: [_jsx("text", { fg: theme.textMuted, children: "tools " }), _jsx("text", { fg: theme.text, children: toolCount })] })] })] })] })) }), toast && (_jsx("box", { position: "absolute", bottom: 2, left: Math.max(0, Math.floor((termWidth - toast.length - 4) / 2)), zIndex: 100, children: _jsx("box", { backgroundColor: theme.bgElement, paddingX: 2, paddingY: 0, border: ["top", "bottom", "left", "right"], borderColor: theme.border, children: _jsx("text", { fg: theme.ok, children: toast }) }) }))] }));
|
|
1382
1444
|
}
|
|
1383
1445
|
//# sourceMappingURL=App.js.map
|