@cleocode/core 2026.3.72 → 2026.3.74

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 (56) hide show
  1. package/dist/cleo.d.ts.map +1 -1
  2. package/dist/hooks/handlers/agent-hooks.d.ts +48 -0
  3. package/dist/hooks/handlers/agent-hooks.d.ts.map +1 -0
  4. package/dist/hooks/handlers/context-hooks.d.ts +53 -0
  5. package/dist/hooks/handlers/context-hooks.d.ts.map +1 -0
  6. package/dist/hooks/handlers/error-hooks.d.ts +4 -4
  7. package/dist/hooks/handlers/error-hooks.d.ts.map +1 -1
  8. package/dist/hooks/handlers/file-hooks.d.ts +3 -3
  9. package/dist/hooks/handlers/file-hooks.d.ts.map +1 -1
  10. package/dist/hooks/handlers/index.d.ts +8 -1
  11. package/dist/hooks/handlers/index.d.ts.map +1 -1
  12. package/dist/hooks/handlers/mcp-hooks.d.ts +29 -7
  13. package/dist/hooks/handlers/mcp-hooks.d.ts.map +1 -1
  14. package/dist/hooks/handlers/session-hooks.d.ts +5 -5
  15. package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
  16. package/dist/hooks/handlers/task-hooks.d.ts +5 -5
  17. package/dist/hooks/handlers/task-hooks.d.ts.map +1 -1
  18. package/dist/hooks/handlers/work-capture-hooks.d.ts +7 -7
  19. package/dist/hooks/handlers/work-capture-hooks.d.ts.map +1 -1
  20. package/dist/hooks/payload-schemas.d.ts +177 -11
  21. package/dist/hooks/payload-schemas.d.ts.map +1 -1
  22. package/dist/hooks/provider-hooks.d.ts +33 -7
  23. package/dist/hooks/provider-hooks.d.ts.map +1 -1
  24. package/dist/hooks/registry.d.ts +26 -6
  25. package/dist/hooks/registry.d.ts.map +1 -1
  26. package/dist/hooks/types.d.ts +132 -38
  27. package/dist/hooks/types.d.ts.map +1 -1
  28. package/dist/index.js +818 -233
  29. package/dist/index.js.map +4 -4
  30. package/dist/nexus/index.d.ts +2 -0
  31. package/dist/nexus/index.d.ts.map +1 -1
  32. package/dist/nexus/workspace.d.ts +128 -0
  33. package/dist/nexus/workspace.d.ts.map +1 -0
  34. package/dist/sessions/snapshot.d.ts.map +1 -1
  35. package/package.json +6 -6
  36. package/src/cleo.ts +14 -0
  37. package/src/hooks/handlers/__tests__/hook-automation-e2e.test.ts +634 -0
  38. package/src/hooks/handlers/agent-hooks.ts +148 -0
  39. package/src/hooks/handlers/context-hooks.ts +156 -0
  40. package/src/hooks/handlers/error-hooks.ts +8 -5
  41. package/src/hooks/handlers/file-hooks.ts +6 -4
  42. package/src/hooks/handlers/index.ts +12 -1
  43. package/src/hooks/handlers/mcp-hooks.ts +74 -9
  44. package/src/hooks/handlers/session-hooks.ts +7 -7
  45. package/src/hooks/handlers/task-hooks.ts +7 -7
  46. package/src/hooks/handlers/work-capture-hooks.ts +12 -12
  47. package/src/hooks/payload-schemas.ts +96 -26
  48. package/src/hooks/provider-hooks.ts +50 -9
  49. package/src/hooks/registry.ts +86 -23
  50. package/src/hooks/types.ts +175 -39
  51. package/src/nexus/index.ts +15 -0
  52. package/src/nexus/workspace.ts +508 -0
  53. package/src/sessions/index.ts +4 -4
  54. package/src/sessions/snapshot.ts +4 -2
  55. package/src/store/json.ts +2 -2
  56. package/src/task-work/index.ts +4 -4
@@ -2,16 +2,18 @@
2
2
  * Provider Hook Capabilities - Phase 2C of T5237
3
3
  *
4
4
  * Helper functions for querying which providers support which hook events.
5
- * Wraps CAAMP's provider discovery functions with CLEO-specific helpers.
5
+ * Wraps CAAMP's provider discovery and normalizer functions with CLEO-specific helpers.
6
+ *
7
+ * Updated for CAAMP 1.9.1: uses CanonicalHookEvent and toNative/toCanonical normalizers.
6
8
  *
7
9
  * @module @cleocode/cleo/hooks/provider-hooks
8
10
  */
9
- import { type HookEvent as CAAMPHookEvent, getCommonHookEvents, getProvidersByHookEvent } from '@cleocode/caamp';
11
+ import { type CanonicalHookEvent, getCommonHookEvents, getProvidersByHookEvent, supportsHook, toCanonical, toNative } from '@cleocode/caamp';
10
12
  import { type HookEvent } from './types.js';
11
13
  /**
12
14
  * Get all providers that support a specific hook event
13
15
  *
14
- * @param event - The hook event to query
16
+ * @param event - The hook event to query (canonical or internal)
15
17
  * @returns Array of provider IDs that support this event
16
18
  */
17
19
  export declare function getHookCapableProviders(event: HookEvent): string[];
@@ -19,9 +21,33 @@ export declare function getHookCapableProviders(event: HookEvent): string[];
19
21
  * Get hook events supported by all specified providers
20
22
  *
21
23
  * @param providerIds - Optional array of provider IDs (uses all active providers if omitted)
22
- * @returns Array of hook events supported by all specified providers
24
+ * @returns Array of canonical hook events supported by all specified providers
25
+ */
26
+ export declare function getSharedHookEvents(providerIds?: string[]): CanonicalHookEvent[];
27
+ /**
28
+ * Translate a canonical hook event to a provider-native event name.
29
+ *
30
+ * @param event - The canonical CAAMP event name
31
+ * @param providerId - The provider to translate for
32
+ * @returns The native event name, or null if the provider doesn't support it
33
+ */
34
+ export declare function toNativeHookEvent(event: CanonicalHookEvent, providerId: string): string | null;
35
+ /**
36
+ * Translate a provider-native event name back to its canonical equivalent.
37
+ *
38
+ * @param nativeEvent - The provider-specific event name
39
+ * @param providerId - The provider this event belongs to
40
+ * @returns The canonical event name, or null if no mapping exists
41
+ */
42
+ export declare function toCanonicalHookEvent(nativeEvent: string, providerId: string): CanonicalHookEvent | null;
43
+ /**
44
+ * Check if a provider supports a specific canonical hook event.
45
+ *
46
+ * @param event - The canonical event name
47
+ * @param providerId - The provider to check
48
+ * @returns True if the provider supports this event
23
49
  */
24
- export declare function getSharedHookEvents(providerIds?: string[]): CAAMPHookEvent[];
25
- export type { CAAMPHookEvent as ProviderHookEvent, HookEvent };
26
- export { getCommonHookEvents, getProvidersByHookEvent };
50
+ export declare function providerSupportsHookEvent(event: CanonicalHookEvent, providerId: string): boolean;
51
+ export type { CanonicalHookEvent as ProviderHookEvent, HookEvent };
52
+ export { getCommonHookEvents, getProvidersByHookEvent, supportsHook, toCanonical, toNative };
27
53
  //# sourceMappingURL=provider-hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider-hooks.d.ts","sourceRoot":"","sources":["../../src/hooks/provider-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,KAAK,SAAS,IAAI,cAAc,EAChC,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,YAAY,CAAC;AAEjE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAMlE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,CAE5E;AAED,YAAY,EAAE,cAAc,IAAI,iBAAiB,EAAE,SAAS,EAAE,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"provider-hooks.d.ts","sourceRoot":"","sources":["../../src/hooks/provider-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,SAAS,EAAuB,MAAM,YAAY,CAAC;AAEjE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAMlE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE,CAEhF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE9F;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,kBAAkB,GAAG,IAAI,CAE3B;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEhG;AAED,YAAY,EAAE,kBAAkB,IAAI,iBAAiB,EAAE,SAAS,EAAE,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC"}
@@ -2,8 +2,8 @@
2
2
  * Hook Registry System - Phase 2C of T5237
3
3
  *
4
4
  * Central registry for managing hook handlers with priority-based execution,
5
- * async dispatch, and best-effort error handling. Integrates with CAAMP 1.6.0
6
- * event definitions while providing CLEO's execution engine.
5
+ * async dispatch, and best-effort error handling. Integrates with CAAMP 1.9.1
6
+ * canonical event definitions while providing CLEO's execution engine.
7
7
  *
8
8
  * @module @cleocode/cleo/hooks/registry
9
9
  */
@@ -14,16 +14,31 @@ import type { HookConfig, HookEvent, HookPayload, HookRegistration } from './typ
14
14
  * Manages registration, priority-based ordering, and async dispatch
15
15
  * of hook handlers. Provides best-effort execution where errors in
16
16
  * one handler do not block others.
17
+ *
18
+ * Backward compatibility: handlers registered with legacy `on`-prefix
19
+ * event names (e.g. `onSessionStart`) are automatically remapped to their
20
+ * canonical equivalents (e.g. `SessionStart`) with a deprecation warning.
17
21
  */
18
22
  export declare class HookRegistry {
19
23
  private handlers;
20
24
  private config;
25
+ /**
26
+ * Resolve a potentially-legacy event name to its canonical equivalent.
27
+ *
28
+ * If the event name matches a known legacy `on`-prefix name, it is
29
+ * remapped and a deprecation warning is logged. Unknown names pass through
30
+ * unchanged so callers using the new canonical names are unaffected.
31
+ */
32
+ private resolveEvent;
21
33
  /**
22
34
  * Register a hook handler for a specific event.
23
35
  *
24
36
  * Handlers are sorted by priority (highest first) and executed
25
37
  * in parallel when the event is dispatched.
26
38
  *
39
+ * Backward compatibility: legacy `on`-prefix event names are automatically
40
+ * remapped to their canonical equivalents.
41
+ *
27
42
  * @param registration - The hook registration containing event, handler, priority, and ID
28
43
  * @returns A function to unregister the handler
29
44
  *
@@ -31,7 +46,7 @@ export declare class HookRegistry {
31
46
  * ```typescript
32
47
  * const unregister = hooks.register({
33
48
  * id: 'my-handler',
34
- * event: 'onSessionStart',
49
+ * event: 'SessionStart',
35
50
  * handler: async (root, payload) => { console.log('Session started'); },
36
51
  * priority: 100
37
52
  * });
@@ -47,14 +62,17 @@ export declare class HookRegistry {
47
62
  * execution. Errors in individual handlers are logged but do not block
48
63
  * other handlers or propagate to the caller.
49
64
  *
50
- * @param event - The CAAMP hook event to dispatch
65
+ * Backward compatibility: legacy `on`-prefix event names are automatically
66
+ * remapped to their canonical equivalents.
67
+ *
68
+ * @param event - The CAAMP canonical hook event to dispatch
51
69
  * @param projectRoot - The project root directory path
52
70
  * @param payload - The event payload (typed by event)
53
71
  * @returns Promise that resolves when all handlers have completed
54
72
  *
55
73
  * @example
56
74
  * ```typescript
57
- * await hooks.dispatch('onSessionStart', '/project', {
75
+ * await hooks.dispatch('SessionStart', '/project', {
58
76
  * timestamp: new Date().toISOString(),
59
77
  * sessionId: 'sess-123',
60
78
  * name: 'My Session',
@@ -67,6 +85,7 @@ export declare class HookRegistry {
67
85
  * Check if a specific event is currently enabled.
68
86
  *
69
87
  * Both the global enabled flag and the per-event flag must be true.
88
+ * Automatically resolves legacy `on`-prefix event names.
70
89
  *
71
90
  * @param event - The CAAMP hook event to check
72
91
  * @returns True if the event is enabled
@@ -82,7 +101,7 @@ export declare class HookRegistry {
82
101
  * @example
83
102
  * ```typescript
84
103
  * hooks.setConfig({ enabled: false }); // Disable all hooks
85
- * hooks.setConfig({ events: { onError: false } }); // Disable specific event
104
+ * hooks.setConfig({ events: { PostToolUseFailure: false } }); // Disable specific event
86
105
  * ```
87
106
  */
88
107
  setConfig(config: Partial<HookConfig>): void;
@@ -96,6 +115,7 @@ export declare class HookRegistry {
96
115
  * List all registered handlers for a specific event.
97
116
  *
98
117
  * Returns handlers in priority order (highest first).
118
+ * Automatically resolves legacy `on`-prefix event names.
99
119
  *
100
120
  * @param event - The CAAMP hook event
101
121
  * @returns Array of hook registrations
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/hooks/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAyBvF;;;;;;GAMG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,MAAM,CAAmC;IAEjD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAiB9E;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,QAAQ,CAAC,CAAC,SAAS,WAAW,EAClC,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,GACT,OAAO,CAAC,IAAI,CAAC;IAuBhB;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAIpC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAI5C;;;;OAIG;IACH,SAAS,IAAI,UAAU;IAIvB;;;;;;;OAOG;IACH,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,EAAE;CAGnD;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,cAAqB,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/hooks/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AA+CvF;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,MAAM,CAAmC;IAEjD;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAYpB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAoB9E;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,QAAQ,CAAC,CAAC,SAAS,WAAW,EAClC,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,CAAC,GACT,OAAO,CAAC,IAAI,CAAC;IA4BhB;;;;;;;;OAQG;IACH,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAKpC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAI5C;;;;OAIG;IACH,SAAS,IAAI,UAAU;IAIvB;;;;;;;;OAQG;IACH,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,EAAE;CAInD;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK,cAAqB,CAAC"}
@@ -2,17 +2,22 @@
2
2
  * Universal Hooks Core Types - Phase 2B of T5237
3
3
  *
4
4
  * This module defines the core type system for CLEO's Universal Hooks
5
- * integration with CAAMP 1.6.0. CLEO builds the hook registry and
6
- * execution system while CAAMP provides the event definitions.
5
+ * integration with CAAMP 1.9.1. CLEO builds the hook registry and
6
+ * execution system while CAAMP provides the canonical event definitions.
7
7
  *
8
8
  * @module @cleocode/cleo/hooks/types
9
9
  */
10
- import type { HookEvent as CAAMPHookEvent } from '@cleocode/caamp';
10
+ import type { CanonicalHookEvent } from '@cleocode/caamp';
11
+ import { buildHookMatrix, CANONICAL_HOOK_EVENTS, HOOK_CATEGORIES, supportsHook, toCanonical, toNative } from '@cleocode/caamp';
11
12
  export { getCommonHookEvents, getProvidersByHookEvent } from '@cleocode/caamp';
13
+ export type { CanonicalHookEvent };
14
+ export { buildHookMatrix, CANONICAL_HOOK_EVENTS, HOOK_CATEGORIES, supportsHook, toCanonical, toNative, };
12
15
  /**
13
- * CAAMP-defined hook events supported by provider capability discovery.
16
+ * CAAMP canonical hook event type.
17
+ *
18
+ * This is the normalized 16-event taxonomy from CAAMP 1.9.1.
14
19
  */
15
- export type ProviderHookEvent = CAAMPHookEvent;
20
+ export type ProviderHookEvent = CanonicalHookEvent;
16
21
  /**
17
22
  * CLEO-local coordination events used by the autonomous runtime.
18
23
  *
@@ -24,12 +29,12 @@ export type InternalHookEvent = (typeof INTERNAL_HOOK_EVENTS)[number];
24
29
  /**
25
30
  * Full CLEO hook event union.
26
31
  *
27
- * CAAMP defines provider-facing events; CLEO extends the registry with local
28
- * coordination events for autonomous execution.
32
+ * CAAMP defines provider-facing canonical events; CLEO extends the registry
33
+ * with local coordination events for autonomous execution.
29
34
  */
30
35
  export type HookEvent = ProviderHookEvent | InternalHookEvent;
31
36
  /**
32
- * Type guard for CAAMP/provider-discoverable hook events.
37
+ * Type guard for CAAMP/provider-discoverable canonical hook events.
33
38
  */
34
39
  export declare function isProviderHookEvent(event: HookEvent): event is ProviderHookEvent;
35
40
  /**
@@ -53,10 +58,10 @@ export interface HookPayload {
53
58
  metadata?: Record<string, unknown>;
54
59
  }
55
60
  /**
56
- * Payload for onSessionStart hook
61
+ * Payload for SessionStart hook (canonical: was onSessionStart)
57
62
  * Fired when a CLEO session begins
58
63
  */
59
- export interface OnSessionStartPayload extends HookPayload {
64
+ export interface SessionStartPayload extends HookPayload {
60
65
  /** Session identifier (required for session events) */
61
66
  sessionId: string;
62
67
  /** Human-readable session name */
@@ -66,11 +71,13 @@ export interface OnSessionStartPayload extends HookPayload {
66
71
  /** Optional agent identifier */
67
72
  agent?: string;
68
73
  }
74
+ /** @deprecated Use {@link SessionStartPayload} instead. Kept for backward compatibility. */
75
+ export type OnSessionStartPayload = SessionStartPayload;
69
76
  /**
70
- * Payload for onSessionEnd hook
77
+ * Payload for SessionEnd hook (canonical: was onSessionEnd)
71
78
  * Fired when a CLEO session ends
72
79
  */
73
- export interface OnSessionEndPayload extends HookPayload {
80
+ export interface SessionEndPayload extends HookPayload {
74
81
  /** Session identifier */
75
82
  sessionId: string;
76
83
  /** Session duration in seconds */
@@ -78,30 +85,42 @@ export interface OnSessionEndPayload extends HookPayload {
78
85
  /** Array of task IDs completed during this session */
79
86
  tasksCompleted: string[];
80
87
  }
88
+ /** @deprecated Use {@link SessionEndPayload} instead. Kept for backward compatibility. */
89
+ export type OnSessionEndPayload = SessionEndPayload;
81
90
  /**
82
- * Payload for onToolStart hook
91
+ * Payload for PreToolUse hook (canonical: was onToolStart)
83
92
  * Fired when a task/tool operation begins
84
93
  */
85
- export interface OnToolStartPayload extends HookPayload {
94
+ export interface PreToolUsePayload extends HookPayload {
86
95
  /** Task identifier */
87
96
  taskId: string;
88
97
  /** Human-readable task title */
89
98
  taskTitle: string;
90
99
  /** Optional ID of the previous task if sequential */
91
100
  previousTask?: string;
101
+ /** Optional tool name being invoked */
102
+ toolName?: string;
103
+ /** Optional structured input to the tool */
104
+ toolInput?: Record<string, unknown>;
92
105
  }
106
+ /** @deprecated Use {@link PreToolUsePayload} instead. Kept for backward compatibility. */
107
+ export type OnToolStartPayload = PreToolUsePayload;
93
108
  /**
94
- * Payload for onToolComplete hook
109
+ * Payload for PostToolUse hook (canonical: was onToolComplete)
95
110
  * Fired when a task/tool operation completes
96
111
  */
97
- export interface OnToolCompletePayload extends HookPayload {
112
+ export interface PostToolUsePayload extends HookPayload {
98
113
  /** Task identifier */
99
114
  taskId: string;
100
115
  /** Human-readable task title */
101
116
  taskTitle: string;
102
117
  /** Final status of the completed task */
103
118
  status: 'done' | 'archived' | 'cancelled';
119
+ /** Optional structured result from the tool */
120
+ toolResult?: Record<string, unknown>;
104
121
  }
122
+ /** @deprecated Use {@link PostToolUsePayload} instead. Kept for backward compatibility. */
123
+ export type OnToolCompletePayload = PostToolUsePayload;
105
124
  /**
106
125
  * Handler function type for hook events
107
126
  * Handlers receive project root and typed payload
@@ -132,22 +151,30 @@ export interface HookConfig {
132
151
  events: Record<HookEvent, boolean>;
133
152
  }
134
153
  /**
135
- * Payload for onFileChange hook
136
- * Fired when a tracked file is written, created, or deleted
154
+ * Payload for Notification hook (canonical: was onFileChange)
155
+ * Fired when a tracked file is written, created, or deleted, or for
156
+ * general-purpose notifications.
137
157
  */
138
- export interface OnFileChangePayload extends HookPayload {
158
+ export interface NotificationPayload extends HookPayload {
139
159
  /** Absolute or project-relative path of the changed file */
140
- filePath: string;
141
- /** Kind of filesystem change */
142
- changeType: 'write' | 'create' | 'delete';
160
+ filePath?: string;
161
+ /** Kind of filesystem change (for file-change notifications) */
162
+ changeType?: 'write' | 'create' | 'delete';
143
163
  /** File size in bytes after the change (absent for deletes) */
144
164
  sizeBytes?: number;
165
+ /** Optional notification message for non-file notifications */
166
+ message?: string;
145
167
  }
168
+ /** @deprecated Use {@link NotificationPayload} instead. Kept for backward compatibility. */
169
+ export type OnFileChangePayload = NotificationPayload & {
170
+ filePath: string;
171
+ changeType: 'write' | 'create' | 'delete';
172
+ };
146
173
  /**
147
- * Payload for onError hook
174
+ * Payload for PostToolUseFailure hook (canonical: was onError)
148
175
  * Fired when an operation fails with a structured error
149
176
  */
150
- export interface OnErrorPayload extends HookPayload {
177
+ export interface PostToolUseFailurePayload extends HookPayload {
151
178
  /** Numeric exit code or string error code */
152
179
  errorCode: number | string;
153
180
  /** Human-readable error message */
@@ -161,11 +188,13 @@ export interface OnErrorPayload extends HookPayload {
161
188
  /** Optional stack trace */
162
189
  stack?: string;
163
190
  }
191
+ /** @deprecated Use {@link PostToolUseFailurePayload} instead. Kept for backward compatibility. */
192
+ export type OnErrorPayload = PostToolUseFailurePayload;
164
193
  /**
165
- * Payload for onPromptSubmit hook
194
+ * Payload for PromptSubmit hook (canonical: was onPromptSubmit)
166
195
  * Fired when an agent submits a prompt through a gateway
167
196
  */
168
- export interface OnPromptSubmitPayload extends HookPayload {
197
+ export interface PromptSubmitPayload extends HookPayload {
169
198
  /** Gateway that received the prompt (query / mutate) */
170
199
  gateway: string;
171
200
  /** Target domain */
@@ -175,11 +204,13 @@ export interface OnPromptSubmitPayload extends HookPayload {
175
204
  /** Optional source identifier (e.g. agent name) */
176
205
  source?: string;
177
206
  }
207
+ /** @deprecated Use {@link PromptSubmitPayload} instead. Kept for backward compatibility. */
208
+ export type OnPromptSubmitPayload = PromptSubmitPayload;
178
209
  /**
179
- * Payload for onResponseComplete hook
210
+ * Payload for ResponseComplete hook (canonical: was onResponseComplete)
180
211
  * Fired when a gateway operation finishes (success or failure)
181
212
  */
182
- export interface OnResponseCompletePayload extends HookPayload {
213
+ export interface ResponseCompletePayload extends HookPayload {
183
214
  /** Gateway that handled the operation */
184
215
  gateway: string;
185
216
  /** Target domain */
@@ -193,6 +224,68 @@ export interface OnResponseCompletePayload extends HookPayload {
193
224
  /** Error code if the operation failed */
194
225
  errorCode?: string;
195
226
  }
227
+ /** @deprecated Use {@link ResponseCompletePayload} instead. Kept for backward compatibility. */
228
+ export type OnResponseCompletePayload = ResponseCompletePayload;
229
+ /**
230
+ * Payload for SubagentStart hook
231
+ * Fired when a subagent process is launched
232
+ */
233
+ export interface SubagentStartPayload extends HookPayload {
234
+ /** Subagent or worker identifier */
235
+ agentId: string;
236
+ /** Subagent role or archetype */
237
+ role?: string;
238
+ /** Task assigned to the subagent */
239
+ taskId?: string;
240
+ }
241
+ /**
242
+ * Payload for SubagentStop hook
243
+ * Fired when a subagent process completes
244
+ */
245
+ export interface SubagentStopPayload extends HookPayload {
246
+ /** Subagent or worker identifier */
247
+ agentId: string;
248
+ /** Completion status */
249
+ status?: 'complete' | 'partial' | 'blocked' | 'failed';
250
+ /** Task that was completed */
251
+ taskId?: string;
252
+ /** Optional summary reference */
253
+ summary?: string;
254
+ }
255
+ /**
256
+ * Payload for PreCompact hook
257
+ * Fired before context compaction begins
258
+ */
259
+ export interface PreCompactPayload extends HookPayload {
260
+ /** Estimated token count before compaction */
261
+ tokensBefore?: number;
262
+ /** Reason for compaction */
263
+ reason?: string;
264
+ }
265
+ /**
266
+ * Payload for PostCompact hook
267
+ * Fired after context compaction completes
268
+ */
269
+ export interface PostCompactPayload extends HookPayload {
270
+ /** Token count before compaction */
271
+ tokensBefore?: number;
272
+ /** Token count after compaction */
273
+ tokensAfter?: number;
274
+ /** Whether compaction succeeded */
275
+ success: boolean;
276
+ }
277
+ /**
278
+ * Payload for ConfigChange hook
279
+ * Fired when configuration is updated
280
+ */
281
+ export interface ConfigChangePayload extends HookPayload {
282
+ /** Configuration key that changed */
283
+ key: string;
284
+ /** Previous value */
285
+ previousValue?: unknown;
286
+ /** New value */
287
+ newValue?: unknown;
288
+ }
196
289
  /**
197
290
  * Payload for onWorkAvailable hook
198
291
  * Fired when the system detects ready work on a Loom/Tapestry
@@ -264,18 +357,19 @@ export interface OnPatrolPayload extends HookPayload {
264
357
  scope?: string;
265
358
  }
266
359
  /**
267
- * Mapping from CLEO internal lifecycle events to CAAMP hook events
268
- * This is where CLEO connects its lifecycle to CAAMP's event definitions
360
+ * Mapping from CLEO internal lifecycle events to CAAMP canonical hook event names.
361
+ *
362
+ * Updated for CAAMP 1.9.1 canonical taxonomy.
269
363
  */
270
364
  export declare const CLEO_TO_CAAMP_HOOK_MAP: {
271
- readonly 'session.start': "onSessionStart";
272
- readonly 'session.end': "onSessionEnd";
273
- readonly 'task.start': "onToolStart";
274
- readonly 'task.complete': "onToolComplete";
275
- readonly 'file.change': "onFileChange";
276
- readonly 'system.error': "onError";
277
- readonly 'prompt.submit': "onPromptSubmit";
278
- readonly 'response.complete': "onResponseComplete";
365
+ readonly 'session.start': "SessionStart";
366
+ readonly 'session.end': "SessionEnd";
367
+ readonly 'task.start': "PreToolUse";
368
+ readonly 'task.complete': "PostToolUse";
369
+ readonly 'file.change': "Notification";
370
+ readonly 'system.error': "PostToolUseFailure";
371
+ readonly 'prompt.submit': "PromptSubmit";
372
+ readonly 'response.complete': "ResponseComplete";
279
373
  };
280
374
  /**
281
375
  * Internal CLEO lifecycle events that drive autonomous coordination.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"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"}