teleton 0.1.5 → 0.1.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/{chunk-UR2LQEKR.js → chunk-E2NXSWOS.js} +3 -1
- package/dist/{chunk-SRD47SJG.js → chunk-PMX75DTX.js} +2 -6
- package/dist/{chunk-VMX3ZDFW.js → chunk-TQBJNXWV.js} +101 -72
- package/dist/cli/index.js +3 -3
- package/dist/index.js +3 -3
- package/dist/{memory-FRH62ICY.js → memory-S5CXFPBT.js} +2 -2
- package/dist/{migrate-EQUZY7QH.js → migrate-ML4GQEHR.js} +2 -2
- package/dist/{tasks-NUFMZNV5.js → tasks-XBYFDGAA.js} +1 -1
- package/package.json +1 -1
|
@@ -241,7 +241,9 @@ var TaskStore = class {
|
|
|
241
241
|
`Cannot add dependency: would create circular dependency (${taskId} \u2192 ${parentTaskId})`
|
|
242
242
|
);
|
|
243
243
|
}
|
|
244
|
-
this.db.prepare(
|
|
244
|
+
this.db.prepare(
|
|
245
|
+
`INSERT OR IGNORE INTO task_dependencies (task_id, depends_on_task_id) VALUES (?, ?)`
|
|
246
|
+
).run(taskId, parentTaskId);
|
|
245
247
|
}
|
|
246
248
|
/**
|
|
247
249
|
* Get all tasks that this task depends on
|
|
@@ -1354,9 +1354,7 @@ var MessageStore = class {
|
|
|
1354
1354
|
ensureChat(chatId, isGroup = false) {
|
|
1355
1355
|
const existing = this.db.prepare(`SELECT id FROM tg_chats WHERE id = ?`).get(chatId);
|
|
1356
1356
|
if (!existing) {
|
|
1357
|
-
this.db.prepare(
|
|
1358
|
-
`INSERT INTO tg_chats (id, type, is_monitored) VALUES (?, ?, 1)`
|
|
1359
|
-
).run(chatId, isGroup ? "group" : "dm");
|
|
1357
|
+
this.db.prepare(`INSERT INTO tg_chats (id, type, is_monitored) VALUES (?, ?, 1)`).run(chatId, isGroup ? "group" : "dm");
|
|
1360
1358
|
}
|
|
1361
1359
|
}
|
|
1362
1360
|
/**
|
|
@@ -1366,9 +1364,7 @@ var MessageStore = class {
|
|
|
1366
1364
|
if (!userId) return;
|
|
1367
1365
|
const existing = this.db.prepare(`SELECT id FROM tg_users WHERE id = ?`).get(userId);
|
|
1368
1366
|
if (!existing) {
|
|
1369
|
-
this.db.prepare(
|
|
1370
|
-
`INSERT INTO tg_users (id) VALUES (?)`
|
|
1371
|
-
).run(userId);
|
|
1367
|
+
this.db.prepare(`INSERT INTO tg_users (id) VALUES (?)`).run(userId);
|
|
1372
1368
|
}
|
|
1373
1369
|
}
|
|
1374
1370
|
/**
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
fetchWithTimeout,
|
|
11
11
|
getDatabase,
|
|
12
12
|
initializeMemory
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-PMX75DTX.js";
|
|
14
14
|
import {
|
|
15
15
|
ALLOWED_EXTENSIONS,
|
|
16
16
|
MAX_FILE_SIZES,
|
|
@@ -1076,11 +1076,13 @@ function getOrCreateSession(chatId) {
|
|
|
1076
1076
|
lastChannel: "telegram",
|
|
1077
1077
|
lastTo: chatId
|
|
1078
1078
|
};
|
|
1079
|
-
db.prepare(
|
|
1079
|
+
db.prepare(
|
|
1080
|
+
`
|
|
1080
1081
|
INSERT INTO sessions (
|
|
1081
1082
|
id, chat_id, started_at, updated_at, message_count, last_channel, last_to
|
|
1082
1083
|
) VALUES (?, ?, ?, ?, ?, ?, ?)
|
|
1083
|
-
`
|
|
1084
|
+
`
|
|
1085
|
+
).run(
|
|
1084
1086
|
newSession.sessionId,
|
|
1085
1087
|
sessionKey,
|
|
1086
1088
|
newSession.createdAt,
|
|
@@ -1140,11 +1142,13 @@ function updateSession(chatId, update) {
|
|
|
1140
1142
|
updates.push("updated_at = ?");
|
|
1141
1143
|
values.push(Date.now());
|
|
1142
1144
|
values.push(sessionKey);
|
|
1143
|
-
db.prepare(
|
|
1145
|
+
db.prepare(
|
|
1146
|
+
`
|
|
1144
1147
|
UPDATE sessions
|
|
1145
1148
|
SET ${updates.join(", ")}
|
|
1146
1149
|
WHERE chat_id = ?
|
|
1147
|
-
`
|
|
1150
|
+
`
|
|
1151
|
+
).run(...values);
|
|
1148
1152
|
const updated = db.prepare("SELECT * FROM sessions WHERE chat_id = ?").get(sessionKey);
|
|
1149
1153
|
return rowToSession(updated);
|
|
1150
1154
|
}
|
|
@@ -1171,11 +1175,13 @@ function resetSession(chatId) {
|
|
|
1171
1175
|
};
|
|
1172
1176
|
const db = getDb();
|
|
1173
1177
|
const sessionKey = `telegram:${chatId}`;
|
|
1174
|
-
db.prepare(
|
|
1178
|
+
db.prepare(
|
|
1179
|
+
`
|
|
1175
1180
|
UPDATE sessions
|
|
1176
1181
|
SET id = ?, started_at = ?, updated_at = ?, message_count = 0
|
|
1177
1182
|
WHERE chat_id = ?
|
|
1178
|
-
`
|
|
1183
|
+
`
|
|
1184
|
+
).run(newSession.sessionId, newSession.createdAt, newSession.updatedAt, sessionKey);
|
|
1179
1185
|
console.log(`\u{1F504} Session reset: ${oldSession?.sessionId} \u2192 ${newSession.sessionId}`);
|
|
1180
1186
|
return newSession;
|
|
1181
1187
|
}
|
|
@@ -1188,7 +1194,9 @@ function shouldResetSession(session, policy) {
|
|
|
1188
1194
|
const currentHour = (/* @__PURE__ */ new Date()).getHours();
|
|
1189
1195
|
const resetHour = policy.daily_reset_hour;
|
|
1190
1196
|
if (lastReset < today && currentHour >= resetHour) {
|
|
1191
|
-
console.log(
|
|
1197
|
+
console.log(
|
|
1198
|
+
`\u{1F4C5} Daily reset triggered for session ${session.sessionId} (last reset: ${lastReset})`
|
|
1199
|
+
);
|
|
1192
1200
|
return true;
|
|
1193
1201
|
}
|
|
1194
1202
|
}
|
|
@@ -1198,7 +1206,9 @@ function shouldResetSession(session, policy) {
|
|
|
1198
1206
|
const idleMinutes = idleMs / (1e3 * 60);
|
|
1199
1207
|
const expiryMinutes = policy.idle_expiry_minutes;
|
|
1200
1208
|
if (idleMinutes >= expiryMinutes) {
|
|
1201
|
-
console.log(
|
|
1209
|
+
console.log(
|
|
1210
|
+
`\u23F1\uFE0F Idle expiry triggered for session ${session.sessionId} (idle: ${Math.floor(idleMinutes)}m)`
|
|
1211
|
+
);
|
|
1202
1212
|
return true;
|
|
1203
1213
|
}
|
|
1204
1214
|
}
|
|
@@ -2449,7 +2459,7 @@ function markdownToTelegramHtml(markdown) {
|
|
|
2449
2459
|
html = html.replace(listPattern, (match) => {
|
|
2450
2460
|
const index = blockquotes.length;
|
|
2451
2461
|
const lineCount = match.split("\n").length;
|
|
2452
|
-
|
|
2462
|
+
const content = match.replace(/\|\|([^|]+)\|\|/g, "<tg-spoiler>$1</tg-spoiler>").replace(/\*\*([^*]+)\*\*/g, "<b>$1</b>").replace(/__([^_]+)__/g, "<b>$1</b>").replace(/~~([^~]+)~~/g, "<s>$1</s>").replace(/(?<!\*)\*([^*]+)\*(?!\*)/g, "<i>$1</i>").replace(/(?<!_)_([^_]+)_(?!_)/g, "<i>$1</i>").replace(/\[([^\]]+)\]\(([^)]+)\)/g, '<a href="$2">$1</a>');
|
|
2453
2463
|
const tag = lineCount >= 15 ? "<blockquote expandable>" : "<blockquote>";
|
|
2454
2464
|
blockquotes.push(`${tag}${content}</blockquote>`);
|
|
2455
2465
|
return `\0BLOCKQUOTE${index}\0`;
|
|
@@ -7490,7 +7500,12 @@ var telegramSetChatPhotoExecutor = async (params, context) => {
|
|
|
7490
7500
|
}
|
|
7491
7501
|
const fileBuffer = readFileSync10(validatedPath.absolutePath);
|
|
7492
7502
|
const file = await client.uploadFile({
|
|
7493
|
-
file: new CustomFile(
|
|
7503
|
+
file: new CustomFile(
|
|
7504
|
+
validatedPath.filename,
|
|
7505
|
+
fileBuffer.length,
|
|
7506
|
+
validatedPath.absolutePath,
|
|
7507
|
+
fileBuffer
|
|
7508
|
+
),
|
|
7494
7509
|
workers: 1
|
|
7495
7510
|
});
|
|
7496
7511
|
if (isChannel) {
|
|
@@ -7810,7 +7825,15 @@ var telegramReplyKeyboardTool = {
|
|
|
7810
7825
|
};
|
|
7811
7826
|
var telegramReplyKeyboardExecutor = async (params, context) => {
|
|
7812
7827
|
try {
|
|
7813
|
-
const {
|
|
7828
|
+
const {
|
|
7829
|
+
chatId,
|
|
7830
|
+
text,
|
|
7831
|
+
buttons,
|
|
7832
|
+
oneTime = false,
|
|
7833
|
+
resize = true,
|
|
7834
|
+
selective = false,
|
|
7835
|
+
replyToId
|
|
7836
|
+
} = params;
|
|
7814
7837
|
if (buttons.length === 0 || buttons.some((row) => row.length === 0)) {
|
|
7815
7838
|
return {
|
|
7816
7839
|
success: false,
|
|
@@ -8711,11 +8734,7 @@ var telegramGetAvailableGiftsTool = {
|
|
|
8711
8734
|
description: "Get all Star Gifts available for purchase. There are two types: LIMITED gifts (rare, can become collectibles, may sell out) and UNLIMITED gifts (always available). Use filter to see specific types. Returns gift ID, name, stars cost, and availability. Use the gift ID with telegram_send_gift to send one.",
|
|
8712
8735
|
parameters: Type47.Object({
|
|
8713
8736
|
filter: Type47.Optional(
|
|
8714
|
-
Type47.Union([
|
|
8715
|
-
Type47.Literal("all"),
|
|
8716
|
-
Type47.Literal("limited"),
|
|
8717
|
-
Type47.Literal("unlimited")
|
|
8718
|
-
], {
|
|
8737
|
+
Type47.Union([Type47.Literal("all"), Type47.Literal("limited"), Type47.Literal("unlimited")], {
|
|
8719
8738
|
description: "Filter gifts: 'all' (default), 'limited' (rare/collectible), 'unlimited' (always available)"
|
|
8720
8739
|
})
|
|
8721
8740
|
),
|
|
@@ -9259,7 +9278,9 @@ var telegramSetGiftStatusExecutor = async (params, context) => {
|
|
|
9259
9278
|
})
|
|
9260
9279
|
);
|
|
9261
9280
|
const action = clear ? "cleared" : "set";
|
|
9262
|
-
console.log(
|
|
9281
|
+
console.log(
|
|
9282
|
+
`\u2728 Emoji status ${action}${collectibleId ? ` (collectible: ${collectibleId})` : ""}`
|
|
9283
|
+
);
|
|
9263
9284
|
return {
|
|
9264
9285
|
success: true,
|
|
9265
9286
|
data: {
|
|
@@ -10465,7 +10486,7 @@ var telegramCreateScheduledTaskExecutor = async (params, context) => {
|
|
|
10465
10486
|
error: "Database not available"
|
|
10466
10487
|
};
|
|
10467
10488
|
}
|
|
10468
|
-
const { getTaskStore } = await import("./tasks-
|
|
10489
|
+
const { getTaskStore } = await import("./tasks-XBYFDGAA.js");
|
|
10469
10490
|
const taskStore = getTaskStore(context.db);
|
|
10470
10491
|
const MAX_DEPENDENTS_PER_TASK = 10;
|
|
10471
10492
|
if (dependsOn && dependsOn.length > 0) {
|
|
@@ -12641,8 +12662,8 @@ var jettonQuoteExecutor = async (params, context) => {
|
|
|
12641
12662
|
const feeAmount = Number(feeUnits) / 10 ** askDecimals;
|
|
12642
12663
|
const rate = expectedOutput / amount;
|
|
12643
12664
|
const priceImpact = simulationResult.priceImpact || "0";
|
|
12644
|
-
|
|
12645
|
-
|
|
12665
|
+
const fromSymbol = isTonInput ? "TON" : "Token";
|
|
12666
|
+
const toSymbol = "Token";
|
|
12646
12667
|
const quote = {
|
|
12647
12668
|
from: fromAddress,
|
|
12648
12669
|
fromSymbol,
|
|
@@ -13264,14 +13285,7 @@ import { mnemonicToPrivateKey as mnemonicToPrivateKey9 } from "@ton/crypto";
|
|
|
13264
13285
|
import { WalletContractV5R1 as WalletContractV5R19, TonClient as TonClient12, toNano as toNano10, fromNano as fromNano5 } from "@ton/ton";
|
|
13265
13286
|
import { Address as Address10 } from "@ton/core";
|
|
13266
13287
|
import { getHttpEndpoint as getHttpEndpoint12 } from "@orbs-network/ton-access";
|
|
13267
|
-
import {
|
|
13268
|
-
Factory as Factory2,
|
|
13269
|
-
Asset as Asset2,
|
|
13270
|
-
PoolType as PoolType2,
|
|
13271
|
-
ReadinessStatus as ReadinessStatus2,
|
|
13272
|
-
JettonRoot,
|
|
13273
|
-
VaultJetton
|
|
13274
|
-
} from "@dedust/sdk";
|
|
13288
|
+
import { Factory as Factory2, Asset as Asset2, PoolType as PoolType2, ReadinessStatus as ReadinessStatus2, JettonRoot, VaultJetton } from "@dedust/sdk";
|
|
13275
13289
|
var dedustSwapTool = {
|
|
13276
13290
|
name: "dedust_swap",
|
|
13277
13291
|
description: "Execute a token swap on DeDust DEX. Supports TON->Jetton and Jetton->TON/Jetton swaps. Use 'ton' as from_asset or to_asset for TON. Pool types: 'volatile' (default) or 'stable' (for stablecoins like USDT/USDC). Use dedust_quote first to preview the swap.",
|
|
@@ -13829,14 +13843,7 @@ import { Address as Address12, SendMode as SendMode8, internal as internal8 } fr
|
|
|
13829
13843
|
import { getHttpEndpoint as getHttpEndpoint14 } from "@orbs-network/ton-access";
|
|
13830
13844
|
import { StonApiClient as StonApiClient4 } from "@ston-fi/api";
|
|
13831
13845
|
import { DEX as DEX2, pTON as pTON2 } from "@ston-fi/sdk";
|
|
13832
|
-
import {
|
|
13833
|
-
Factory as Factory4,
|
|
13834
|
-
Asset as Asset4,
|
|
13835
|
-
PoolType as PoolType4,
|
|
13836
|
-
ReadinessStatus as ReadinessStatus4,
|
|
13837
|
-
JettonRoot as JettonRoot2,
|
|
13838
|
-
VaultJetton as VaultJetton2
|
|
13839
|
-
} from "@dedust/sdk";
|
|
13846
|
+
import { Factory as Factory4, Asset as Asset4, PoolType as PoolType4, ReadinessStatus as ReadinessStatus4, JettonRoot as JettonRoot2, VaultJetton as VaultJetton2 } from "@dedust/sdk";
|
|
13840
13847
|
var dexSwapTool = {
|
|
13841
13848
|
name: "dex_swap",
|
|
13842
13849
|
description: "Smart router that executes swap on the best DEX (STON.fi or DeDust). Automatically compares prices and routes to the DEX with better output. Use preferred_dex to force a specific DEX. Use 'ton' for TON or jetton master address.",
|
|
@@ -13859,12 +13866,9 @@ var dexSwapTool = {
|
|
|
13859
13866
|
})
|
|
13860
13867
|
),
|
|
13861
13868
|
preferred_dex: Type95.Optional(
|
|
13862
|
-
Type95.Union(
|
|
13863
|
-
|
|
13864
|
-
|
|
13865
|
-
description: "Preferred DEX: 'auto' (default, best price), 'stonfi', or 'dedust'"
|
|
13866
|
-
}
|
|
13867
|
-
)
|
|
13869
|
+
Type95.Union([Type95.Literal("stonfi"), Type95.Literal("dedust"), Type95.Literal("auto")], {
|
|
13870
|
+
description: "Preferred DEX: 'auto' (default, best price), 'stonfi', or 'dedust'"
|
|
13871
|
+
})
|
|
13868
13872
|
)
|
|
13869
13873
|
})
|
|
13870
13874
|
};
|
|
@@ -14009,9 +14013,7 @@ async function executeDedustSwap(fromAsset, toAsset, amount, pool, minAmountOut,
|
|
|
14009
14013
|
});
|
|
14010
14014
|
const walletContract = tonClient.open(wallet);
|
|
14011
14015
|
const sender = walletContract.sender(keyPair.secretKey);
|
|
14012
|
-
const factory = tonClient.open(
|
|
14013
|
-
Factory4.createFromAddress(Address12.parse(DEDUST_FACTORY_MAINNET))
|
|
14014
|
-
);
|
|
14016
|
+
const factory = tonClient.open(Factory4.createFromAddress(Address12.parse(DEDUST_FACTORY_MAINNET)));
|
|
14015
14017
|
const amountIn = toNano12(amount);
|
|
14016
14018
|
if (isTonInput) {
|
|
14017
14019
|
const tonVault = tonClient.open(await factory.getNativeVault());
|
|
@@ -14411,7 +14413,9 @@ Examples:
|
|
|
14411
14413
|
[Type96.Literal("trade"), Type96.Literal("gift"), Type96.Literal("middleman"), Type96.Literal("kol")],
|
|
14412
14414
|
{ description: "Type of operation" }
|
|
14413
14415
|
),
|
|
14414
|
-
action: Type96.String({
|
|
14416
|
+
action: Type96.String({
|
|
14417
|
+
description: "Brief action description (e.g., 'buy', 'sell', 'swap', 'escrow', 'post')"
|
|
14418
|
+
}),
|
|
14415
14419
|
asset_from: Type96.Optional(
|
|
14416
14420
|
Type96.String({ description: "Asset sent/sold (e.g., 'TON', 'USDT', 'Deluxe Heart')" })
|
|
14417
14421
|
),
|
|
@@ -14422,7 +14426,9 @@ Examples:
|
|
|
14422
14426
|
counterparty: Type96.Optional(
|
|
14423
14427
|
Type96.String({ description: "Username or ID of the other party (if applicable)" })
|
|
14424
14428
|
),
|
|
14425
|
-
platform: Type96.Optional(
|
|
14429
|
+
platform: Type96.Optional(
|
|
14430
|
+
Type96.String({ description: "Platform used (e.g., 'STON.fi', 'Telegram', 'DeDust')" })
|
|
14431
|
+
),
|
|
14426
14432
|
reasoning: Type96.String({
|
|
14427
14433
|
description: "WHY you took this action - explain your decision-making (this is CRITICAL for learning and auditing)"
|
|
14428
14434
|
}),
|
|
@@ -14438,7 +14444,9 @@ Examples:
|
|
|
14438
14444
|
{ description: "Outcome status (default: 'pending')" }
|
|
14439
14445
|
)
|
|
14440
14446
|
),
|
|
14441
|
-
tx_hash: Type96.Optional(
|
|
14447
|
+
tx_hash: Type96.Optional(
|
|
14448
|
+
Type96.String({ description: "Blockchain transaction hash (if applicable)" })
|
|
14449
|
+
)
|
|
14442
14450
|
})
|
|
14443
14451
|
};
|
|
14444
14452
|
var journalLogExecutor = async (params, context) => {
|
|
@@ -14516,11 +14524,18 @@ Examples:
|
|
|
14516
14524
|
parameters: Type97.Object({
|
|
14517
14525
|
type: Type97.Optional(
|
|
14518
14526
|
Type97.Union(
|
|
14519
|
-
[
|
|
14527
|
+
[
|
|
14528
|
+
Type97.Literal("trade"),
|
|
14529
|
+
Type97.Literal("gift"),
|
|
14530
|
+
Type97.Literal("middleman"),
|
|
14531
|
+
Type97.Literal("kol")
|
|
14532
|
+
],
|
|
14520
14533
|
{ description: "Filter by operation type" }
|
|
14521
14534
|
)
|
|
14522
14535
|
),
|
|
14523
|
-
asset: Type97.Optional(
|
|
14536
|
+
asset: Type97.Optional(
|
|
14537
|
+
Type97.String({ description: "Filter by asset (e.g., 'TON', 'USDT', 'Deluxe Heart')" })
|
|
14538
|
+
),
|
|
14524
14539
|
outcome: Type97.Optional(
|
|
14525
14540
|
Type97.Union(
|
|
14526
14541
|
[
|
|
@@ -14536,7 +14551,9 @@ Examples:
|
|
|
14536
14551
|
days: Type97.Optional(
|
|
14537
14552
|
Type97.Number({ description: "Limit to last N days (e.g., 7 for last week)", minimum: 1 })
|
|
14538
14553
|
),
|
|
14539
|
-
limit: Type97.Optional(
|
|
14554
|
+
limit: Type97.Optional(
|
|
14555
|
+
Type97.Number({ description: "Max number of results (default: 20)", minimum: 1 })
|
|
14556
|
+
)
|
|
14540
14557
|
})
|
|
14541
14558
|
};
|
|
14542
14559
|
var journalQueryExecutor = async (params) => {
|
|
@@ -14577,10 +14594,7 @@ var journalQueryExecutor = async (params) => {
|
|
|
14577
14594
|
].join("\n");
|
|
14578
14595
|
}
|
|
14579
14596
|
}
|
|
14580
|
-
const lines = [
|
|
14581
|
-
`\u{1F4D6} Journal Entries (${entries.length} results)`,
|
|
14582
|
-
``
|
|
14583
|
-
];
|
|
14597
|
+
const lines = [`\u{1F4D6} Journal Entries (${entries.length} results)`, ``];
|
|
14584
14598
|
if (summary) {
|
|
14585
14599
|
lines.push(summary);
|
|
14586
14600
|
}
|
|
@@ -14604,7 +14618,9 @@ var journalQueryExecutor = async (params) => {
|
|
|
14604
14618
|
}
|
|
14605
14619
|
if (entry.pnl_ton !== null && entry.pnl_ton !== void 0) {
|
|
14606
14620
|
const sign = entry.pnl_ton >= 0 ? "+" : "";
|
|
14607
|
-
lines.push(
|
|
14621
|
+
lines.push(
|
|
14622
|
+
` P&L: ${sign}${entry.pnl_ton.toFixed(2)} TON (${sign}${entry.pnl_pct?.toFixed(1) ?? "?"}%)`
|
|
14623
|
+
);
|
|
14608
14624
|
}
|
|
14609
14625
|
if (entry.reasoning) {
|
|
14610
14626
|
lines.push(` _"${entry.reasoning}"_`);
|
|
@@ -14657,7 +14673,9 @@ Examples:
|
|
|
14657
14673
|
{ description: "Update outcome status" }
|
|
14658
14674
|
)
|
|
14659
14675
|
),
|
|
14660
|
-
pnl_ton: Type98.Optional(
|
|
14676
|
+
pnl_ton: Type98.Optional(
|
|
14677
|
+
Type98.Number({ description: "Profit/loss in TON (positive = profit, negative = loss)" })
|
|
14678
|
+
),
|
|
14661
14679
|
pnl_pct: Type98.Optional(Type98.Number({ description: "Profit/loss percentage" })),
|
|
14662
14680
|
tx_hash: Type98.Optional(Type98.String({ description: "Add or update transaction hash" }))
|
|
14663
14681
|
})
|
|
@@ -14864,7 +14882,21 @@ var workspaceReadExecutor = async (params, _context) => {
|
|
|
14864
14882
|
error: `File too large: ${stats.size} bytes exceeds limit of ${maxSize} bytes`
|
|
14865
14883
|
};
|
|
14866
14884
|
}
|
|
14867
|
-
const textExtensions = [
|
|
14885
|
+
const textExtensions = [
|
|
14886
|
+
".md",
|
|
14887
|
+
".txt",
|
|
14888
|
+
".json",
|
|
14889
|
+
".csv",
|
|
14890
|
+
".yaml",
|
|
14891
|
+
".yml",
|
|
14892
|
+
".xml",
|
|
14893
|
+
".html",
|
|
14894
|
+
".css",
|
|
14895
|
+
".js",
|
|
14896
|
+
".ts",
|
|
14897
|
+
".py",
|
|
14898
|
+
".sh"
|
|
14899
|
+
];
|
|
14868
14900
|
const isTextFile = textExtensions.includes(validated.extension);
|
|
14869
14901
|
if (!isTextFile && encoding === "utf-8") {
|
|
14870
14902
|
return {
|
|
@@ -14879,7 +14911,10 @@ var workspaceReadExecutor = async (params, _context) => {
|
|
|
14879
14911
|
}
|
|
14880
14912
|
};
|
|
14881
14913
|
}
|
|
14882
|
-
const content = readFileSync14(
|
|
14914
|
+
const content = readFileSync14(
|
|
14915
|
+
validated.absolutePath,
|
|
14916
|
+
encoding === "base64" ? "base64" : "utf-8"
|
|
14917
|
+
);
|
|
14883
14918
|
return {
|
|
14884
14919
|
success: true,
|
|
14885
14920
|
data: {
|
|
@@ -14949,13 +14984,7 @@ Examples:
|
|
|
14949
14984
|
};
|
|
14950
14985
|
var workspaceWriteExecutor = async (params, _context) => {
|
|
14951
14986
|
try {
|
|
14952
|
-
const {
|
|
14953
|
-
path,
|
|
14954
|
-
content,
|
|
14955
|
-
encoding = "utf-8",
|
|
14956
|
-
append = false,
|
|
14957
|
-
createDirs = true
|
|
14958
|
-
} = params;
|
|
14987
|
+
const { path, content, encoding = "utf-8", append = false, createDirs = true } = params;
|
|
14959
14988
|
const validated = validateWritePath(path);
|
|
14960
14989
|
const parentDir = dirname7(validated.absolutePath);
|
|
14961
14990
|
if (createDirs && !existsSync14(parentDir)) {
|
|
@@ -19311,7 +19340,7 @@ ${blue} \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u250
|
|
|
19311
19340
|
`\u26A0\uFE0F Tool count (${this.toolCount}) exceeds ${providerMeta.displayName} limit (${providerMeta.toolLimit})`
|
|
19312
19341
|
);
|
|
19313
19342
|
}
|
|
19314
|
-
const { migrateSessionsToDb } = await import("./migrate-
|
|
19343
|
+
const { migrateSessionsToDb } = await import("./migrate-ML4GQEHR.js");
|
|
19315
19344
|
migrateSessionsToDb();
|
|
19316
19345
|
const memory = initializeMemory({
|
|
19317
19346
|
database: {
|
|
@@ -19476,9 +19505,9 @@ ${blue} \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u250
|
|
|
19476
19505
|
return;
|
|
19477
19506
|
}
|
|
19478
19507
|
const taskId = match[1];
|
|
19479
|
-
const { getTaskStore } = await import("./tasks-
|
|
19508
|
+
const { getTaskStore } = await import("./tasks-XBYFDGAA.js");
|
|
19480
19509
|
const { executeScheduledTask } = await import("./task-executor-YJWMBCEM.js");
|
|
19481
|
-
const { getDatabase: getDatabase2 } = await import("./memory-
|
|
19510
|
+
const { getDatabase: getDatabase2 } = await import("./memory-S5CXFPBT.js");
|
|
19482
19511
|
const db = getDatabase2().getDb();
|
|
19483
19512
|
const taskStore = getTaskStore(db);
|
|
19484
19513
|
const task = taskStore.getTask(taskId);
|
|
@@ -19551,9 +19580,9 @@ ${blue} \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u250
|
|
|
19551
19580
|
} catch (error) {
|
|
19552
19581
|
console.error("Error handling scheduled task:", error);
|
|
19553
19582
|
try {
|
|
19554
|
-
const { getTaskStore } = await import("./tasks-
|
|
19583
|
+
const { getTaskStore } = await import("./tasks-XBYFDGAA.js");
|
|
19555
19584
|
const { TaskDependencyResolver } = await import("./task-dependency-resolver-ZOPHT3CU.js");
|
|
19556
|
-
const { getDatabase: getDatabase2 } = await import("./memory-
|
|
19585
|
+
const { getDatabase: getDatabase2 } = await import("./memory-S5CXFPBT.js");
|
|
19557
19586
|
const db = getDatabase2().getDb();
|
|
19558
19587
|
const taskStore = getTaskStore(db);
|
|
19559
19588
|
const match = message.text.match(/^\[TASK:([^\]]+)\]/);
|
package/dist/cli/index.js
CHANGED
|
@@ -17,12 +17,12 @@ import {
|
|
|
17
17
|
saveWallet,
|
|
18
18
|
validateApiKeyFormat,
|
|
19
19
|
walletExists
|
|
20
|
-
} from "../chunk-
|
|
20
|
+
} from "../chunk-TQBJNXWV.js";
|
|
21
21
|
import "../chunk-B2PRMXOH.js";
|
|
22
22
|
import {
|
|
23
23
|
fetchWithTimeout
|
|
24
|
-
} from "../chunk-
|
|
25
|
-
import "../chunk-
|
|
24
|
+
} from "../chunk-PMX75DTX.js";
|
|
25
|
+
import "../chunk-E2NXSWOS.js";
|
|
26
26
|
import {
|
|
27
27
|
TELETON_ROOT
|
|
28
28
|
} from "../chunk-WQ5TFRTG.js";
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TonnetApp,
|
|
3
3
|
main
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TQBJNXWV.js";
|
|
5
5
|
import "./chunk-B2PRMXOH.js";
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-PMX75DTX.js";
|
|
7
|
+
import "./chunk-E2NXSWOS.js";
|
|
8
8
|
import "./chunk-WQ5TFRTG.js";
|
|
9
9
|
import "./chunk-ST5CO7TV.js";
|
|
10
10
|
import "./chunk-QMN6ZOA5.js";
|
|
@@ -24,11 +24,11 @@ import {
|
|
|
24
24
|
runMigrations,
|
|
25
25
|
serializeEmbedding,
|
|
26
26
|
setSchemaVersion
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-PMX75DTX.js";
|
|
28
28
|
import {
|
|
29
29
|
TaskStore,
|
|
30
30
|
getTaskStore
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-E2NXSWOS.js";
|
|
32
32
|
import "./chunk-ST5CO7TV.js";
|
|
33
33
|
import "./chunk-QMN6ZOA5.js";
|
|
34
34
|
import "./chunk-LJXYESJJ.js";
|