balchemy 0.1.15 → 0.1.17

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.
Files changed (51) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +156 -32
  3. package/dist/agent-store.d.ts +2 -0
  4. package/dist/agent-store.d.ts.map +1 -1
  5. package/dist/agent-store.js +10 -0
  6. package/dist/agent-store.js.map +1 -1
  7. package/dist/behavior-rules.util.d.ts +8 -0
  8. package/dist/behavior-rules.util.d.ts.map +1 -0
  9. package/dist/behavior-rules.util.js +17 -0
  10. package/dist/behavior-rules.util.js.map +1 -0
  11. package/dist/index.js +11 -7
  12. package/dist/index.js.map +1 -1
  13. package/dist/tui/AgentBridge.d.ts +3 -0
  14. package/dist/tui/AgentBridge.d.ts.map +1 -1
  15. package/dist/tui/AgentBridge.js +87 -25
  16. package/dist/tui/AgentBridge.js.map +1 -1
  17. package/dist/tui/App.d.ts.map +1 -1
  18. package/dist/tui/App.js +23 -29
  19. package/dist/tui/App.js.map +1 -1
  20. package/dist/tui/ChatAgent.d.ts.map +1 -1
  21. package/dist/tui/ChatAgent.js +43 -23
  22. package/dist/tui/ChatAgent.js.map +1 -1
  23. package/dist/tui/ChatPanel.d.ts +3 -1
  24. package/dist/tui/ChatPanel.d.ts.map +1 -1
  25. package/dist/tui/ChatPanel.js +4 -5
  26. package/dist/tui/ChatPanel.js.map +1 -1
  27. package/dist/tui/StatusPanel.js +1 -1
  28. package/dist/tui/StatusPanel.js.map +1 -1
  29. package/dist/tui/session-sync.d.ts +18 -0
  30. package/dist/tui/session-sync.d.ts.map +1 -0
  31. package/dist/tui/session-sync.js +34 -0
  32. package/dist/tui/session-sync.js.map +1 -0
  33. package/dist/tui/setup-guidance.d.ts +1 -0
  34. package/dist/tui/setup-guidance.d.ts.map +1 -1
  35. package/dist/tui/setup-guidance.js +15 -5
  36. package/dist/tui/setup-guidance.js.map +1 -1
  37. package/dist/tui/start.d.ts.map +1 -1
  38. package/dist/tui/start.js +6 -0
  39. package/dist/tui/start.js.map +1 -1
  40. package/dist/tui/terminal-session.d.ts +8 -0
  41. package/dist/tui/terminal-session.d.ts.map +1 -0
  42. package/dist/tui/terminal-session.js +13 -0
  43. package/dist/tui/terminal-session.js.map +1 -0
  44. package/dist/tui/types.d.ts +2 -0
  45. package/dist/tui/types.d.ts.map +1 -1
  46. package/dist/wizard.d.ts +2 -4
  47. package/dist/wizard.d.ts.map +1 -1
  48. package/dist/wizard.js +49 -169
  49. package/dist/wizard.js.map +1 -1
  50. package/package.json +3 -3
  51. package/templates/Dockerfile +3 -3
@@ -17,6 +17,12 @@ const KNOWN_BASE_URLS = [
17
17
  "https://api.x.ai/v1",
18
18
  "https://openrouter.ai/api/v1",
19
19
  ];
20
+ function isDefaultOpenAiBaseUrl(baseUrl) {
21
+ return baseUrl === "https://api.openai.com/v1";
22
+ }
23
+ function isOpenAiPlatformApiKey(apiKey) {
24
+ return apiKey.startsWith("sk-");
25
+ }
20
26
  // ── ChatAgent ─────────────────────────────────────────────────────────────────
21
27
  export class ChatAgent {
22
28
  config;
@@ -65,9 +71,14 @@ export class ChatAgent {
65
71
  return this.enqueueChat(() => this.runChat(userMessage, onToolCall, confirmTrade));
66
72
  }
67
73
  enqueueChat(run) {
68
- const next = this.chatQueue.then(run, run);
69
- this.chatQueue = next.then(() => undefined, () => undefined);
70
- return next;
74
+ const previous = this.chatQueue;
75
+ let release;
76
+ this.chatQueue = new Promise((resolve) => {
77
+ release = resolve;
78
+ });
79
+ return previous
80
+ .then(run, run)
81
+ .finally(() => release?.());
71
82
  }
72
83
  async runChat(userMessage, onToolCall, confirmTrade) {
73
84
  this.history.push({ role: "user", content: userMessage });
@@ -138,6 +149,9 @@ export class ChatAgent {
138
149
  }
139
150
  async callOpenAi() {
140
151
  const baseUrl = (this.config.llmBaseUrl ?? "https://api.openai.com/v1").replace(/\/+$/, "");
152
+ if (isDefaultOpenAiBaseUrl(baseUrl) && !isOpenAiPlatformApiKey(this.config.llmApiKey)) {
153
+ throw new Error("OpenAI ChatGPT subscription login is not a Platform API key. Run `balchemy init`, choose OpenAI API Key, and paste a key from platform.openai.com/api-keys.");
154
+ }
141
155
  const controller = new AbortController();
142
156
  const timer = setTimeout(() => controller.abort(), this.config.llmTimeoutMs ?? 30_000);
143
157
  try {
@@ -287,35 +301,40 @@ You have access to MCP tools via tool calling. Always call tools when you need t
287
301
 
288
302
  ## SETUP FLOW
289
303
 
290
- When setup is incomplete (check with setup_agent action="get_status"), follow these steps IN ORDER. Do NOT skip steps. Ask the user questions between steps.
304
+ When setup is incomplete, first call setup_agent with action="get_status". Then guide the user in chat, one question at a time. Do NOT run a separate terminal wizard and do NOT skip steps.
291
305
 
292
306
  ### Step 1: Bind developer wallet
293
- - Ask the user: "What is your EVM wallet address? This will be your recovery wallet."
294
- - Wait for their answer. They must give you a 0x... address.
307
+ - Ask for their Base/EVM 0x developer wallet. Explain this is the recovery/Hub/withdrawal wallet; Solana/Base trading wallets are created separately in the next step.
308
+ - Ask them to paste the same 0x address again only if you need confirmation.
295
309
  - Call: setup_agent { action: "bind_developer_wallet", walletAddress: "<their address>", walletAddressConfirm: "<their address>" }
296
- - Tell them their master key from the response this is critical, they must save it.
310
+ - Tell them their master key from the response. Say clearly that it is shown only once and must be saved.
297
311
 
298
- ### Step 2: Create trading wallets
299
- - Tell the user you're creating their trading wallets.
300
- - Call: setup_agent { action: "create_wallet", chain: "solana" }
301
- - Call: setup_agent { action: "create_wallet", chain: "base" }
302
- - Show them both wallet addresses clearly.
303
- - Tell them: "Fund your Solana wallet with at least 0.05 SOL to start trading."
312
+ ### Step 2: Choose trading networks and create wallets
313
+ - Ask: "Which networks should this agent trade on: Solana, Base (EVM), or both?"
314
+ - If they choose Solana, call: setup_agent { action: "create_wallet", chain: "solana" }
315
+ - If they choose Base/EVM, call: setup_agent { action: "create_wallet", chain: "base" }
316
+ - If they choose both, call both tool actions sequentially and show both addresses.
317
+ - Funding guidance: Solana needs SOL in the Solana wallet; Base needs ETH in the Base wallet for gas and tokens.
304
318
 
305
319
  ### Step 3: Configure slippage
306
- - Ask: "What slippage tolerance do you want? Default is 2% (200 basis points). Memecoin trading usually needs 3-5%."
307
- - Wait for their answer. Use their preference.
308
- - Call: setup_agent { action: "configure_slippage", slippageBps: <their choice or 200> }
320
+ - Ask for slippage in percent or basis points. Explain: 1% = 100 bps, 3% = 300 bps, 5% = 500 bps.
321
+ - If the user answers a plain number like "5" while discussing percent/slippage, treat it as 5% = 500 bps unless they explicitly say "5 bps".
322
+ - Call: setup_agent { action: "configure_slippage", slippageBps: <converted bps> }
309
323
 
310
- ### Step 4: Configure trading strategy
311
- - Ask: "Describe your trading strategy in natural language. For example: 'Trade new PumpFun launches with max 0.01 SOL per trade, stop loss at 20%, take profit at 100%. Max 1 position at a time.'"
312
- - Wait for their answer. This is the most important step.
313
- - Call: setup_agent { action: "configure_autonomous", shadowMode: false, naturalLanguageRules: "<their exact words>" }
324
+ ### Step 4: Configure hard limits and strategy
325
+ - Ask for max per-trade limits for the selected networks: max SOL per trade for Solana and/or max USD per trade for Base/EVM.
326
+ - Ask for the natural-language strategy, including entry filters, stop loss, take profit, max concurrent positions and any tokens/categories to avoid.
327
+ - Repeat the final strategy back and ask for confirmation before configuring.
328
+ - Call: setup_agent { action: "configure_autonomous", shadowMode: false, naturalLanguageRules: "<their exact words>", maxTradeSol: <if provided>, maxTradeUsd: <if provided> }
314
329
  - NEVER set shadowMode to true. All trading is LIVE.
315
- - Confirm back to them: "Your strategy is configured. Here's what I understood: [summary]"
316
330
 
317
- ### Step 5: Done
318
- - Tell them setup is complete. Show a summary: wallets, strategy, slippage.
331
+ ### Step 5: Configure event monitoring
332
+ - Based on the selected networks and strategy, ask whether to create monitoring subscriptions now.
333
+ - For Solana memecoin/new launch strategies, call create_subscription with type="new_token_launch", chain="solana", filter platform="pumpfun" unless the user asks otherwise.
334
+ - For Base/EVM strategies, prefer price/volume subscriptions supported by the tool list and ask the user which assets or filters to monitor.
335
+
336
+ ### Step 6: Done
337
+ - Tell them setup is complete. Show a summary: selected networks, wallet addresses, slippage, hard limits, strategy and subscriptions.
319
338
  - Tell them you're now listening for events and ready to trade.
320
339
 
321
340
  ## IMPORTANT RULES
@@ -324,6 +343,7 @@ When setup is incomplete (check with setup_agent action="get_status"), follow th
324
343
  - Always show wallet addresses and master key to the user.
325
344
  - Ask questions and wait for answers — don't rush through setup.
326
345
  - When the user tells you their strategy, repeat it back to confirm before configuring.
346
+ - Never assume both chains. Ask Solana/Base/both, then create only the selected chain wallets.
327
347
 
328
348
  ## TRADING BEHAVIOR (after setup)
329
349
  - Explain every decision: what token you found, why it matches their strategy, what you're doing.
@@ -1 +1 @@
1
- {"version":3,"file":"ChatAgent.js","sourceRoot":"","sources":["../../src/tui/ChatAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatAgent.js","sourceRoot":"","sources":["../../src/tui/ChatAgent.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,10 @@ interface ChatPanelProps {
4
4
  messages: ChatMessage[];
5
5
  onSend: (text: string) => void | Promise<void>;
6
6
  inputActive: boolean;
7
+ hideInput?: boolean;
8
+ pageSize?: number;
7
9
  inputPlaceholder?: string;
8
10
  }
9
- export declare function ChatPanel({ messages, onSend, inputActive, inputPlaceholder, }: ChatPanelProps): React.ReactElement;
11
+ export declare function ChatPanel({ messages, onSend, inputActive, hideInput, pageSize, inputPlaceholder, }: ChatPanelProps): React.ReactElement;
10
12
  export {};
11
13
  //# sourceMappingURL=ChatPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatPanel.d.ts","sourceRoot":"","sources":["../../src/tui/ChatPanel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAGxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAgI9C,UAAU,cAAc;IACtB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,MAAM,EACN,WAAW,EACX,gBAAgB,GACjB,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CA2FrC"}
1
+ {"version":3,"file":"ChatPanel.d.ts","sourceRoot":"","sources":["../../src/tui/ChatPanel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAGxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA+H9C,UAAU,cAAc;IACtB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,MAAM,EACN,WAAW,EACX,SAAiB,EACjB,QAAa,EACb,gBAAgB,GACjB,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CA4FrC"}
@@ -61,9 +61,8 @@ function MessageLine({ msg }) {
61
61
  }
62
62
  }
63
63
  // ── ChatPanel ────────────────────────────────────────────────────────────────
64
- const PAGE_SIZE = 30;
65
64
  const SCROLL_STEP = 5;
66
- export function ChatPanel({ messages, onSend, inputActive, inputPlaceholder, }) {
65
+ export function ChatPanel({ messages, onSend, inputActive, hideInput = false, pageSize = 30, inputPlaceholder, }) {
67
66
  const [inputKey, setInputKey] = useState(0);
68
67
  const [scrollOffset, setScrollOffset] = useState(0);
69
68
  const prevCount = useRef(messages.length);
@@ -81,7 +80,7 @@ export function ChatPanel({ messages, onSend, inputActive, inputPlaceholder, })
81
80
  // PgUp / PgDn scroll
82
81
  useInput((_input, key) => {
83
82
  if (key.pageUp) {
84
- setScrollOffset((prev) => Math.min(prev + SCROLL_STEP, Math.max(0, messages.length - PAGE_SIZE)));
83
+ setScrollOffset((prev) => Math.min(prev + SCROLL_STEP, Math.max(0, messages.length - pageSize)));
85
84
  return;
86
85
  }
87
86
  if (key.pageDown) {
@@ -92,7 +91,7 @@ export function ChatPanel({ messages, onSend, inputActive, inputPlaceholder, })
92
91
  // Calculate visible window
93
92
  const total = messages.length;
94
93
  const end = total - scrollOffset;
95
- const start = Math.max(0, end - PAGE_SIZE);
94
+ const start = Math.max(0, end - pageSize);
96
95
  const visibleMessages = messages.slice(start, Math.max(end, 0));
97
96
  const hasOlder = start > 0;
98
97
  const isAtBottom = scrollOffset === 0;
@@ -103,6 +102,6 @@ export function ChatPanel({ messages, onSend, inputActive, inputPlaceholder, })
103
102
  await onSend(value.trim());
104
103
  }
105
104
  }, [onSend]);
106
- return (_jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [hasOlder && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: ["\u2191", " ", start, " earlier items \u00B7 PgUp scrolls history"] }) })), _jsxs(Box, { flexDirection: "column", flexGrow: 1, overflowY: "hidden", paddingX: 1, justifyContent: "flex-end", children: [visibleMessages.length === 0 && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: "white", bold: true, children: "No activity yet" }), _jsx(Text, { dimColor: true, children: "Agent replies, live decisions and tool traces will appear here." })] })), visibleMessages.map((msg) => (_jsx(MessageLine, { msg: msg }, msg.id)))] }), !isAtBottom && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: ["\u2193", " ", scrollOffset, " newer items \u00B7 PgDn jumps back down"] }) })), _jsx(Box, { paddingX: 1, paddingY: 0, children: _jsxs(Box, { borderStyle: "round", borderColor: inputActive ? "cyan" : "gray", paddingX: 1, flexGrow: 1, children: [_jsx(Text, { color: inputActive ? "cyan" : "gray", bold: true, children: "Prompt" }), _jsx(Text, { dimColor: true, children: " " }), inputActive ? (_jsx(TextInput, { placeholder: inputPlaceholder ?? "Ask, adjust rules, or inspect the session...", onSubmit: handleSubmit }, inputKey)) : (_jsx(Text, { dimColor: true, children: "Starting agent session..." }))] }) })] }));
105
+ return (_jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [hasOlder && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: ["\u2191", " ", start, " earlier items \u00B7 PgUp scrolls history"] }) })), _jsxs(Box, { flexDirection: "column", flexGrow: 1, overflowY: "hidden", paddingX: 1, justifyContent: "flex-end", children: [visibleMessages.length === 0 && (_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { color: "white", bold: true, children: "No activity yet" }), _jsx(Text, { dimColor: true, children: "Agent replies, live decisions and tool traces will appear here." })] })), visibleMessages.map((msg) => (_jsx(MessageLine, { msg: msg }, msg.id)))] }), !isAtBottom && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { dimColor: true, children: ["\u2193", " ", scrollOffset, " newer items \u00B7 PgDn jumps back down"] }) })), !hideInput && (_jsx(Box, { paddingX: 1, paddingY: 0, children: _jsxs(Box, { borderStyle: "round", borderColor: inputActive ? "cyan" : "gray", paddingX: 1, flexGrow: 1, children: [_jsx(Text, { color: inputActive ? "cyan" : "gray", bold: true, children: "Prompt" }), _jsx(Text, { dimColor: true, children: " " }), inputActive ? (_jsx(TextInput, { placeholder: inputPlaceholder ?? "Ask, adjust rules, or inspect the session...", onSubmit: handleSubmit }, inputKey)) : (_jsx(Text, { dimColor: true, children: "Starting agent session..." }))] }) }))] }));
107
106
  }
108
107
  //# sourceMappingURL=ChatPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatPanel.js","sourceRoot":"","sources":["../../src/tui/ChatPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatPanel.js","sourceRoot":"","sources":["../../src/tui/ChatPanel.tsx"],"names":[],"mappings":"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"}
@@ -36,6 +36,6 @@ export function StatusPanel({ status, width = 30, compact = false, }) {
36
36
  const spendWidth = compact ? 12 : 16;
37
37
  const isLowBalance = status.balanceSol < 0.01;
38
38
  const sessionBadge = getSessionBadge(status);
39
- return (_jsxs(Box, { flexDirection: "column", width: compact ? undefined : width, borderStyle: "round", borderColor: "gray", paddingX: 1, paddingY: 0, children: [_jsx(SectionTitle, { title: "Control", subtitle: "health, balances and live limits" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { children: _jsx(Text, { color: sessionBadge.tone === "live" ? "green" : sessionBadge.tone === "danger" ? "red" : sessionBadge.tone === "brand" ? "cyan" : "yellow", bold: true, children: sessionBadge.label }) }), _jsx(Text, { dimColor: true, children: status.status }), status.provider && (_jsxs(Text, { dimColor: true, children: [status.provider, " / ", truncateMiddle(status.model ?? "default", compact ? 10 : 13, 4)] }))] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Balance" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsxs(Text, { color: "green", bold: true, children: [status.balanceSol.toFixed(4), " SOL"] }), _jsxs(Text, { dimColor: true, children: ["$", status.balanceUsd.toFixed(2), " USD"] }), isLowBalance && _jsx(Text, { color: "yellow", children: "Low balance for live execution" })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Wallets" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [status.wallets.map((wallet) => (_jsxs(Box, { children: [_jsx(Text, { color: wallet.chain === "solana" ? "cyan" : "yellow", bold: true, children: wallet.chain === "solana" ? "SOL" : "BASE" }), _jsxs(Text, { dimColor: true, children: [" ", truncateMiddle(wallet.address, compact ? 8 : 10, 5)] })] }, wallet.chain))), status.wallets.length === 0 && _jsx(Text, { dimColor: true, children: "No wallets connected yet" })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Activity" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(StatRow, { label: "Events", value: String(status.eventsReceived), valueColor: "cyan" }), _jsx(StatRow, { label: "Decisions", value: String(status.decisionsExecuted) }), _jsx(StatRow, { label: "Trades", value: String(status.tradesExecuted), valueColor: "green" }), _jsx(StatRow, { label: "Uptime", value: formatUptime(status.uptime) })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Positions" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [status.activeTrades.length === 0 && _jsx(Text, { dimColor: true, children: "No live positions" }), status.activeTrades.slice(0, 3).map((trade, index) => (_jsxs(Box, { children: [_jsx(Text, { color: trade.action === "buy" ? "green" : "red", bold: true, children: trade.action === "buy" ? "BUY" : "SELL" }), _jsxs(Text, { dimColor: true, children: [" ", truncateMiddle(trade.token, compact ? 6 : 7, 3), " ", trade.amount] })] }, `${trade.token}-${index}`))), status.activeTrades.length > 3 && (_jsxs(Text, { dimColor: true, children: ["+", status.activeTrades.length - 3, " more positions"] }))] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "LLM Spend" }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: "cyan", children: meter(status.llmCostToday, status.maxDailyLlmCost, spendWidth) }), _jsxs(Text, { dimColor: true, children: ["$", status.llmCostToday.toFixed(2), " used of $", status.maxDailyLlmCost.toFixed(2)] }), _jsx(Text, { dimColor: true, children: "Balance refresh runs every 60s" })] })] }));
39
+ return (_jsxs(Box, { flexDirection: "column", width: compact ? undefined : width, borderStyle: "round", borderColor: "gray", paddingX: 1, paddingY: 0, children: [_jsx(SectionTitle, { title: "Control", subtitle: "health, balances and live limits" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { children: _jsx(Text, { color: sessionBadge.tone === "live" ? "green" : sessionBadge.tone === "danger" ? "red" : sessionBadge.tone === "brand" ? "cyan" : "yellow", bold: true, children: sessionBadge.label }) }), _jsx(Text, { dimColor: true, children: status.status }), status.provider && (_jsxs(Text, { dimColor: true, children: [status.provider, " / ", truncateMiddle(status.model ?? "default", compact ? 10 : 13, 4)] }))] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Balance" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsxs(Text, { color: "green", bold: true, children: [status.balanceSol.toFixed(4), " SOL"] }), _jsx(Text, { dimColor: true, children: `$${status.balanceUsd.toFixed(2)} USD` }), isLowBalance && _jsx(Text, { color: "yellow", children: "Low balance for live execution" })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Wallets" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [status.wallets.map((wallet) => (_jsxs(Box, { children: [_jsx(Text, { color: wallet.chain === "solana" ? "cyan" : "yellow", bold: true, children: wallet.chain === "solana" ? "SOL" : "BASE" }), _jsxs(Text, { dimColor: true, children: [" ", truncateMiddle(wallet.address, compact ? 8 : 10, 5)] })] }, wallet.chain))), status.wallets.length === 0 && _jsx(Text, { dimColor: true, children: "No wallets connected yet" })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Activity" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(StatRow, { label: "Events", value: String(status.eventsReceived), valueColor: "cyan" }), _jsx(StatRow, { label: "Decisions", value: String(status.decisionsExecuted) }), _jsx(StatRow, { label: "Trades", value: String(status.tradesExecuted), valueColor: "green" }), _jsx(StatRow, { label: "Uptime", value: formatUptime(status.uptime) })] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "Positions" }), _jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [status.activeTrades.length === 0 && _jsx(Text, { dimColor: true, children: "No live positions" }), status.activeTrades.slice(0, 3).map((trade, index) => (_jsxs(Box, { children: [_jsx(Text, { color: trade.action === "buy" ? "green" : "red", bold: true, children: trade.action === "buy" ? "BUY" : "SELL" }), _jsxs(Text, { dimColor: true, children: [" ", truncateMiddle(trade.token, compact ? 6 : 7, 3), " ", trade.amount] })] }, `${trade.token}-${index}`))), status.activeTrades.length > 3 && (_jsxs(Text, { dimColor: true, children: ["+", status.activeTrades.length - 3, " more positions"] }))] }), _jsx(Divider, { width: dividerWidth }), _jsx(SectionTitle, { title: "LLM Spend" }), _jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: "cyan", children: meter(status.llmCostToday, status.maxDailyLlmCost, spendWidth) }), _jsx(Text, { dimColor: true, children: `$${status.llmCostToday.toFixed(2)} used of $${status.maxDailyLlmCost.toFixed(2)}` }), _jsx(Text, { dimColor: true, children: "Balance refresh runs every 60s" })] })] }));
40
40
  }
41
41
  //# sourceMappingURL=StatusPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusPanel.js","sourceRoot":"","sources":["../../src/tui/StatusPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatusPanel.js","sourceRoot":"","sources":["../../src/tui/StatusPanel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { StoredAgent } from "../agent-store.js";
2
+ import type { TuiConfig } from "./types.js";
3
+ export declare function buildStrategyUpdateArgs(strategy: string, shadowMode: boolean): {
4
+ action: "configure_autonomous";
5
+ naturalLanguageRules: string;
6
+ shadowMode: boolean;
7
+ };
8
+ export declare function toTuiConfig(agent: StoredAgent, autoSeedSubscriptions?: boolean): TuiConfig;
9
+ export declare function persistStrategyAndBuildRestartConfig(params: {
10
+ agent: StoredAgent;
11
+ strategy: string;
12
+ saveAgent: (agent: StoredAgent) => void;
13
+ autoSeedSubscriptions?: boolean;
14
+ }): {
15
+ agent: StoredAgent;
16
+ restartConfig: TuiConfig;
17
+ };
18
+ //# sourceMappingURL=session-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-sync.d.ts","sourceRoot":"","sources":["../../src/tui/session-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,OAAO,GAClB;IACD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;CACrB,CAMA;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,WAAW,EAClB,qBAAqB,UAAQ,GAC5B,SAAS,CAgBX;AAED,wBAAgB,oCAAoC,CAAC,MAAM,EAAE;IAC3D,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACxC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,GAAG;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,aAAa,EAAE,SAAS,CAAA;CAAE,CAWnD"}
@@ -0,0 +1,34 @@
1
+ import { withUpdatedAgentStrategy } from "../agent-store.js";
2
+ export function buildStrategyUpdateArgs(strategy, shadowMode) {
3
+ return {
4
+ action: "configure_autonomous",
5
+ naturalLanguageRules: strategy,
6
+ shadowMode,
7
+ };
8
+ }
9
+ export function toTuiConfig(agent, autoSeedSubscriptions = false) {
10
+ return {
11
+ mcpEndpoint: agent.mcpEndpoint,
12
+ apiKey: agent.apiKey,
13
+ llmProvider: agent.llmProvider,
14
+ llmApiKey: agent.llmApiKey,
15
+ llmModel: agent.llmModel,
16
+ llmBaseUrl: agent.llmBaseUrl,
17
+ maxDailyLlmCost: agent.maxDailyLlmCost,
18
+ llmTimeoutMs: agent.llmTimeoutMs,
19
+ publicId: agent.publicId,
20
+ strategy: agent.strategy,
21
+ shadowMode: agent.shadowMode,
22
+ behaviorRules: agent.behaviorRules,
23
+ autoSeedSubscriptions,
24
+ };
25
+ }
26
+ export function persistStrategyAndBuildRestartConfig(params) {
27
+ const updatedAgent = withUpdatedAgentStrategy(params.agent, params.strategy);
28
+ params.saveAgent(updatedAgent);
29
+ return {
30
+ agent: updatedAgent,
31
+ restartConfig: toTuiConfig(updatedAgent, params.autoSeedSubscriptions ?? false),
32
+ };
33
+ }
34
+ //# sourceMappingURL=session-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-sync.js","sourceRoot":"","sources":["../../src/tui/session-sync.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,MAAM,UAAU,uBAAuB,CACrC,QAAgB,EAChB,UAAmB;IAMnB,OAAO;QACL,MAAM,EAAE,sBAAsB;QAC9B,oBAAoB,EAAE,QAAQ;QAC9B,UAAU;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,KAAkB,EAClB,qBAAqB,GAAG,KAAK;IAE7B,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,qBAAqB;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,MAKpD;IACC,MAAM,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7E,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAE/B,OAAO;QACL,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,WAAW,CACxB,YAAY,EACZ,MAAM,CAAC,qBAAqB,IAAI,KAAK,CACtC;KACF,CAAC;AACJ,CAAC"}
@@ -5,5 +5,6 @@ export interface SetupStatusSnapshot {
5
5
  slippageConfigured?: boolean;
6
6
  strategyConfigured?: boolean;
7
7
  }
8
+ export declare function parseSetupStatusSnapshot(structured?: Record<string, unknown>): SetupStatusSnapshot;
8
9
  export declare function buildSetupRequiredMessage(status: SetupStatusSnapshot): string;
9
10
  //# sourceMappingURL=setup-guidance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-guidance.d.ts","sourceRoot":"","sources":["../../src/tui/setup-guidance.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAkB7E"}
1
+ {"version":3,"file":"setup-guidance.d.ts","sourceRoot":"","sources":["../../src/tui/setup-guidance.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,wBAAwB,CACtC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,mBAAmB,CAUrB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAkB7E"}
@@ -1,15 +1,25 @@
1
+ export function parseSetupStatusSnapshot(structured) {
2
+ return {
3
+ developerWalletBound: structured?.developerWalletBound === true
4
+ || structured?.walletBound === true,
5
+ walletsConfigured: structured?.walletsConfigured === true,
6
+ tradingConfigured: structured?.tradingConfigured === true,
7
+ slippageConfigured: structured?.slippageConfigured === true,
8
+ strategyConfigured: structured?.strategyConfigured === true,
9
+ };
10
+ }
1
11
  export function buildSetupRequiredMessage(status) {
2
- if (!status.developerWalletBound && !status.walletsConfigured) {
3
- return "Setup incomplete. Next: connect your recovery wallet, then create your trading wallets.";
12
+ if (!status.developerWalletBound) {
13
+ return "Setup incomplete. I will guide you here in chat. First: provide your Base/EVM 0x developer wallet for recovery and Hub access.";
4
14
  }
5
15
  if (!status.walletsConfigured) {
6
- return "Setup incomplete. Next: create your trading wallets and fund your Solana wallet before live trading.";
16
+ return "Setup incomplete. Next: choose the trading networks: Solana, Base (EVM), or both. I will create the selected trading wallets.";
7
17
  }
8
18
  if (!status.slippageConfigured) {
9
- return "Setup incomplete. Next: configure your slippage tolerance.";
19
+ return "Setup incomplete. Next: configure slippage. You can answer in percent or bps, for example 3% = 300 bps.";
10
20
  }
11
21
  if (!status.strategyConfigured && !status.tradingConfigured) {
12
- return "Setup incomplete. Next: describe your trading strategy so live execution can be configured.";
22
+ return "Setup incomplete. Next: define hard limits and describe your strategy so live execution can be configured.";
13
23
  }
14
24
  return "Setup incomplete. Continue the remaining setup steps in chat before live trading starts.";
15
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"setup-guidance.js","sourceRoot":"","sources":["../../src/tui/setup-guidance.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,yBAAyB,CAAC,MAA2B;IACnE,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9D,OAAO,yFAAyF,CAAC;IACnG,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,OAAO,sGAAsG,CAAC;IAChH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC/B,OAAO,4DAA4D,CAAC;IACtE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC5D,OAAO,6FAA6F,CAAC;IACvG,CAAC;IAED,OAAO,0FAA0F,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"setup-guidance.js","sourceRoot":"","sources":["../../src/tui/setup-guidance.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,wBAAwB,CACtC,UAAoC;IAEpC,OAAO;QACL,oBAAoB,EAClB,UAAU,EAAE,oBAAoB,KAAK,IAAI;eACtC,UAAU,EAAE,WAAW,KAAK,IAAI;QACrC,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,KAAK,IAAI;QACzD,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,KAAK,IAAI;QACzD,kBAAkB,EAAE,UAAU,EAAE,kBAAkB,KAAK,IAAI;QAC3D,kBAAkB,EAAE,UAAU,EAAE,kBAAkB,KAAK,IAAI;KAC5D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,MAA2B;IACnE,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACjC,OAAO,gIAAgI,CAAC;IAC1I,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,OAAO,+HAA+H,CAAC;IACzI,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC/B,OAAO,yGAAyG,CAAC;IACnH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC5D,OAAO,4GAA4G,CAAC;IACtH,CAAC;IAED,OAAO,0FAA0F,CAAC;AACpG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/tui/start.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAsB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAa/D"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/tui/start.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,wBAAsB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB/D"}
package/dist/tui/start.js CHANGED
@@ -1,15 +1,21 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { render } from "ink";
3
3
  import { App } from "./App.js";
4
+ import { enterInteractiveScreen, leaveInteractiveScreen } from './terminal-session.js';
4
5
  export async function startTui(config) {
6
+ enterInteractiveScreen();
5
7
  const { waitUntilExit } = render(_jsx(App, { config: config }));
6
8
  // Force process exit after cleanup — prevents hanging on SSE/gRPC connections
7
9
  const forceExit = () => {
10
+ leaveInteractiveScreen();
8
11
  setTimeout(() => process.exit(0), 500).unref();
9
12
  };
10
13
  process.on("SIGINT", forceExit);
11
14
  process.on("SIGTERM", forceExit);
12
15
  await waitUntilExit();
16
+ process.off("SIGINT", forceExit);
17
+ process.off("SIGTERM", forceExit);
18
+ leaveInteractiveScreen();
13
19
  // Ensure clean exit even if Ink doesn't trigger process.exit
14
20
  process.exit(0);
15
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/tui/start.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAG/B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAAiB;IAC9C,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,KAAC,GAAG,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;IAE1D,8EAA8E;IAC9E,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;IACjD,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEjC,MAAM,aAAa,EAAE,CAAC;IACtB,6DAA6D;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/tui/start.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEvF,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAAiB;IAC9C,sBAAsB,EAAE,CAAC;IACzB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,KAAC,GAAG,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;IAE1D,8EAA8E;IAC9E,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,sBAAsB,EAAE,CAAC;QACzB,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;IACjD,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEjC,MAAM,aAAa,EAAE,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClC,sBAAsB,EAAE,CAAC;IACzB,6DAA6D;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,8 @@
1
+ type WritableLike = {
2
+ isTTY?: boolean;
3
+ write: (chunk: string) => boolean;
4
+ };
5
+ export declare function enterInteractiveScreen(stream?: WritableLike): void;
6
+ export declare function leaveInteractiveScreen(stream?: WritableLike): void;
7
+ export {};
8
+ //# sourceMappingURL=terminal-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-session.d.ts","sourceRoot":"","sources":["../../src/tui/terminal-session.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,GAAG;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;CACnC,CAAC;AAKF,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,YAA6B,GAAG,IAAI,CAGlF;AAED,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,YAA6B,GAAG,IAAI,CAGlF"}
@@ -0,0 +1,13 @@
1
+ const ALT_SCREEN_ON = '\u001B[?1049h\u001B[2J\u001B[H';
2
+ const ALT_SCREEN_OFF = '\u001B[?1049l';
3
+ export function enterInteractiveScreen(stream = process.stdout) {
4
+ if (!stream.isTTY)
5
+ return;
6
+ stream.write(ALT_SCREEN_ON);
7
+ }
8
+ export function leaveInteractiveScreen(stream = process.stdout) {
9
+ if (!stream.isTTY)
10
+ return;
11
+ stream.write(ALT_SCREEN_OFF);
12
+ }
13
+ //# sourceMappingURL=terminal-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-session.js","sourceRoot":"","sources":["../../src/tui/terminal-session.ts"],"names":[],"mappings":"AAKA,MAAM,aAAa,GAAG,gCAAgC,CAAC;AACvD,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC,MAAM,UAAU,sBAAsB,CAAC,SAAuB,OAAO,CAAC,MAAM;IAC1E,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO;IAC1B,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAuB,OAAO,CAAC,MAAM;IAC1E,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO;IAC1B,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AAC/B,CAAC"}
@@ -52,5 +52,7 @@ export interface TuiConfig {
52
52
  publicId: string;
53
53
  strategy: string;
54
54
  shadowMode: boolean;
55
+ behaviorRules?: Record<string, unknown>;
56
+ autoSeedSubscriptions?: boolean;
55
57
  }
56
58
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tui/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1E,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tui/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1E,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACxB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC"}
package/dist/wizard.d.ts CHANGED
@@ -7,10 +7,8 @@
7
7
  * 3. API key input
8
8
  * 4. Model selection (per-provider model list)
9
9
  * 5. New agent or existing agent
10
- * 6. Walletless onboarding (auto) or MCP endpoint entry
11
- * 7. MCP setup_agent wizard (wallets, slippage, autonomous strategy)
12
- * 8. Write agent.config.yaml + .env
13
- * 9. Offer to start the agent loop
10
+ * 6. Write agent.config.yaml + .env
11
+ * 7. Open the chat cockpit; setup_agent runs inside chat
14
12
  */
15
13
  export declare function runWizard(outDir: string): Promise<void>;
16
14
  //# sourceMappingURL=wizard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../src/wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAugBH,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0X7D"}
1
+ {"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../src/wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA4gBH,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsP7D"}