@sayknow-cli/coding-agent 0.5.15 → 0.5.16

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 CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.5.16] - 2026-09-16
6
+
7
+ ### Fixed
8
+
9
+ - Native skill hooks never throw out of `UserPromptSubmit` / `Stop`. A failed install-root or state lookup returns empty context instead of aborting the turn, which is what collapsed the bundled UI-skill directive in Linux CI.
10
+
5
11
  ## [0.5.15] - 2026-09-16
6
12
 
7
13
  ### Fixed
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@sayknow-cli/coding-agent",
4
- "version": "0.5.15",
4
+ "version": "0.5.16",
5
5
  "description": "Sayknow-CLI CLI with read, bash, edit, write tools and session management",
6
6
  "homepage": "https://sayknow-cli.com",
7
7
  "author": "jaybeyond",
@@ -54,12 +54,12 @@
54
54
  "@agentclientprotocol/sdk": "1.3.0",
55
55
  "@babel/parser": "^7.29.3",
56
56
  "@mozilla/readability": "^0.6.0",
57
- "@sayknow-cli/stats": "0.5.15",
58
- "@sayknow-cli/agent-core": "0.5.15",
59
- "@sayknow-cli/ai": "0.5.15",
60
- "@sayknow-cli/natives": "0.5.15",
61
- "@sayknow-cli/tui": "0.5.15",
62
- "@sayknow-cli/utils": "0.5.15",
57
+ "@sayknow-cli/stats": "0.5.16",
58
+ "@sayknow-cli/agent-core": "0.5.16",
59
+ "@sayknow-cli/ai": "0.5.16",
60
+ "@sayknow-cli/natives": "0.5.16",
61
+ "@sayknow-cli/tui": "0.5.16",
62
+ "@sayknow-cli/utils": "0.5.16",
63
63
  "@puppeteer/browsers": "^2.13.0",
64
64
  "@types/turndown": "5.0.6",
65
65
  "@xterm/headless": "^6.0.0",
@@ -288,6 +288,20 @@ function readSessionFile(payload: HookPayload): string | undefined {
288
288
  export async function dispatchSkcNativeSkillHook(
289
289
  payload: HookPayload,
290
290
  options: SkcNativeHookDispatchOptions = {},
291
+ ): Promise<SkcNativeHookDispatchResult> {
292
+ try {
293
+ return await dispatchSkcNativeSkillHookInner(payload, options);
294
+ } catch {
295
+ // A native hook must never fail the turn. Surface nothing rather than
296
+ // aborting UserPromptSubmit / Stop over an install-root or state lookup.
297
+ const hookEventName = readHookEventName(payload);
298
+ return { hookEventName, outputJson: null };
299
+ }
300
+ }
301
+
302
+ async function dispatchSkcNativeSkillHookInner(
303
+ payload: HookPayload,
304
+ options: SkcNativeHookDispatchOptions = {},
291
305
  ): Promise<SkcNativeHookDispatchResult> {
292
306
  const hookEventName = readHookEventName(payload);
293
307
  const cwd = (options.cwd ?? safeString(payload.cwd).trim()) || process.cwd();