imsg-mcp 1.16.0 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/cli.js +3 -3
- package/dist/{imessage-db-DXFIm7is.js → imessage-db-CHbdUXk3.js} +11 -3
- package/dist/{imessage-db-DXFIm7is.js.map → imessage-db-CHbdUXk3.js.map} +1 -1
- package/dist/index.js +63 -26
- package/dist/index.js.map +1 -1
- package/dist/{meta-DcLrk46N.js → meta-CZmUZHTh.js} +2 -2
- package/dist/{meta-DcLrk46N.js.map → meta-CZmUZHTh.js.map} +1 -1
- package/dist/tui.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,20 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and follows [Semantic Versioning](https://semver.org/).
|
|
5
5
|
|
|
6
|
+
# [1.18.0](https://github.com/george43g/imsg-mcp/compare/v1.17.0...v1.18.0) (2026-07-25)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **tools:** uniform completeness metadata across list responses ([d8fd930](https://github.com/george43g/imsg-mcp/commit/d8fd930dfd28f28ac677ec4ffefd1addb39afbf5))
|
|
12
|
+
|
|
13
|
+
# [1.17.0](https://github.com/george43g/imsg-mcp/compare/v1.16.0...v1.17.0) (2026-07-25)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
* **get_messages:** signal global vs conversation scope; tighten identifier over-match ([784361b](https://github.com/george43g/imsg-mcp/commit/784361b3f351c8b214bcfa592f425f711dfcb0ed))
|
|
19
|
+
|
|
6
20
|
# [1.16.0](https://github.com/george43g/imsg-mcp/compare/v1.15.1...v1.16.0) (2026-07-25)
|
|
7
21
|
|
|
8
22
|
|
package/dist/cli.js
CHANGED
|
@@ -4,7 +4,7 @@ import { createInterface } from "node:readline";
|
|
|
4
4
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
5
5
|
import { Command } from "commander";
|
|
6
6
|
import { d as checkLocalAccess, f as formatAccessReport, I as IMPLEMENTED_TYPES, A as ANALYTIC_INFO, i as installShutdownHandlers, r as registerCleanup, l as looksLikeThreadSlug } from "./shutdown-0TCv4XJB.js";
|
|
7
|
-
import { A as APP_VERSION, t as toYaml } from "./meta-
|
|
7
|
+
import { A as APP_VERSION, t as toYaml } from "./meta-CZmUZHTh.js";
|
|
8
8
|
import { spawn } from "node:child_process";
|
|
9
9
|
import { join, dirname } from "node:path";
|
|
10
10
|
function distRoot() {
|
|
@@ -447,7 +447,7 @@ async function runExportCommand(target, opts) {
|
|
|
447
447
|
const { homedir } = await import("node:os");
|
|
448
448
|
const { dirname: dirname2, join: join2, isAbsolute, resolve } = await import("node:path");
|
|
449
449
|
const { getContactsDbPaths, getImsgDbPath, getSlugsDbPath } = await import("./shutdown-0TCv4XJB.js").then((n) => n.a2);
|
|
450
|
-
const { IMessageDB } = await import("./imessage-db-
|
|
450
|
+
const { IMessageDB } = await import("./imessage-db-CHbdUXk3.js").then((n) => n.i);
|
|
451
451
|
const { streamExport } = await import("./exportStream-BFxilSlL.js");
|
|
452
452
|
const { parseUserDate } = await import("./date-parse-DJXMfq3a.js");
|
|
453
453
|
const format = normalizeFormat(opts.format ?? "md");
|
|
@@ -719,7 +719,7 @@ program.command("interpret <rowId>").description("Interpret one attachment (tran
|
|
|
719
719
|
return;
|
|
720
720
|
}
|
|
721
721
|
const { getContactsDbPaths, getImsgDbPath, getSlugsDbPath } = await import("./shutdown-0TCv4XJB.js").then((n) => n.a2);
|
|
722
|
-
const { IMessageDB } = await import("./imessage-db-
|
|
722
|
+
const { IMessageDB } = await import("./imessage-db-CHbdUXk3.js").then((n) => n.i);
|
|
723
723
|
const { getInterpretRuntime, refForAttachment } = await import("./media-intel-runtime-BkxG4bmW.js").then((n) => n.c);
|
|
724
724
|
const { deleteMediaIntel } = await import("./media-intel-cache-mCgH4z9P.js");
|
|
725
725
|
const db = new IMessageDB(getImsgDbPath(), getContactsDbPaths(), getSlugsDbPath());
|
|
@@ -2351,9 +2351,17 @@ class IMessageDB {
|
|
|
2351
2351
|
resolveChatsForConversation(identifier) {
|
|
2352
2352
|
const chats = this.getAllChatsWithLastDate();
|
|
2353
2353
|
const normalized = identifier.replace(/[\s\-()]/g, "").toLowerCase();
|
|
2354
|
-
const
|
|
2355
|
-
|
|
2354
|
+
const chatNorm = (chat) => (chat.chat_identifier ?? "").replace(/[\s\-()]/g, "").toLowerCase();
|
|
2355
|
+
const exactMatches = chats.filter(
|
|
2356
|
+
(chat) => chat.chat_identifier === identifier || chat.guid === identifier || chat.chat_identifier != null && chatNorm(chat) === normalized
|
|
2356
2357
|
);
|
|
2358
|
+
const MIN_FUZZY_PHONE_LEN = 7;
|
|
2359
|
+
const directMatches = exactMatches.length > 0 ? exactMatches : normalized.includes("@") || normalized.length < MIN_FUZZY_PHONE_LEN ? [] : chats.filter((chat) => {
|
|
2360
|
+
if (chat.chat_identifier == null) return false;
|
|
2361
|
+
const cn = chatNorm(chat);
|
|
2362
|
+
if (cn.length < MIN_FUZZY_PHONE_LEN || cn.includes("@")) return false;
|
|
2363
|
+
return cn.endsWith(normalized) || normalized.endsWith(cn);
|
|
2364
|
+
});
|
|
2357
2365
|
if (directMatches.length === 0) return [];
|
|
2358
2366
|
const representative = this.pickMostRecentChat(directMatches);
|
|
2359
2367
|
const isGroup = isGroupGuid(representative.guid) || isGroupChatIdentifier(representative.chat_identifier);
|
|
@@ -3296,4 +3304,4 @@ export {
|
|
|
3296
3304
|
normalizedPhoneVariants as n,
|
|
3297
3305
|
rankFuzzy as r
|
|
3298
3306
|
};
|
|
3299
|
-
//# sourceMappingURL=imessage-db-
|
|
3307
|
+
//# sourceMappingURL=imessage-db-CHbdUXk3.js.map
|