@raidiant/notifai 11.0.5 → 11.1.1
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 +44 -0
- package/README.md +5 -0
- package/dist/codex-wake.d.ts +44 -63
- package/dist/codex-wake.js +71 -174
- package/dist/codex-wake.js.map +1 -1
- package/dist/commands-ask.js +3 -1
- package/dist/commands-ask.js.map +1 -1
- package/dist/commands-close.js +28 -14
- package/dist/commands-close.js.map +1 -1
- package/dist/commands-core.d.ts +1 -1
- package/dist/commands-doctor.js +32 -11
- package/dist/commands-doctor.js.map +1 -1
- package/dist/commands-hook-install.js +111 -38
- package/dist/commands-hook-install.js.map +1 -1
- package/dist/commands-hook-run.js +8 -9
- package/dist/commands-hook-run.js.map +1 -1
- package/dist/commands-hook-shape.js +3 -2
- package/dist/commands-hook-shape.js.map +1 -1
- package/dist/credentials.js +7 -4
- package/dist/credentials.js.map +1 -1
- package/dist/harnesses.d.ts +1 -1
- package/dist/harnesses.js +2 -2
- package/dist/harnesses.js.map +1 -1
- package/dist/hook-adapter.d.ts +7 -1
- package/dist/hook-adapter.js +36 -3
- package/dist/hook-adapter.js.map +1 -1
- package/dist/hook-events.d.ts +69 -2
- package/dist/hook-events.js +75 -13
- package/dist/hook-events.js.map +1 -1
- package/dist/hook-lifecycle.js +44 -15
- package/dist/hook-lifecycle.js.map +1 -1
- package/dist/hook-question-retirement.d.ts +9 -0
- package/dist/hook-question-retirement.js +38 -3
- package/dist/hook-question-retirement.js.map +1 -1
- package/dist/hook-question-state.d.ts +14 -5
- package/dist/hook-question-state.js +55 -24
- package/dist/hook-question-state.js.map +1 -1
- package/dist/hook-types.d.ts +6 -0
- package/dist/install-hooks.d.ts +70 -12
- package/dist/install-hooks.js +352 -198
- package/dist/install-hooks.js.map +1 -1
- package/dist/openclaw-plugin.d.ts +0 -1
- package/dist/openclaw-plugin.js +0 -7
- package/dist/openclaw-plugin.js.map +1 -1
- package/dist/opencode-plugin.d.ts +9 -0
- package/dist/opencode-plugin.js +19 -2
- package/dist/opencode-plugin.js.map +1 -1
- package/dist/readiness.d.ts +9 -1
- package/dist/readiness.js +11 -3
- package/dist/readiness.js.map +1 -1
- package/dist/session-labels.js +6 -6
- package/dist/session-labels.js.map +1 -1
- package/dist/skill-source/manifest.json +4 -4
- package/dist/skill-source/notifai/SKILL.md +2 -2
- package/dist/skill-source/notifai/references/harness-setup.md +23 -14
- package/dist/ui/theme.d.ts +1 -1
- package/package.json +2 -2
|
@@ -57,10 +57,10 @@ Installed definitions call one stable user-level adapter at
|
|
|
57
57
|
`~/.notifai/bin/hook-adapter`. `hooks install` atomically retargets that adapter
|
|
58
58
|
to the current CLI while leaving definition bytes unchanged across Node/NVM,
|
|
59
59
|
package-manager, CLI-version, checkout, XDG directory, and Notifai preference
|
|
60
|
-
changes. Stop
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
changes. Codex Stop runs asynchronously on every platform; Claude Code Stop
|
|
61
|
+
runs asynchronously on POSIX and blocks on Windows. Both declare a timeout
|
|
62
|
+
above the longest answer window so their waiters can own the complete window;
|
|
63
|
+
prompt-submit and session-end retain fixed short limits on both.
|
|
64
64
|
Codex SessionStart stays within the harness's built-in inline-context budget;
|
|
65
65
|
Notifai does not add an output-limit override that would create a second trust
|
|
66
66
|
identity. Upgrades preserve both the source file and the approved definition.
|
|
@@ -72,7 +72,7 @@ later upgrades must not require another.
|
|
|
72
72
|
first. The current Agent Session's UserPromptSubmit observation proves that the
|
|
73
73
|
exact session owns this turn. A historical Stop observation is diagnostic
|
|
74
74
|
telemetry, not an admission prerequisite: the installed, trusted, current,
|
|
75
|
-
singular Stop definition and its
|
|
75
|
+
singular Stop definition and its answer waiter establish that the asking
|
|
76
76
|
turn can route the question. Ask exposes no `--session-id` override and will
|
|
77
77
|
not guess one.
|
|
78
78
|
When the failure includes a User-owned trust or permission `user_action`, relay
|
|
@@ -122,11 +122,12 @@ shell. Do not strip markers or borrow another Agent Session's identity to make
|
|
|
122
122
|
UserPromptSubmit does not activate it. Codex SubagentStart uses the same
|
|
123
123
|
reporting-only worker contract and explicit textual delegation rule as
|
|
124
124
|
Claude. A fresh install writes the Machine layer's `~/.codex/hooks.json`, or
|
|
125
|
-
joins inline `[hooks]` when
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
125
|
+
joins inline `[hooks]` when the User already keeps their own hooks there.
|
|
126
|
+
Notifai-owned inline handlers with no foreign inline neighbours are moved to
|
|
127
|
+
`hooks.json`; Codex will ask for `/hooks` approval because it keys trust by
|
|
128
|
+
source path. Foreign inline configuration is left in place. Later upgrades
|
|
129
|
+
keep the default SessionStart output-limit identity so they do not mint a
|
|
130
|
+
second trust identity. One install covers every project and every worktree, so there is
|
|
130
131
|
nothing to repeat in a new checkout; a Project-scoped `.codex` hook file from
|
|
131
132
|
an older Notifai is removed once the Machine copy is proven current.
|
|
132
133
|
- **Cursor:** start one fresh conversation, send one prompt, and let the first
|
|
@@ -196,9 +197,16 @@ meter differs per harness:
|
|
|
196
197
|
the successor turn in the same Agent Session without another User prompt.
|
|
197
198
|
Direct inbox wake is unavailable, but it is not needed while this exact Stop
|
|
198
199
|
continuation owns the answer.
|
|
199
|
-
- **Codex:** the Stop hook
|
|
200
|
-
the complete answer window
|
|
201
|
-
`
|
|
200
|
+
- **Codex:** the asynchronous Stop hook releases the turn and waits in the
|
|
201
|
+
background for the complete answer window. When an answer arrives, Notifai
|
|
202
|
+
invokes `codex queue` for the exact Agent Session in the same Codex home.
|
|
203
|
+
A live idle session starts a turn, a busy one consumes the answer after its
|
|
204
|
+
current turn, and a closed one keeps the queued answer until it is reopened.
|
|
205
|
+
Queue success proves storage, not consumption; UserPromptSubmit observes
|
|
206
|
+
consumption. Keep the original question and request identities if the route
|
|
207
|
+
fails so Notifai's journal can recover the answer. Never queue and resume the
|
|
208
|
+
same answer separately: a resume can consume the queue and the repeated
|
|
209
|
+
prompt, producing two copies.
|
|
202
210
|
- **Crash recovery:** the answer journal protects an accepted answer if an
|
|
203
211
|
owner process or its route fails. It is not the normal last meter for an
|
|
204
212
|
unexpired question.
|
|
@@ -271,7 +279,8 @@ Those are three different controls and only the last one decides whether an
|
|
|
271
279
|
answer is still wanted. Question Routing owns that complete window. Claude Code
|
|
272
280
|
waits out of band and wakes the Agent Session on POSIX; on Windows its Stop
|
|
273
281
|
stays held and returns the answer as the same Agent Session's continuation,
|
|
274
|
-
|
|
282
|
+
while Codex queues the answer into its Agent Session's durable inbox. The
|
|
283
|
+
journal is crash recovery, not the ordinary delivery path.
|
|
275
284
|
|
|
276
285
|
`NOTIFAI_NO_INPUT=1` guarantees no command will ever prompt, which is what you
|
|
277
286
|
want in CI or any shell with nobody at it. `NOTIFAI_CREDENTIALS=file` stores the
|
package/dist/ui/theme.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export declare const glyph: {
|
|
|
40
40
|
readonly bullet: "-" | "•";
|
|
41
41
|
readonly arrow: "→" | "->";
|
|
42
42
|
readonly chevron: "›" | ">";
|
|
43
|
-
readonly bar: "
|
|
43
|
+
readonly bar: "|" | "│";
|
|
44
44
|
};
|
|
45
45
|
export type Tone = 'ok' | 'warn' | 'bad' | 'pending';
|
|
46
46
|
/** A coloured glyph for a tone; the caller supplies the words. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@raidiant/notifai",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.1.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Send native device notifications from agents and local programs",
|
|
6
6
|
"bin": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
],
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@clack/prompts": "^1.7.0",
|
|
15
|
-
"@raidiant/notifai-protocol": "
|
|
15
|
+
"@raidiant/notifai-protocol": "7.0.2",
|
|
16
16
|
"commander": "^14.0.0",
|
|
17
17
|
"picocolors": "^1.1.1",
|
|
18
18
|
"smol-toml": "^1.4.0"
|