wispy-ai 0.4.2 → 0.4.6
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/ai/prompts.d.ts +1 -1
- package/dist/ai/prompts.d.ts.map +1 -1
- package/dist/ai/prompts.js +4 -1
- package/dist/ai/prompts.js.map +1 -1
- package/dist/cli/repl.d.ts +14 -8
- package/dist/cli/repl.d.ts.map +1 -1
- package/dist/cli/repl.js +101 -321
- package/dist/cli/repl.js.map +1 -1
- package/dist/cli/ui/banner.d.ts.map +1 -1
- package/dist/cli/ui/banner.js +14 -35
- package/dist/cli/ui/banner.js.map +1 -1
- package/dist/core/agent.d.ts +5 -0
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +33 -2
- package/dist/core/agent.js.map +1 -1
- package/package.json +1 -1
package/dist/ai/prompts.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { SessionType } from "../security/isolation.js";
|
|
2
|
-
export declare function buildSystemPrompt(soulDir: string, sessionType: SessionType, extraContext?: string): string;
|
|
2
|
+
export declare function buildSystemPrompt(soulDir: string, sessionType: SessionType, extraContext?: string, integrationContext?: string): string;
|
|
3
3
|
//# sourceMappingURL=prompts.d.ts.map
|
package/dist/ai/prompts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,MAAM,CA0CR"}
|
package/dist/ai/prompts.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readMD } from "../utils/file.js";
|
|
2
2
|
import { resolve } from "path";
|
|
3
3
|
import { getPermissions } from "../security/isolation.js";
|
|
4
|
-
export function buildSystemPrompt(soulDir, sessionType, extraContext) {
|
|
4
|
+
export function buildSystemPrompt(soulDir, sessionType, extraContext, integrationContext) {
|
|
5
5
|
const parts = [];
|
|
6
6
|
// Soul
|
|
7
7
|
const soul = readMD(resolve(soulDir, "SOUL.md"));
|
|
@@ -32,6 +32,9 @@ export function buildSystemPrompt(soulDir, sessionType, extraContext) {
|
|
|
32
32
|
if (memory)
|
|
33
33
|
parts.push(memory);
|
|
34
34
|
}
|
|
35
|
+
// Integration context (available tools/services)
|
|
36
|
+
if (integrationContext)
|
|
37
|
+
parts.push(integrationContext);
|
|
35
38
|
// Extra context
|
|
36
39
|
if (extraContext)
|
|
37
40
|
parts.push(extraContext);
|
package/dist/ai/prompts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,WAAwB,EACxB,YAAqB;
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/ai/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,WAAwB,EACxB,YAAqB,EACrB,kBAA2B;IAE3B,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,OAAO;IACP,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACjD,IAAI,IAAI;QAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3B,WAAW;IACX,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IACzD,IAAI,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEnC,kBAAkB;IAClB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IACrD,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE/B,QAAQ;IACR,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IACnD,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE7B,oCAAoC;IACpC,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC1C,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;QACjD,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,8BAA8B;IAC9B,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QACrD,IAAI,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,iDAAiD;IACjD,IAAI,kBAAkB;QAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAEvD,gBAAgB;IAChB,IAAI,YAAY;QAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAE3C,sBAAsB;IACtB,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,GAAG,CAAC,CAAC;IAE/C,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACnC,CAAC"}
|
package/dist/cli/repl.d.ts
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Wispy REPL —
|
|
2
|
+
* Wispy REPL — Clean CLI modeled exactly after Claude Code.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
4
|
+
* Layout:
|
|
5
|
+
* [cloud icon] Wispy v0.4.6
|
|
6
|
+
* Gemini 2.5 Flash
|
|
7
|
+
* C:\Users\...
|
|
8
|
+
*
|
|
9
|
+
* ─────────────────────────────────
|
|
10
|
+
* ❯ user input here
|
|
11
|
+
*
|
|
12
|
+
* ● Agent response here.
|
|
13
|
+
*
|
|
14
|
+
* ─────────────────────────────────
|
|
15
|
+
* ❯ _
|
|
16
|
+
* ? for shortcuts
|
|
11
17
|
*/
|
|
12
18
|
export interface ReplOpts {
|
|
13
19
|
rootDir: string;
|
package/dist/cli/repl.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAqBH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD,wBAAsB,SAAS,CAAC,IAAI,EAAE,QAAQ,iBA8K7C"}
|
package/dist/cli/repl.js
CHANGED
|
@@ -1,18 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Wispy REPL —
|
|
2
|
+
* Wispy REPL — Clean CLI modeled exactly after Claude Code.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
4
|
+
* Layout:
|
|
5
|
+
* [cloud icon] Wispy v0.4.6
|
|
6
|
+
* Gemini 2.5 Flash
|
|
7
|
+
* C:\Users\...
|
|
8
|
+
*
|
|
9
|
+
* ─────────────────────────────────
|
|
10
|
+
* ❯ user input here
|
|
11
|
+
*
|
|
12
|
+
* ● Agent response here.
|
|
13
|
+
*
|
|
14
|
+
* ─────────────────────────────────
|
|
15
|
+
* ❯ _
|
|
16
|
+
* ? for shortcuts
|
|
11
17
|
*/
|
|
18
|
+
import * as readline from "readline";
|
|
12
19
|
import { existsSync } from "fs";
|
|
13
20
|
import { join } from "path";
|
|
21
|
+
import chalk from "chalk";
|
|
14
22
|
import { showBanner } from "./ui/banner.js";
|
|
15
23
|
import { t } from "./ui/theme.js";
|
|
24
|
+
import { startSpinner, stopSpinner, updateSpinner } from "./ui/spinner.js";
|
|
16
25
|
import { formatToolCall } from "./ui/tool-display.js";
|
|
17
26
|
import { CliHistory } from "./history.js";
|
|
18
27
|
import { handleSlashCommand } from "./commands.js";
|
|
@@ -24,18 +33,13 @@ import { Agent } from "../core/agent.js";
|
|
|
24
33
|
import { runBoot } from "../gateway/boot.js";
|
|
25
34
|
import { logger } from "../infra/logger.js";
|
|
26
35
|
import { TokenManager } from "../token/estimator.js";
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
import { StatusBar } from "./tui/status-bar.js";
|
|
32
|
-
import { calculateLayout, onResize } from "./tui/layout.js";
|
|
33
|
-
import { showRecentsPanel } from "./tui/recents-panel.js";
|
|
34
|
-
import { browseHistory } from "./tui/history-browser.js";
|
|
36
|
+
function printSeparator() {
|
|
37
|
+
const width = process.stdout.columns || 80;
|
|
38
|
+
console.log(chalk.dim("─".repeat(width)));
|
|
39
|
+
}
|
|
35
40
|
export async function startRepl(opts) {
|
|
36
41
|
const { rootDir, runtimeDir, soulDir } = opts;
|
|
37
42
|
loadEnv(rootDir);
|
|
38
|
-
// First-run detection
|
|
39
43
|
const configPath = join(runtimeDir, "config.yaml");
|
|
40
44
|
if (!existsSync(configPath)) {
|
|
41
45
|
const { runSetupWizard } = await import("./setup/wizard.js");
|
|
@@ -63,355 +67,131 @@ export async function startRepl(opts) {
|
|
|
63
67
|
const agent = new Agent({ config, runtimeDir, soulDir });
|
|
64
68
|
const history = new CliHistory(runtimeDir);
|
|
65
69
|
const tokenManager = new TokenManager();
|
|
66
|
-
let currentSession = "
|
|
70
|
+
let currentSession = "cli-repl";
|
|
67
71
|
const cmdCtx = {
|
|
68
72
|
agent,
|
|
69
73
|
runtimeDir,
|
|
70
74
|
soulDir,
|
|
71
75
|
currentSession,
|
|
72
|
-
setSession: (key) => {
|
|
73
|
-
currentSession = key;
|
|
74
|
-
cmdCtx.currentSession = key;
|
|
75
|
-
statusBar.setState({ session: key });
|
|
76
|
-
renderChrome();
|
|
77
|
-
},
|
|
76
|
+
setSession: (key) => { currentSession = key; cmdCtx.currentSession = key; },
|
|
78
77
|
};
|
|
79
|
-
// ──
|
|
78
|
+
// ── Launch layout ──
|
|
80
79
|
showBanner();
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
80
|
+
printSeparator();
|
|
81
|
+
// ── Readline ──
|
|
82
|
+
const rl = readline.createInterface({
|
|
83
|
+
input: process.stdin,
|
|
84
|
+
output: process.stdout,
|
|
85
|
+
prompt: t.prompt,
|
|
86
|
+
historySize: 200,
|
|
87
|
+
});
|
|
88
|
+
const pastEntries = history.getAll();
|
|
89
|
+
for (const entry of pastEntries) {
|
|
90
|
+
rl.history?.unshift(entry);
|
|
86
91
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const keyHandler = new KeyHandler();
|
|
92
|
-
// Check memory status
|
|
93
|
-
const memoryDbPath = join(runtimeDir, "memory", "embeddings.db");
|
|
94
|
-
const memStatus = existsSync(memoryDbPath) ? "active" : "inactive";
|
|
95
|
-
statusBar.setState({ session: currentSession, memory: memStatus });
|
|
96
|
-
// History navigation state
|
|
97
|
-
let historyIndex = -1;
|
|
98
|
-
let savedInput = "";
|
|
99
|
-
const historyEntries = history.getAll();
|
|
100
|
-
// Is the agent currently responding?
|
|
101
|
-
let busy = false;
|
|
102
|
-
function renderChrome() {
|
|
103
|
-
screen.saveCursor();
|
|
104
|
-
statusBar.render();
|
|
105
|
-
inputBox.render();
|
|
106
|
-
screen.restoreCursor();
|
|
107
|
-
}
|
|
108
|
-
function moveToChatArea() {
|
|
109
|
-
screen.moveTo(layout.chatBottom, 1);
|
|
110
|
-
}
|
|
111
|
-
function writeChatLine(text) {
|
|
112
|
-
// Write to the scroll region — chat area scrolls naturally
|
|
113
|
-
screen.saveCursor();
|
|
114
|
-
moveToChatArea();
|
|
115
|
-
process.stdout.write(text);
|
|
116
|
-
screen.restoreCursor();
|
|
117
|
-
}
|
|
118
|
-
// ── Set up scroll region ─────────────────────────────────────────
|
|
119
|
-
screen.clear();
|
|
120
|
-
screen.scrollRegion(layout.chatTop, layout.chatBottom);
|
|
121
|
-
screen.moveTo(layout.chatTop, 1);
|
|
122
|
-
// Show a greeting in the chat area
|
|
123
|
-
console.log(t.brand(" Wispy") + t.dim(" is ready. Type a message or /help for commands.\n"));
|
|
124
|
-
renderChrome();
|
|
125
|
-
// ── Resize handler ───────────────────────────────────────────────
|
|
126
|
-
onResize((newLayout) => {
|
|
127
|
-
layout = newLayout;
|
|
128
|
-
inputBox.updateLayout(newLayout);
|
|
129
|
-
statusBar.updateLayout(newLayout);
|
|
130
|
-
screen.scrollRegion(layout.chatTop, layout.chatBottom);
|
|
131
|
-
renderChrome();
|
|
92
|
+
process.on("uncaughtException", (err) => {
|
|
93
|
+
stopSpinner();
|
|
94
|
+
console.error(chalk.red(`Fatal: ${err.message}`));
|
|
95
|
+
rl.prompt();
|
|
132
96
|
});
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
97
|
+
process.on("unhandledRejection", (err) => {
|
|
98
|
+
stopSpinner();
|
|
99
|
+
console.error(chalk.red(`Error: ${err instanceof Error ? err.message : String(err)}`));
|
|
100
|
+
rl.prompt();
|
|
101
|
+
});
|
|
102
|
+
rl.prompt();
|
|
103
|
+
rl.on("line", async (line) => {
|
|
104
|
+
const input = line.trim();
|
|
105
|
+
if (!input) {
|
|
106
|
+
rl.prompt();
|
|
136
107
|
return;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
//
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
console.log(t.user("You") + t.dim(": ") + text);
|
|
145
|
-
screen.restoreCursor();
|
|
146
|
-
// Slash commands
|
|
147
|
-
if (text.startsWith("/")) {
|
|
148
|
-
// Special handling for /prompts and /recents
|
|
149
|
-
if (text.trim() === "/prompts") {
|
|
150
|
-
keyHandler.stop();
|
|
151
|
-
const selected = await browseHistory(history, layout);
|
|
152
|
-
keyHandler.start();
|
|
153
|
-
if (selected) {
|
|
154
|
-
inputBox.setLine(selected);
|
|
155
|
-
}
|
|
156
|
-
renderChrome();
|
|
157
|
-
busy = false;
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
if (text.trim() === "/recents") {
|
|
161
|
-
keyHandler.stop();
|
|
162
|
-
const sessionKey = await showRecentsPanel(runtimeDir, config.agent.id);
|
|
163
|
-
keyHandler.start();
|
|
164
|
-
if (sessionKey) {
|
|
165
|
-
currentSession = sessionKey;
|
|
166
|
-
cmdCtx.currentSession = sessionKey;
|
|
167
|
-
statusBar.setState({ session: sessionKey });
|
|
168
|
-
}
|
|
169
|
-
renderChrome();
|
|
170
|
-
busy = false;
|
|
171
|
-
return;
|
|
108
|
+
}
|
|
109
|
+
rl.pause();
|
|
110
|
+
history.add(input);
|
|
111
|
+
// ? shortcut
|
|
112
|
+
if (input === "?") {
|
|
113
|
+
try {
|
|
114
|
+
await handleSlashCommand("/help", cmdCtx);
|
|
172
115
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
116
|
+
catch { }
|
|
117
|
+
rl.resume();
|
|
118
|
+
rl.prompt();
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
// Slash commands
|
|
122
|
+
if (input.startsWith("/")) {
|
|
177
123
|
try {
|
|
178
|
-
await handleSlashCommand(
|
|
124
|
+
await handleSlashCommand(input, cmdCtx);
|
|
179
125
|
}
|
|
180
126
|
catch (err) {
|
|
181
|
-
console.error(
|
|
127
|
+
console.error(chalk.red(`Command error: ${err instanceof Error ? err.message : String(err)}`));
|
|
182
128
|
}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
busy = false;
|
|
129
|
+
rl.resume();
|
|
130
|
+
rl.prompt();
|
|
186
131
|
return;
|
|
187
132
|
}
|
|
188
|
-
// ── Chat
|
|
133
|
+
// ── Chat ──
|
|
189
134
|
const thinkStart = Date.now();
|
|
190
|
-
|
|
191
|
-
// Show thinking indicator in status bar
|
|
192
|
-
statusBar.setState({ contextPercent: 0 });
|
|
193
|
-
renderChrome();
|
|
135
|
+
startSpinner("Thinking...");
|
|
194
136
|
try {
|
|
195
137
|
let firstText = true;
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
screen.moveTo(layout.chatBottom, 1);
|
|
199
|
-
// Print agent label
|
|
200
|
-
process.stdout.write(t.agent("Wispy") + t.dim(": "));
|
|
201
|
-
for await (const chunk of agent.chatStream(text, "cli-user", "cli", "main")) {
|
|
138
|
+
let outputChars = 0;
|
|
139
|
+
for await (const chunk of agent.chatStream(input, "cli-user", "cli", "main")) {
|
|
202
140
|
switch (chunk.type) {
|
|
203
|
-
case "thinking":
|
|
204
|
-
|
|
205
|
-
statusBar.setState({ contextPercent: Math.min(99, Math.round(outputTokenCount / 10)) });
|
|
206
|
-
screen.saveCursor();
|
|
207
|
-
statusBar.render();
|
|
208
|
-
screen.restoreCursor();
|
|
141
|
+
case "thinking":
|
|
142
|
+
updateSpinner(`Thinking... (${((Date.now() - thinkStart) / 1000).toFixed(1)}s)`);
|
|
209
143
|
break;
|
|
210
|
-
}
|
|
211
144
|
case "tool_call": {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
status: "pending",
|
|
216
|
-
};
|
|
217
|
-
process.stdout.write("\n" + formatToolCall(tc));
|
|
145
|
+
stopSpinner();
|
|
146
|
+
const tc = { name: chunk.content, args: {}, status: "pending" };
|
|
147
|
+
process.stdout.write(formatToolCall(tc) + "\n");
|
|
218
148
|
break;
|
|
219
149
|
}
|
|
220
150
|
case "tool_result": {
|
|
221
|
-
const tr = {
|
|
222
|
-
|
|
223
|
-
args: {},
|
|
224
|
-
status: "ok",
|
|
225
|
-
result: chunk.content.slice(0, 200),
|
|
226
|
-
};
|
|
227
|
-
process.stdout.write("\n" + formatToolCall(tr));
|
|
151
|
+
const tr = { name: "tool", args: {}, status: "ok", result: chunk.content.slice(0, 200) };
|
|
152
|
+
process.stdout.write(formatToolCall(tr) + "\n");
|
|
228
153
|
break;
|
|
229
154
|
}
|
|
230
155
|
case "text":
|
|
231
156
|
if (firstText) {
|
|
157
|
+
stopSpinner();
|
|
158
|
+
process.stdout.write("\n" + chalk.white.bold("● "));
|
|
232
159
|
firstText = false;
|
|
233
160
|
}
|
|
234
161
|
process.stdout.write(chunk.content);
|
|
235
|
-
|
|
236
|
-
outputTokenCount += Math.ceil(chunk.content.length / 4);
|
|
237
|
-
tokenManager.recordUsage("gemini-2.5-flash", 0, Math.ceil(chunk.content.length / 4));
|
|
238
|
-
const stats = tokenManager.getStats();
|
|
239
|
-
statusBar.setState({
|
|
240
|
-
tokens: stats.sessionTokens,
|
|
241
|
-
cost: stats.sessionCost,
|
|
242
|
-
});
|
|
243
|
-
screen.saveCursor();
|
|
244
|
-
statusBar.render();
|
|
245
|
-
screen.restoreCursor();
|
|
162
|
+
outputChars += chunk.content.length;
|
|
246
163
|
break;
|
|
247
164
|
case "done":
|
|
165
|
+
if (firstText)
|
|
166
|
+
stopSpinner();
|
|
248
167
|
break;
|
|
249
168
|
}
|
|
250
169
|
}
|
|
251
|
-
|
|
252
|
-
|
|
170
|
+
const outputTokens = Math.ceil(outputChars / 4);
|
|
171
|
+
const inputTokens = Math.ceil(input.length / 4) + 100;
|
|
172
|
+
tokenManager.recordUsage("gemini-2.5-flash", inputTokens, outputTokens);
|
|
173
|
+
console.log();
|
|
174
|
+
console.log();
|
|
175
|
+
printSeparator();
|
|
176
|
+
console.log(chalk.dim(" ? for shortcuts"));
|
|
253
177
|
}
|
|
254
178
|
catch (err) {
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
renderChrome();
|
|
259
|
-
busy = false;
|
|
260
|
-
}
|
|
261
|
-
// ── Key handler events ───────────────────────────────────────────
|
|
262
|
-
keyHandler.on("char", (ev) => {
|
|
263
|
-
if (busy)
|
|
264
|
-
return;
|
|
265
|
-
inputBox.insert(ev.sequence);
|
|
266
|
-
historyIndex = -1;
|
|
267
|
-
inputBox.render();
|
|
268
|
-
});
|
|
269
|
-
keyHandler.on("backspace", () => {
|
|
270
|
-
if (busy)
|
|
271
|
-
return;
|
|
272
|
-
inputBox.backspace();
|
|
273
|
-
inputBox.render();
|
|
274
|
-
});
|
|
275
|
-
keyHandler.on("delete", () => {
|
|
276
|
-
if (busy)
|
|
277
|
-
return;
|
|
278
|
-
inputBox.deleteChar();
|
|
279
|
-
inputBox.render();
|
|
280
|
-
});
|
|
281
|
-
keyHandler.on("left", () => {
|
|
282
|
-
if (busy)
|
|
283
|
-
return;
|
|
284
|
-
inputBox.moveCursorLeft();
|
|
285
|
-
inputBox.render();
|
|
286
|
-
});
|
|
287
|
-
keyHandler.on("right", () => {
|
|
288
|
-
if (busy)
|
|
289
|
-
return;
|
|
290
|
-
inputBox.moveCursorRight();
|
|
291
|
-
inputBox.render();
|
|
292
|
-
});
|
|
293
|
-
keyHandler.on("home", () => {
|
|
294
|
-
if (busy)
|
|
295
|
-
return;
|
|
296
|
-
inputBox.home();
|
|
297
|
-
inputBox.render();
|
|
298
|
-
});
|
|
299
|
-
keyHandler.on("end", () => {
|
|
300
|
-
if (busy)
|
|
301
|
-
return;
|
|
302
|
-
inputBox.end();
|
|
303
|
-
inputBox.render();
|
|
304
|
-
});
|
|
305
|
-
keyHandler.on("enter", () => {
|
|
306
|
-
if (busy)
|
|
307
|
-
return;
|
|
308
|
-
const text = inputBox.submit();
|
|
309
|
-
inputBox.render();
|
|
310
|
-
if (text.trim()) {
|
|
311
|
-
processInput(text);
|
|
312
|
-
}
|
|
313
|
-
});
|
|
314
|
-
keyHandler.on("double-esc", () => {
|
|
315
|
-
if (busy)
|
|
316
|
-
return;
|
|
317
|
-
const cleared = inputBox.clear();
|
|
318
|
-
if (cleared) {
|
|
319
|
-
screen.saveCursor();
|
|
320
|
-
screen.scrollRegion(layout.chatTop, layout.chatBottom);
|
|
321
|
-
screen.moveTo(layout.chatBottom, 1);
|
|
322
|
-
console.log(t.dim(" (input cleared)"));
|
|
323
|
-
screen.restoreCursor();
|
|
324
|
-
}
|
|
325
|
-
inputBox.render();
|
|
326
|
-
});
|
|
327
|
-
keyHandler.on("up", () => {
|
|
328
|
-
if (busy)
|
|
329
|
-
return;
|
|
330
|
-
if (historyIndex === -1) {
|
|
331
|
-
savedInput = inputBox.getBuffer();
|
|
332
|
-
}
|
|
333
|
-
if (historyIndex < historyEntries.length - 1) {
|
|
334
|
-
historyIndex++;
|
|
335
|
-
const entry = historyEntries[historyEntries.length - 1 - historyIndex];
|
|
336
|
-
if (entry)
|
|
337
|
-
inputBox.setLine(entry);
|
|
338
|
-
inputBox.render();
|
|
339
|
-
}
|
|
340
|
-
});
|
|
341
|
-
keyHandler.on("down", () => {
|
|
342
|
-
if (busy)
|
|
343
|
-
return;
|
|
344
|
-
if (historyIndex > 0) {
|
|
345
|
-
historyIndex--;
|
|
346
|
-
const entry = historyEntries[historyEntries.length - 1 - historyIndex];
|
|
347
|
-
if (entry)
|
|
348
|
-
inputBox.setLine(entry);
|
|
349
|
-
inputBox.render();
|
|
350
|
-
}
|
|
351
|
-
else if (historyIndex === 0) {
|
|
352
|
-
historyIndex = -1;
|
|
353
|
-
inputBox.setLine(savedInput);
|
|
354
|
-
inputBox.render();
|
|
355
|
-
}
|
|
356
|
-
});
|
|
357
|
-
keyHandler.on("ctrl-r", async () => {
|
|
358
|
-
if (busy)
|
|
359
|
-
return;
|
|
360
|
-
keyHandler.stop();
|
|
361
|
-
const selected = await browseHistory(history, layout);
|
|
362
|
-
keyHandler.start();
|
|
363
|
-
if (selected) {
|
|
364
|
-
inputBox.setLine(selected);
|
|
179
|
+
stopSpinner();
|
|
180
|
+
console.error(chalk.red(`\nError: ${err instanceof Error ? err.message : String(err)}`));
|
|
181
|
+
printSeparator();
|
|
365
182
|
}
|
|
366
|
-
|
|
183
|
+
rl.resume();
|
|
184
|
+
rl.prompt();
|
|
367
185
|
});
|
|
368
|
-
|
|
369
|
-
if (busy)
|
|
370
|
-
return;
|
|
371
|
-
const buf = inputBox.getBuffer();
|
|
372
|
-
if (buf.startsWith("/")) {
|
|
373
|
-
const partial = buf.slice(1).toLowerCase();
|
|
374
|
-
const { getCommands } = await import("./commands.js");
|
|
375
|
-
const cmds = getCommands();
|
|
376
|
-
const match = cmds.find((c) => c.name.startsWith(partial));
|
|
377
|
-
if (match) {
|
|
378
|
-
inputBox.setLine("/" + match.name + " ");
|
|
379
|
-
inputBox.render();
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
});
|
|
383
|
-
keyHandler.on("sigint", () => {
|
|
384
|
-
shutdown();
|
|
385
|
-
});
|
|
386
|
-
function shutdown() {
|
|
186
|
+
rl.on("close", () => {
|
|
387
187
|
history.save();
|
|
388
|
-
|
|
389
|
-
screen.resetScrollRegion();
|
|
390
|
-
screen.showCursor();
|
|
391
|
-
screen.moveTo(layout.height, 1);
|
|
392
|
-
console.log(t.dim("\nGoodbye!\n"));
|
|
188
|
+
console.log(chalk.dim("\nGoodbye!\n"));
|
|
393
189
|
process.exit(0);
|
|
394
|
-
}
|
|
395
|
-
// Prevent crashes
|
|
396
|
-
process.on("uncaughtException", (err) => {
|
|
397
|
-
screen.saveCursor();
|
|
398
|
-
screen.scrollRegion(layout.chatTop, layout.chatBottom);
|
|
399
|
-
screen.moveTo(layout.chatBottom, 1);
|
|
400
|
-
console.error(t.err(`Fatal: ${err.message}`));
|
|
401
|
-
screen.restoreCursor();
|
|
402
|
-
busy = false;
|
|
403
|
-
renderChrome();
|
|
404
190
|
});
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
console.error(t.err(`Error: ${err instanceof Error ? err.message : String(err)}`));
|
|
410
|
-
screen.restoreCursor();
|
|
411
|
-
busy = false;
|
|
412
|
-
renderChrome();
|
|
191
|
+
rl.on("SIGINT", () => {
|
|
192
|
+
history.save();
|
|
193
|
+
console.log(chalk.dim("\nGoodbye!\n"));
|
|
194
|
+
process.exit(0);
|
|
413
195
|
});
|
|
414
|
-
// ── Start ────────────────────────────────────────────────────────
|
|
415
|
-
keyHandler.start();
|
|
416
196
|
}
|
|
417
197
|
//# sourceMappingURL=repl.js.map
|
package/dist/cli/repl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/cli/ui/banner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/cli/ui/banner.ts"],"names":[],"mappings":"AAcA,wBAAgB,UAAU,CAAC,SAAS,SAAqB,GAAG,IAAI,CAS/D;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAMxC;AAED,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC"}
|
package/dist/cli/ui/banner.js
CHANGED
|
@@ -2,51 +2,30 @@ import chalk from "chalk";
|
|
|
2
2
|
const sky = chalk.rgb(77, 209, 249);
|
|
3
3
|
const skyBold = chalk.rgb(77, 209, 249).bold;
|
|
4
4
|
const dark = chalk.rgb(30, 30, 30);
|
|
5
|
-
// ──
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
`${sky("▒▒▒▒▒")}${dark("▒▒")}${sky("▒▒▒")}${dark("▒▒")}${sky("▒▒▒▒▒▒▒▒▒▒▒▒▒▒")}`,
|
|
12
|
-
`${sky("▒▒▒▒▒")}${dark("▒▒")}${sky("▒▒▒")}${dark("▒▒")}${sky("▒▒▒▒▒▒▒▒▒▒▒▒▒▒")}`,
|
|
13
|
-
` ${sky("▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒")}`,
|
|
14
|
-
` ${sky("▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒")}`,
|
|
5
|
+
// ── Tiny cloud icon (3 lines, ~7 chars wide) ──
|
|
6
|
+
// Matches Claude Code's robot icon scale exactly
|
|
7
|
+
const ICON = [
|
|
8
|
+
` ${sky("█████")}`,
|
|
9
|
+
`${sky("██")}${dark("█")}${sky("█")}${dark("█")}${sky("██")}`,
|
|
10
|
+
`${sky("███████")}`,
|
|
15
11
|
];
|
|
16
12
|
export function showBanner(modelName = "Gemini 2.5 Flash") {
|
|
17
13
|
const cwd = process.cwd();
|
|
18
|
-
const version = "v0.4.
|
|
19
|
-
const infoLines = [
|
|
20
|
-
"",
|
|
21
|
-
` ${skyBold("Wispy")} ${chalk.dim(version)}`,
|
|
22
|
-
` ${chalk.dim(modelName)}`,
|
|
23
|
-
` ${chalk.dim(cwd)}`,
|
|
24
|
-
"",
|
|
25
|
-
"",
|
|
26
|
-
];
|
|
14
|
+
const version = "v0.4.6";
|
|
27
15
|
console.log();
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
16
|
+
console.log(` ${ICON[0]} ${skyBold("Wispy")} ${chalk.dim(version)}`);
|
|
17
|
+
console.log(` ${ICON[1]} ${chalk.dim(modelName)}`);
|
|
18
|
+
console.log(` ${ICON[2]} ${chalk.dim(cwd)}`);
|
|
31
19
|
console.log();
|
|
32
20
|
}
|
|
33
|
-
// ── Onboarding Banner ─────────────────────────
|
|
34
21
|
export function showOnboardBanner() {
|
|
35
|
-
const infoLines = [
|
|
36
|
-
"",
|
|
37
|
-
` ${skyBold("Welcome to Wispy")}`,
|
|
38
|
-
` ${chalk.dim("Your autonomous AI agent")}`,
|
|
39
|
-
` ${chalk.dim("Powered by Gemini. Let's get you set up.")}`,
|
|
40
|
-
"",
|
|
41
|
-
"",
|
|
42
|
-
];
|
|
43
22
|
console.log();
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
23
|
+
console.log(` ${ICON[0]} ${skyBold("Welcome to Wispy")}`);
|
|
24
|
+
console.log(` ${ICON[1]} ${chalk.dim("Your autonomous AI agent")}`);
|
|
25
|
+
console.log(` ${ICON[2]} ${chalk.dim("Powered by Gemini. Let's get you set up.")}`);
|
|
47
26
|
console.log();
|
|
48
27
|
}
|
|
49
28
|
export function getScaledLogo() {
|
|
50
|
-
return
|
|
29
|
+
return ICON;
|
|
51
30
|
}
|
|
52
31
|
//# sourceMappingURL=banner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../../../src/cli/ui/banner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;AAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAEnC,
|
|
1
|
+
{"version":3,"file":"banner.js","sourceRoot":"","sources":["../../../src/cli/ui/banner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC;AAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAEnC,iDAAiD;AACjD,iDAAiD;AACjD,MAAM,IAAI,GAAG;IACX,KAAK,GAAG,CAAC,OAAO,CAAC,EAAE;IACnB,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE;IAC7D,GAAG,GAAG,CAAC,SAAS,CAAC,EAAE;CACpB,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,SAAS,GAAG,kBAAkB;IACvD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC;IAEzB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,EAAE,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/core/agent.d.ts
CHANGED
|
@@ -26,6 +26,11 @@ export declare class Agent {
|
|
|
26
26
|
*/
|
|
27
27
|
setIntegrationRegistry(registry: IntegrationRegistry): void;
|
|
28
28
|
getIntegrationRegistry(): IntegrationRegistry | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Build a context string describing available integrations so the model
|
|
31
|
+
* knows what services/tools it can use (like Meltbot/Clawdbot awareness).
|
|
32
|
+
*/
|
|
33
|
+
private buildIntegrationContext;
|
|
29
34
|
chat(userMessage: string, peerId: string, channel: string, sessionType?: SessionType): Promise<AgentResponse>;
|
|
30
35
|
chatStream(userMessage: string, peerId: string, channel: string, sessionType?: SessionType): AsyncGenerator<{
|
|
31
36
|
type: string;
|
package/dist/core/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAiB,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED,qBAAa,KAAK;IAChB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAAC,CAAsB;gBAEtC,GAAG,EAAE,YAAY;IAW7B;;;OAGG;IACH,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAW3D,sBAAsB,IAAI,mBAAmB,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAiB,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED,qBAAa,KAAK;IAChB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAAC,CAAsB;gBAEtC,GAAG,EAAE,YAAY;IAW7B;;;OAGG;IACH,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAW3D,sBAAsB,IAAI,mBAAmB,GAAG,SAAS;IAIzD;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAiCzB,IAAI,CACR,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,WAAoB,GAChC,OAAO,CAAC,aAAa,CAAC;IAyHlB,UAAU,CACf,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,WAAoB,GAChC,cAAc,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAqDpD,gBAAgB,IAAI,aAAa;IAIjC,eAAe,IAAI,YAAY;CAGhC"}
|
package/dist/core/agent.js
CHANGED
|
@@ -31,6 +31,35 @@ export class Agent {
|
|
|
31
31
|
getIntegrationRegistry() {
|
|
32
32
|
return this.integrationRegistry;
|
|
33
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Build a context string describing available integrations so the model
|
|
36
|
+
* knows what services/tools it can use (like Meltbot/Clawdbot awareness).
|
|
37
|
+
*/
|
|
38
|
+
buildIntegrationContext() {
|
|
39
|
+
if (!this.integrationRegistry || this.integrationRegistry.size === 0)
|
|
40
|
+
return undefined;
|
|
41
|
+
const status = this.integrationRegistry.getStatus();
|
|
42
|
+
const enabled = status.filter((s) => s.status === "active");
|
|
43
|
+
const available = status.filter((s) => s.status !== "active");
|
|
44
|
+
const lines = ["## Available Integrations\n"];
|
|
45
|
+
if (enabled.length > 0) {
|
|
46
|
+
lines.push("**Enabled (ready to use):**");
|
|
47
|
+
for (const s of enabled) {
|
|
48
|
+
lines.push(`- ${s.name} (${s.category}) — ${s.tools} tool(s)`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (available.length > 0) {
|
|
52
|
+
lines.push("\n**Available (not yet enabled):**");
|
|
53
|
+
for (const s of available) {
|
|
54
|
+
const note = s.status === "auth-required" ? " [needs auth]" : "";
|
|
55
|
+
lines.push(`- ${s.name} (${s.category})${note}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
lines.push("\nYou can use enabled integrations directly via their tools. " +
|
|
59
|
+
"If a user asks about a disabled integration, let them know it exists " +
|
|
60
|
+
"and can be enabled with `/integrations`.");
|
|
61
|
+
return lines.join("\n");
|
|
62
|
+
}
|
|
34
63
|
async chat(userMessage, peerId, channel, sessionType = "main") {
|
|
35
64
|
const { config, runtimeDir, soulDir } = this.ctx;
|
|
36
65
|
const agentId = config.agent.id;
|
|
@@ -52,7 +81,8 @@ export class Agent {
|
|
|
52
81
|
}));
|
|
53
82
|
const thinkingLevel = inferThinkingLevel(userMessage);
|
|
54
83
|
const route = routeTask("reasoning", config);
|
|
55
|
-
const
|
|
84
|
+
const integrationCtx = this.buildIntegrationContext();
|
|
85
|
+
const systemPrompt = buildSystemPrompt(soulDir, sessionType, undefined, integrationCtx);
|
|
56
86
|
log.info("Chat [%s] model=%s thinking=%s", session.sessionKey.slice(0, 30), route.model, thinkingLevel);
|
|
57
87
|
// Agentic loop — generate, execute tools, feed results back, repeat
|
|
58
88
|
let allToolResults = [];
|
|
@@ -139,7 +169,8 @@ export class Agent {
|
|
|
139
169
|
}));
|
|
140
170
|
const thinkingLevel = inferThinkingLevel(userMessage);
|
|
141
171
|
const route = routeTask("reasoning", config);
|
|
142
|
-
const
|
|
172
|
+
const integrationCtx = this.buildIntegrationContext();
|
|
173
|
+
const systemPrompt = buildSystemPrompt(soulDir, sessionType, undefined, integrationCtx);
|
|
143
174
|
let fullText = "";
|
|
144
175
|
for await (const chunk of generateStream({
|
|
145
176
|
model: route.model,
|
package/dist/core/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
|