@hraness/message-like-me 0.8.17 → 0.8.18
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 +5 -0
- package/README.md +1 -1
- package/dist/cli.js +1 -1
- package/docs/textbutler/architecture.md +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.18 (2026-09-23)
|
|
4
|
+
|
|
5
|
+
- Bind legacy installation to the exact public `@hraness/message-like-me@0.8.18` npm package, with the same reviewed bytes mirrored in the immutable GitHub Release. This does not install the Textbutler menu companion or enable automatic replies.
|
|
6
|
+
- Let the local TextButler app build against a persistent owner signing identity with `--signing-identity`, so macOS permission grants such as Full Disk Access and Apple Events bind to a stable certificate instead of each ad-hoc rebuild's changing code hash. The managed app receipt records the signing class explicitly (`ad-hoc` or `certificate`), treats a signing-class change as a new permission target that requires reinstall, and rejects unreviewed signing classes at startup. Ad-hoc signing remains the default for development builds.
|
|
7
|
+
|
|
3
8
|
## 0.8.17 (2026-09-23)
|
|
4
9
|
|
|
5
10
|
- Bind legacy installation to the exact public `@hraness/message-like-me@0.8.17` npm package, with the same reviewed bytes mirrored in the immutable GitHub Release. This does not install the Textbutler menu companion or enable automatic replies.
|
package/README.md
CHANGED
|
@@ -167,7 +167,7 @@ Message Like Me requires Bun 1.3.14 or newer. Install the exact public npm
|
|
|
167
167
|
package, then install both bundled Agent Skills:
|
|
168
168
|
|
|
169
169
|
```sh
|
|
170
|
-
bun add --global @hraness/message-like-me@0.8.
|
|
170
|
+
bun add --global @hraness/message-like-me@0.8.18
|
|
171
171
|
messagelikeme skill install
|
|
172
172
|
```
|
|
173
173
|
|
package/dist/cli.js
CHANGED
|
@@ -25088,7 +25088,7 @@ function commandPlatformLive(io, cleanupFailure) {
|
|
|
25088
25088
|
import { isAbsolute as isAbsolute7, resolve as resolve8 } from "path";
|
|
25089
25089
|
|
|
25090
25090
|
// src/version.ts
|
|
25091
|
-
var MESSAGE_LIKE_ME_VERSION = "0.8.
|
|
25091
|
+
var MESSAGE_LIKE_ME_VERSION = "0.8.18";
|
|
25092
25092
|
|
|
25093
25093
|
// src/command-input.ts
|
|
25094
25094
|
var HELP = `Message Like Me ${MESSAGE_LIKE_ME_VERSION}
|
|
@@ -26,7 +26,7 @@ flowchart LR
|
|
|
26
26
|
|
|
27
27
|
Ghostget owns native permissions, message and contact acquisition, provider actions, and receipts. Textbutler does not open chat.db or automate Messages directly. xcb owns subscription credentials, provider admission, model catalogs, confinement, cancellation and account custody. Textbutler invokes its native zero-tool generation API and interprets returned operation proposals through its own contact broker. Textbutler owns conversation policy and the durable send transaction. The menu companion changes owner settings through a small local protocol; it never gives a model arbitrary local commands.
|
|
28
28
|
|
|
29
|
-
The background lifecycle uses a user LaunchAgent: native messaging belongs to the signed-in Mac user, and login persistence is independent of the menu companion. Installation records the exact runtime, entrypoint, data directory and generation; removal verifies its private receipt and loaded service identity. Uninstall preserves contact data. New settings start paused. A private SQLite custody lock prevents duplicate daemon ownership and permits recovery only for a dead recorded process and its exact unserved socket. A minimal native TextButler.app can supervise the verified daemon so Full Disk Access belongs to the app. Its private installation receipt pins the runtime, payload, native executable and signature resources; a changed identity blocks startup. The app accepts fixed daemon, menu and iMessage setup roles, with no arbitrary command passthrough. Local builds
|
|
29
|
+
The background lifecycle uses a user LaunchAgent: native messaging belongs to the signed-in Mac user, and login persistence is independent of the menu companion. Installation records the exact runtime, entrypoint, data directory and generation; removal verifies its private receipt and loaded service identity. Uninstall preserves contact data. New settings start paused. A private SQLite custody lock prevents duplicate daemon ownership and permits recovery only for a dead recorded process and its exact unserved socket. A minimal native TextButler.app can supervise the verified daemon so Full Disk Access belongs to the app. Its private installation receipt pins the runtime, payload, native executable and signature resources; a changed identity blocks startup. The app accepts fixed daemon, menu and iMessage setup roles, with no arbitrary command passthrough. Local builds default to an ad-hoc signature, so a rebuilt app may require a fresh macOS permission grant; building with a persistent signing identity keeps grants bound to that certificate across rebuilds.
|
|
30
30
|
|
|
31
31
|
The daemon serves owner controls, enrollment jobs and a reply loop through its own supervised Ghostget process. Startup, enablement and recovery establish a silent event boundary, refresh bounded history and admit only subsequent eligible inbound messages. A failed catch-up pauses the affected conversation. No provider work starts without explicit owner account configuration.
|
|
32
32
|
|
package/package.json
CHANGED