@yoooclaw/phone-notifications 1.12.3 → 1.12.4

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.
Files changed (58) hide show
  1. package/README.md +3 -4
  2. package/dist/bin/ntf.cjs +327 -9
  3. package/dist/bin/ntf.cjs.map +9 -7
  4. package/dist/cli/doctor/check-local-gateway.d.ts +3 -0
  5. package/dist/cli/doctor/check-local-gateway.d.ts.map +1 -0
  6. package/dist/cli/doctor/checkers.d.ts.map +1 -1
  7. package/dist/env.d.ts +8 -0
  8. package/dist/env.d.ts.map +1 -1
  9. package/dist/fs-atomic.d.ts +11 -0
  10. package/dist/fs-atomic.d.ts.map +1 -0
  11. package/dist/image/store.d.ts.map +1 -1
  12. package/dist/index.cjs +2084 -740
  13. package/dist/index.cjs.map +34 -24
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/light/sender.d.ts +14 -3
  16. package/dist/light/sender.d.ts.map +1 -1
  17. package/dist/logger.d.ts.map +1 -1
  18. package/dist/notification/storage.d.ts +4 -3
  19. package/dist/notification/storage.d.ts.map +1 -1
  20. package/dist/plugin/auto-update.d.ts +2 -0
  21. package/dist/plugin/auto-update.d.ts.map +1 -1
  22. package/dist/plugin/lifecycle.d.ts +7 -14
  23. package/dist/plugin/lifecycle.d.ts.map +1 -1
  24. package/dist/plugin/light-control.d.ts.map +1 -1
  25. package/dist/plugin/light-rules-tools.d.ts.map +1 -1
  26. package/dist/plugin/notifications.d.ts +1 -0
  27. package/dist/plugin/notifications.d.ts.map +1 -1
  28. package/dist/plugin/register-guard.d.ts +16 -0
  29. package/dist/plugin/register-guard.d.ts.map +1 -0
  30. package/dist/plugin/runtime.d.ts +64 -0
  31. package/dist/plugin/runtime.d.ts.map +1 -0
  32. package/dist/plugin/shared-storage.d.ts +31 -0
  33. package/dist/plugin/shared-storage.d.ts.map +1 -0
  34. package/dist/plugin/system.d.ts +17 -0
  35. package/dist/plugin/system.d.ts.map +1 -0
  36. package/dist/recording/storage.d.ts +2 -1
  37. package/dist/recording/storage.d.ts.map +1 -1
  38. package/dist/system/os-info.d.ts +34 -0
  39. package/dist/system/os-info.d.ts.map +1 -0
  40. package/dist/tunnel/connect-status-reporter.d.ts.map +1 -1
  41. package/dist/tunnel/frame-slimmer.d.ts +82 -1
  42. package/dist/tunnel/frame-slimmer.d.ts.map +1 -1
  43. package/dist/tunnel/gateway-target.d.ts +17 -0
  44. package/dist/tunnel/gateway-target.d.ts.map +1 -0
  45. package/dist/tunnel/http-proxy.d.ts.map +1 -1
  46. package/dist/tunnel/proxy.d.ts +20 -1
  47. package/dist/tunnel/proxy.d.ts.map +1 -1
  48. package/dist/tunnel/service.d.ts.map +1 -1
  49. package/dist/update/executor.d.ts +3 -3
  50. package/dist/update/executor.d.ts.map +1 -1
  51. package/dist/update/index.d.ts +3 -2
  52. package/dist/update/index.d.ts.map +1 -1
  53. package/dist/update/stale-runtime.d.ts +43 -0
  54. package/dist/update/stale-runtime.d.ts.map +1 -0
  55. package/openclaw.plugin.json +1 -0
  56. package/package.json +1 -1
  57. package/skills/notification-monitor/SKILL.md +2 -2
  58. package/skills/notification-to-memory/SKILL.md +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/tunnel/proxy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAY,YAAY,EAAgB,MAAM,YAAY,CAAC;AAoBvE,eAAO,MAAM,uCAAuC,qCAChB,CAAC;AAcrC,UAAU,YAAY;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB;IACnB,eAAe,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACvC,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B,CAAC;CACH;AAsED;;;GAGG;AACH,qBAAa,WAAW;IA4BV,OAAO,CAAC,QAAQ,CAAC,IAAI;IA3BjC,uCAAuC;IACvC,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,mBAAmB,CAAS;IACpC,2BAA2B;IAC3B,OAAO,CAAC,cAAc,CAAS;IAC/B,kCAAkC;IAClC,OAAO,CAAC,2BAA2B,CAAS;IAC5C,kDAAkD;IAClD,OAAO,CAAC,+BAA+B,CAAS;IAChD,kBAAkB;IAClB,OAAO,CAAC,6BAA6B,CAAK;IAC1C,gCAAgC;IAChC,OAAO,CAAC,gBAAgB,CAA+B;IACvD,2CAA2C;IAC3C,OAAO,CAAC,kBAAkB,CAA4C;IACtE,+DAA+D;IAC/D,OAAO,CAAC,qBAAqB,CAA2C;IACxE,oCAAoC;IACpC,OAAO,CAAC,oBAAoB,CAAsC;IAElE,iCAAiC;IACjC,OAAO,CAAC,cAAc,CAAiB;IAEvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEL,IAAI,EAAE,YAAY;IAgB/C,uBAAuB;IACjB,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BrD,2BAA2B;IAC3B,OAAO,IAAI,IAAI;YAgCD,kBAAkB;IAgBhC,OAAO,CAAC,kBAAkB;IAuB1B,2BAA2B;IAC3B,OAAO,CAAC,mBAAmB;IAe3B,+DAA+D;IAC/D,OAAO,CAAC,cAAc;IA+BtB,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,kBAAkB;IA0C1B,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,uBAAuB;IAoB/B,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,qCAAqC;YAc/B,8BAA8B;IA8E5C,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,4BAA4B;IAWpC,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,kCAAkC;IAU1C,OAAO,CAAC,8BAA8B;IAoBtC,OAAO,CAAC,wBAAwB;IA2FhC,6CAA6C;IAC7C,OAAO,CAAC,eAAe;IA2OvB,OAAO,CAAC,sBAAsB;CA2D/B"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/tunnel/proxy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/tunnel/service.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAcrD,UAAU,oBAAoB;IAC5B,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB;IACnB,eAAe,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACvC,uBAAuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACpD,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAChD,kBAAkB,IAAI,IAAI,CAAC;IAC3B,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AA8BD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,oBAAoB,GACzB,kBAAkB,CAyapB"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/tunnel/service.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAcrD,UAAU,oBAAoB;IAC5B,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB;IACnB,eAAe,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACvC,uBAAuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAC5B,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,GAAG,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;IACpD,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAChD,kBAAkB,IAAI,IAAI,CAAC;IAC3B,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AA8BD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,oBAAoB,GACzB,kBAAkB,CAibpB"}
@@ -17,6 +17,7 @@ export interface LastUpdateStatus {
17
17
  error?: string;
18
18
  suggestion?: string;
19
19
  nextActions?: string[];
20
+ /** 历史字段:旧版本在补写 plugins.installs 后标记,已不再读写,仅为兼容旧状态文件保留。 */
20
21
  reconciledAt?: string;
21
22
  }
22
23
  export interface UpdateNotice {
@@ -55,6 +56,7 @@ export interface ExecuteUpdateDeps {
55
56
  now?: () => number;
56
57
  random?: () => number;
57
58
  }
59
+ export declare function updateRootForTarget(targetDir: string): string;
58
60
  export declare function readLastUpdateStatus(targetDir: string): LastUpdateStatus | undefined;
59
61
  export interface ErrorClassification {
60
62
  suggestion: string;
@@ -67,15 +69,13 @@ export interface ErrorClassification {
67
69
  export declare function classifyError(error: string): ErrorClassification;
68
70
  export declare function buildLastUpdateNotice(status: LastUpdateStatus): UpdateNotice | undefined;
69
71
  export declare function markLastUpdateRestartStatus(targetDir: string, restartStatus: RestartStatus, fields?: Pick<LastUpdateStatus, "error" | "suggestion" | "nextActions">): void;
70
- export declare function markLastUpdateReconciled(targetDir: string): void;
71
72
  export declare function cleanupPendingDir(status: LastUpdateStatus | undefined): void;
72
73
  export declare function applyPreparedUpdate(status: LastUpdateStatus, restartStatus?: RestartStatus): UpdateResult;
73
74
  export declare function startPreparedUpdater(status: LastUpdateStatus): void;
74
75
  /**
75
76
  * 执行插件更新:下载并准备 pending 更新包,实际目录替换交给独立 updater 在重启窗口完成。
76
77
  *
77
- * 注意:本函数只负责准备阶段(下载 + 解压 + 写 status)。配置记录写入推迟到 updater
78
- * 完成后由 `reconcileSucceededUpdateRecord` 在 gateway 重启加载新版本时补写。
78
+ * 注意:本函数只负责准备阶段(下载 + 解压 + 写 status)。
79
79
  */
80
80
  export declare function executeUpdate(version: string, runCommand: RunCommandFn, logger: Logger, targetDir: string, baseUrlOrDeps?: string | ExecuteUpdateDeps, maybeDeps?: ExecuteUpdateDeps): Promise<UpdateResult>;
81
81
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/update/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/update/executor.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,11 @@ import type { AutoUpdateConfig, BroadcastFn, ExternalUpdateNotifier } from "./ty
7
7
  * 运行时 PLUGIN_VERSION 是编译期常量(__PLUGIN_VERSION__),进程不重启就不会变。
8
8
  * 因此升级后若 gateway 未重启,只能重新从磁盘读 package.json 才能感知新版本。
9
9
  * 这里同时读 targetDir 与运行模块目录两处并取更新的一个:
10
- * - targetDir/package.json 覆盖"配置 installPath / 默认 extensions 路径"场景;
11
- * - 运行模块目录/package.json 覆盖"宿主就地替换、但没把安装信息写进 config"场景(如 arkclaw)。
10
+ * - targetDir/package.json 覆盖"默认 extensions 路径"场景;
11
+ * - 运行模块目录/package.json 覆盖"宿主就地替换安装目录"场景(如 arkclaw)。
12
12
  */
13
13
  export declare function resolveEffectiveCurrentVersion(targetDir: string, modulePackageJsonPath?: string): string;
14
+ export declare function registerPluginUpdateTool(api: OpenClawPluginApi, logger: Logger, baseUrl: string, onSuccess?: () => void): void;
14
15
  /**
15
16
  * 注册插件自动更新能力:
16
17
  * - 定时版本检查(UpdateChecker)
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/update/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AA4NpB;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,MAAM,EACjB,qBAAqB,GAAE,MAAuC,GAC7D,MAAM,CAqBR;AAgBD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,EACxB,YAAY,EAAE,MAAM,WAAW,GAAG,IAAI,EACtC,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,EAChE,sBAAsB,CAAC,EAAE,sBAAsB,GAC9C;IACD,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC,CA6UA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/update/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAK3C,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACX,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AAuLpB;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,MAAM,EACjB,qBAAqB,GAAE,MAAuC,GAC7D,MAAM,CAqBR;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,IAAI,GACrB,IAAI,CAqCN;AAgBD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,EACxB,YAAY,EAAE,MAAM,WAAW,GAAG,IAAI,EACtC,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,GAAG,SAAS,KAAK,IAAI,EAChE,sBAAsB,CAAC,EAAE,sBAAsB,GAC9C;IACD,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC,CAmUA"}
@@ -0,0 +1,43 @@
1
+ import { spawn } from "node:child_process";
2
+ import type { Logger } from "../logger.js";
3
+ export interface StaleRuntimeInfo {
4
+ stale: boolean;
5
+ runningVersion: string;
6
+ diskVersion?: string;
7
+ }
8
+ export type StaleRestartEscalation = {
9
+ action: "none";
10
+ } | {
11
+ action: "restart-scheduled";
12
+ diskVersion: string;
13
+ command: string[];
14
+ } | {
15
+ action: "manual-required";
16
+ diskVersion: string;
17
+ reason: string;
18
+ };
19
+ export interface StaleRuntimeDeps {
20
+ runningVersion?: string;
21
+ spawnFn?: typeof spawn;
22
+ scheduleFn?: (task: () => void, delayMs: number) => {
23
+ unref?: () => void;
24
+ };
25
+ loadConfig?: () => {
26
+ commands?: {
27
+ restart?: boolean;
28
+ };
29
+ } | undefined;
30
+ execPath?: string;
31
+ argv1?: string;
32
+ now?: () => Date;
33
+ }
34
+ /** 对比磁盘安装版本与运行版本,判断上次更新是否未生效。 */
35
+ export declare function detectStalePluginRuntime(targetDir: string, runningVersion?: string): StaleRuntimeInfo;
36
+ /**
37
+ * 检测陈旧运行时并(每个磁盘版本一次)尝试通过外部 CLI 触发完整重启。
38
+ * 返回结论供调用方记日志与注册对话通道提示。
39
+ */
40
+ export declare function maybeEscalateStaleRuntimeRestart(logger: Logger, targetDir: string, deps?: StaleRuntimeDeps): StaleRestartEscalation;
41
+ /** 供对话通道注入的系统提示文案。 */
42
+ export declare function buildStaleRuntimePromptNotice(info: StaleRuntimeInfo, escalation: StaleRestartEscalation): string | undefined;
43
+ //# sourceMappingURL=stale-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stale-runtime.d.ts","sourceRoot":"","sources":["../../src/update/stale-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AA4B3C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAOD,MAAM,MAAM,sBAAsB,GAC9B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,GACvE;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,MAAM,WAAW,gBAAgB;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC3E,UAAU,CAAC,EAAE,MAAM;QAAE,QAAQ,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,GAAG,SAAS,CAAC;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAeD,iCAAiC;AACjC,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,cAAc,GAAE,MAAuB,GACtC,gBAAgB,CAMlB;AA0CD;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,gBAAqB,GAC1B,sBAAsB,CA2ExB;AAED,sBAAsB;AACtB,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,gBAAgB,EACtB,UAAU,EAAE,sBAAsB,GACjC,MAAM,GAAG,SAAS,CAsBpB"}
@@ -6,6 +6,7 @@
6
6
  "contracts": {
7
7
  "tools": [
8
8
  "notifications_summary",
9
+ "light_control",
9
10
  "lightrules_list",
10
11
  "lightrules_create",
11
12
  "lightrules_update",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yoooclaw/phone-notifications",
3
- "version": "1.12.3",
3
+ "version": "1.12.4",
4
4
  "type": "module",
5
5
  "description": "后台同步手机通知数据到本地存储,供 Agent 查询消费",
6
6
  "main": "dist/index.cjs",
@@ -22,7 +22,7 @@ metadata:
22
22
  - 这个 skill 用来创建和调整两类任务:**灯效规则** 和 **普通通知监控**。
23
23
  - 灯效规则是云端数据;只有普通通知监控需要本地独立任务目录。
24
24
  - 手机通知已经落盘到本地 JSON,**不要**尝试直接访问原始 App。
25
- - 与通知无关的一次性灯效要求或长期偏好,不属于本 skill 的处理范围。
25
+ - 与通知无关的一次性灯效要求不属于本 skill;退出本 skill 后调用 `light_control`,不要创建灯效规则。
26
26
  - Exec 调用规则:等待 `ntf` 命令输出时使用 `yieldMs: 60000`;不要用 `timeout` 作为等待时间。`timeout` 是按秒计算的杀进程上限,默认 1800 秒,除非明确需要终止长时间运行的命令,否则不要写。
27
27
 
28
28
  ## Step 0: Decide the task type
@@ -31,7 +31,7 @@ metadata:
31
31
 
32
32
  - **灯效规则(light-rule)**:用户说“收到某类消息时亮灯/闪灯/灯效提醒”——走本文档 §Light Rules。
33
33
  - **普通通知监控(monitor)**:用户说“帮我监控某类通知并汇报”“有新通知时提醒我”——走本文档 §Monitor Tasks。
34
- - **非通知请求**:退出本 skill,按正常方式继续执行用户当前请求。
34
+ - **非通知请求**:退出本 skill;如果是当前立即执行或当前任务完成后亮灯,调用 `light_control`。
35
35
  - **模糊需求**(如“有重要消息亮红灯”“监控紧急消息”):先追问判断标准,不要直接替用户定义“重要”“紧急”。判断标准不清楚前,不要创建长期生效的任务。
36
36
 
37
37
  ## Light Rules
@@ -32,8 +32,8 @@ description: |
32
32
  ## 2. 选择执行路径
33
33
 
34
34
  - 触发来源是定时任务、后台任务或子任务(提示词声明了后台上下文,或 session 标识含 `subagent` / `cron`):直接在当前上下文进入步骤 3,不要再启动新的子任务。
35
- - 主对话且 `sessions_spawn` 工具可用:在同一条回复中输出状态行并**实际调用** `sessions_spawn`。子任务提示必须包含:"首先读取 skills/notification-to-memory/SKILL.md 全文并按其中步骤执行;本次范围:〈范围及对应参数〉;你已在后台上下文,直接执行同步循环"。只有调用成功返回运行 id 才算已启动;仅口头声称"已开始后台同步"而没有真实工具调用,视为执行失败。启动成功后主对话回复"已开始在后台同步,完成后会通知你"即可结束。
36
- - `sessions_spawn` 不可用、调用失败、或无法确定是否支持:一律直接在当前对话进入步骤 3,不要因犹豫而停顿。
35
+ - 主对话且 `sessions_spawn` 工具可用:在同一条回复中输出状态行并调用 `sessions_spawn`,**只传必需的 `task` 参数**,不要传 `runtime`、`mode`、`context`、`cleanup` 等可选参数,以兼容不支持这些字段的旧宿主。子任务提示必须包含:"首先读取 skills/notification-to-memory/SKILL.md 全文并按其中步骤执行;本次范围:〈范围及对应参数〉;你已在后台上下文,直接执行同步循环"。只有工具返回 `accepted` 和运行 id 才算已启动;随后立即回复"已开始在后台同步,完成后会通知你"并结束前台回合。禁止调用 `sessions_yield`、`sessions_list`、`sessions_history` 或其它轮询/等待工具,也不要在前台继续执行步骤 3。
36
+ - `sessions_spawn` 不可用、调用失败、或无法确定是否支持:直接在当前对话进入步骤 3,不要因犹豫而停顿。
37
37
 
38
38
  ## 3. 同步循环
39
39