@chucky.cloud/sdk 0.1.0

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 (86) hide show
  1. package/README.md +330 -0
  2. package/dist/browser.d.ts +8 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +12 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/client/ChuckyClient.d.ts +187 -0
  7. package/dist/client/ChuckyClient.d.ts.map +1 -0
  8. package/dist/client/ChuckyClient.js +232 -0
  9. package/dist/client/ChuckyClient.js.map +1 -0
  10. package/dist/client/Session.d.ts +146 -0
  11. package/dist/client/Session.d.ts.map +1 -0
  12. package/dist/client/Session.js +405 -0
  13. package/dist/client/Session.js.map +1 -0
  14. package/dist/client/index.d.ts +10 -0
  15. package/dist/client/index.d.ts.map +1 -0
  16. package/dist/client/index.js +8 -0
  17. package/dist/client/index.js.map +1 -0
  18. package/dist/index.d.ts +69 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +73 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/node.d.ts +8 -0
  23. package/dist/node.d.ts.map +1 -0
  24. package/dist/node.js +11 -0
  25. package/dist/node.js.map +1 -0
  26. package/dist/tools/McpServer.d.ts +117 -0
  27. package/dist/tools/McpServer.d.ts.map +1 -0
  28. package/dist/tools/McpServer.js +142 -0
  29. package/dist/tools/McpServer.js.map +1 -0
  30. package/dist/tools/index.d.ts +9 -0
  31. package/dist/tools/index.d.ts.map +1 -0
  32. package/dist/tools/index.js +8 -0
  33. package/dist/tools/index.js.map +1 -0
  34. package/dist/tools/tool.d.ts +146 -0
  35. package/dist/tools/tool.d.ts.map +1 -0
  36. package/dist/tools/tool.js +232 -0
  37. package/dist/tools/tool.js.map +1 -0
  38. package/dist/transport/Transport.d.ts +82 -0
  39. package/dist/transport/Transport.d.ts.map +1 -0
  40. package/dist/transport/Transport.js +45 -0
  41. package/dist/transport/Transport.js.map +1 -0
  42. package/dist/transport/WebSocketTransport.d.ts +78 -0
  43. package/dist/transport/WebSocketTransport.d.ts.map +1 -0
  44. package/dist/transport/WebSocketTransport.js +253 -0
  45. package/dist/transport/WebSocketTransport.js.map +1 -0
  46. package/dist/transport/index.d.ts +10 -0
  47. package/dist/transport/index.d.ts.map +1 -0
  48. package/dist/transport/index.js +8 -0
  49. package/dist/transport/index.js.map +1 -0
  50. package/dist/types/index.d.ts +12 -0
  51. package/dist/types/index.d.ts.map +1 -0
  52. package/dist/types/index.js +8 -0
  53. package/dist/types/index.js.map +1 -0
  54. package/dist/types/messages.d.ts +195 -0
  55. package/dist/types/messages.d.ts.map +1 -0
  56. package/dist/types/messages.js +70 -0
  57. package/dist/types/messages.js.map +1 -0
  58. package/dist/types/options.d.ts +210 -0
  59. package/dist/types/options.d.ts.map +1 -0
  60. package/dist/types/options.js +8 -0
  61. package/dist/types/options.js.map +1 -0
  62. package/dist/types/results.d.ts +182 -0
  63. package/dist/types/results.d.ts.map +1 -0
  64. package/dist/types/results.js +7 -0
  65. package/dist/types/results.js.map +1 -0
  66. package/dist/types/token.d.ts +124 -0
  67. package/dist/types/token.d.ts.map +1 -0
  68. package/dist/types/token.js +7 -0
  69. package/dist/types/token.js.map +1 -0
  70. package/dist/types/tools.d.ts +160 -0
  71. package/dist/types/tools.d.ts.map +1 -0
  72. package/dist/types/tools.js +8 -0
  73. package/dist/types/tools.js.map +1 -0
  74. package/dist/utils/errors.d.ts +80 -0
  75. package/dist/utils/errors.d.ts.map +1 -0
  76. package/dist/utils/errors.js +158 -0
  77. package/dist/utils/errors.js.map +1 -0
  78. package/dist/utils/index.d.ts +8 -0
  79. package/dist/utils/index.d.ts.map +1 -0
  80. package/dist/utils/index.js +8 -0
  81. package/dist/utils/index.js.map +1 -0
  82. package/dist/utils/token.d.ts +93 -0
  83. package/dist/utils/token.d.ts.map +1 -0
  84. package/dist/utils/token.js +195 -0
  85. package/dist/utils/token.js.map +1 -0
  86. package/package.json +63 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../src/types/results.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Result Types
3
+ *
4
+ * Types for responses from sessions and prompts.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=results.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/types/results.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,124 @@
1
+ /**
2
+ * Budget Token Types
3
+ *
4
+ * Types for JWT tokens used for authentication and budget control.
5
+ */
6
+ /**
7
+ * Budget window types
8
+ */
9
+ export type BudgetWindow = 'hour' | 'day' | 'week' | 'month';
10
+ /**
11
+ * Budget configuration in a token
12
+ */
13
+ export interface TokenBudget {
14
+ /** AI budget in microdollars (1 USD = 1,000,000 microdollars) */
15
+ ai: number;
16
+ /** Compute budget in seconds */
17
+ compute: number;
18
+ /** Budget window period */
19
+ window: BudgetWindow;
20
+ /** When current period started (ISO 8601) */
21
+ windowStart: string;
22
+ }
23
+ /**
24
+ * Permission configuration in a token
25
+ */
26
+ export interface TokenPermissions {
27
+ /** Allowed tool names */
28
+ tools?: string[];
29
+ /** Blocked tool names */
30
+ blockedTools?: string[];
31
+ /** Maximum turns per conversation */
32
+ maxTurns?: number;
33
+ /** Model restriction */
34
+ model?: string;
35
+ }
36
+ /**
37
+ * SDK configuration overrides in a token
38
+ * When present, these values SUPERSEDE options provided by the SDK client
39
+ */
40
+ export interface TokenSdkConfig {
41
+ /** Model to use */
42
+ model?: string;
43
+ /** System prompt */
44
+ systemPrompt?: string;
45
+ /** Tools configuration */
46
+ tools?: unknown;
47
+ /** Allowed tools */
48
+ allowedTools?: string[];
49
+ /** Disallowed tools */
50
+ disallowedTools?: string[];
51
+ /** Maximum turns */
52
+ maxTurns?: number;
53
+ /** Maximum budget in USD */
54
+ maxBudgetUsd?: number;
55
+ /** Maximum thinking tokens */
56
+ maxThinkingTokens?: number;
57
+ /** Permission mode */
58
+ permissionMode?: string;
59
+ /** Allow dangerous skip permissions */
60
+ allowDangerouslySkipPermissions?: boolean;
61
+ /** MCP servers configuration */
62
+ mcpServers?: unknown[];
63
+ /** Agents configuration */
64
+ agents?: unknown;
65
+ /** Betas configuration */
66
+ betas?: string[];
67
+ /** Output format */
68
+ outputFormat?: string;
69
+ /** Environment variables */
70
+ env?: Record<string, string>;
71
+ }
72
+ /**
73
+ * Budget token payload (JWT claims)
74
+ */
75
+ export interface BudgetTokenPayload {
76
+ /** User ID - unique identifier for the end user */
77
+ sub: string;
78
+ /** Project/Issuer ID - identifies which project */
79
+ iss: string;
80
+ /** Token expiry timestamp (Unix seconds) */
81
+ exp: number;
82
+ /** Issued at timestamp (Unix seconds) */
83
+ iat?: number;
84
+ /** Budget declaration */
85
+ budget: TokenBudget;
86
+ /** Permission configuration (optional) */
87
+ permissions?: TokenPermissions;
88
+ /** SDK config overrides (optional) */
89
+ sdkConfig?: TokenSdkConfig;
90
+ }
91
+ /**
92
+ * Options for creating a budget token
93
+ */
94
+ export interface CreateTokenOptions {
95
+ /** User ID */
96
+ userId: string;
97
+ /** Project/Issuer ID (UUID) */
98
+ projectId: string;
99
+ /** HMAC secret key for signing */
100
+ secret: string;
101
+ /** Token expiry duration in seconds (default: 3600 = 1 hour) */
102
+ expiresIn?: number;
103
+ /** Budget configuration */
104
+ budget: TokenBudget;
105
+ /** Permission configuration */
106
+ permissions?: TokenPermissions;
107
+ /** SDK config overrides */
108
+ sdkConfig?: TokenSdkConfig;
109
+ }
110
+ /**
111
+ * Decoded token result
112
+ */
113
+ export interface DecodedToken {
114
+ /** Token header */
115
+ header: {
116
+ alg: string;
117
+ typ: string;
118
+ };
119
+ /** Token payload */
120
+ payload: BudgetTokenPayload;
121
+ /** Token signature (base64url) */
122
+ signature: string;
123
+ }
124
+ //# sourceMappingURL=token.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/types/token.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Budget Token Types
3
+ *
4
+ * Types for JWT tokens used for authentication and budget control.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/types/token.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Tool Definition Types
3
+ *
4
+ * Types for defining tools that can be executed by Claude.
5
+ * Supports both server-side and browser-side execution.
6
+ */
7
+ /**
8
+ * JSON Schema property types
9
+ */
10
+ export type JsonSchemaType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'null';
11
+ /**
12
+ * JSON Schema property definition
13
+ */
14
+ export interface JsonSchemaProperty {
15
+ /** Property type */
16
+ type: JsonSchemaType;
17
+ /** Human-readable description */
18
+ description?: string;
19
+ /** Enumeration of allowed values */
20
+ enum?: string[];
21
+ /** Default value */
22
+ default?: unknown;
23
+ /** For arrays: schema of array items */
24
+ items?: JsonSchemaProperty;
25
+ /** For objects: nested properties */
26
+ properties?: Record<string, JsonSchemaProperty>;
27
+ /** For objects: required property names */
28
+ required?: string[];
29
+ /** Minimum value (for numbers) */
30
+ minimum?: number;
31
+ /** Maximum value (for numbers) */
32
+ maximum?: number;
33
+ /** Minimum length (for strings/arrays) */
34
+ minLength?: number;
35
+ /** Maximum length (for strings/arrays) */
36
+ maxLength?: number;
37
+ /** Pattern (for strings) */
38
+ pattern?: string;
39
+ }
40
+ /**
41
+ * JSON Schema for tool input
42
+ */
43
+ export interface ToolInputSchema {
44
+ /** Always 'object' for tool inputs */
45
+ type: 'object';
46
+ /** Property definitions */
47
+ properties: Record<string, JsonSchemaProperty>;
48
+ /** Required property names */
49
+ required?: string[];
50
+ /** Allow additional properties */
51
+ additionalProperties?: boolean;
52
+ }
53
+ /**
54
+ * Tool content types for results
55
+ */
56
+ export type ToolContentType = 'text' | 'image' | 'resource';
57
+ /**
58
+ * Text content in tool result
59
+ */
60
+ export interface TextContent {
61
+ type: 'text';
62
+ text: string;
63
+ }
64
+ /**
65
+ * Image content in tool result
66
+ */
67
+ export interface ImageContent {
68
+ type: 'image';
69
+ /** Base64-encoded image data */
70
+ data: string;
71
+ /** MIME type (e.g., 'image/png') */
72
+ mimeType: string;
73
+ }
74
+ /**
75
+ * Resource content in tool result
76
+ */
77
+ export interface ResourceContent {
78
+ type: 'resource';
79
+ /** Resource URI */
80
+ uri: string;
81
+ /** MIME type */
82
+ mimeType?: string;
83
+ /** Resource text content */
84
+ text?: string;
85
+ /** Resource binary data (base64) */
86
+ blob?: string;
87
+ }
88
+ /**
89
+ * Union type for all tool content
90
+ */
91
+ export type ToolContent = TextContent | ImageContent | ResourceContent;
92
+ /**
93
+ * Tool execution result
94
+ */
95
+ export interface ToolResult {
96
+ /** Result content */
97
+ content: ToolContent[];
98
+ /** Whether this is an error result */
99
+ isError?: boolean;
100
+ }
101
+ /**
102
+ * Where the tool should be executed
103
+ */
104
+ export type ToolExecutionLocation = 'server' | 'browser';
105
+ /**
106
+ * Tool handler function type
107
+ */
108
+ export type ToolHandler<TInput = Record<string, unknown>> = (input: TInput) => ToolResult | Promise<ToolResult>;
109
+ /**
110
+ * Tool definition
111
+ */
112
+ export interface ToolDefinition<TInput = Record<string, unknown>> {
113
+ /** Unique tool name */
114
+ name: string;
115
+ /** Human-readable description of what the tool does */
116
+ description: string;
117
+ /** JSON Schema defining the input parameters */
118
+ inputSchema: ToolInputSchema;
119
+ /**
120
+ * Where the tool should be executed
121
+ * @default 'server'
122
+ */
123
+ executeIn?: ToolExecutionLocation;
124
+ /**
125
+ * Handler function (required for browser tools, optional for server tools)
126
+ */
127
+ handler?: ToolHandler<TInput>;
128
+ }
129
+ /**
130
+ * MCP Server definition
131
+ */
132
+ export interface McpServerDefinition {
133
+ /** Server name */
134
+ name: string;
135
+ /** Server version */
136
+ version?: string;
137
+ /** Tools provided by this server */
138
+ tools: ToolDefinition[];
139
+ }
140
+ /**
141
+ * Tool call from the model
142
+ */
143
+ export interface ToolCall {
144
+ /** Unique call ID */
145
+ callId: string;
146
+ /** Tool name */
147
+ toolName: string;
148
+ /** Input arguments */
149
+ input: Record<string, unknown>;
150
+ }
151
+ /**
152
+ * Tool call response
153
+ */
154
+ export interface ToolCallResponse {
155
+ /** Call ID (must match the tool call) */
156
+ callId: string;
157
+ /** Tool execution result */
158
+ result: ToolResult;
159
+ }
160
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/types/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,OAAO,GACP,QAAQ,GACR,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oBAAoB;IACpB,IAAI,EAAE,cAAc,CAAC;IACrB,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wCAAwC;IACxC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,2BAA2B;IAC3B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC/C,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kCAAkC;IAClC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,mBAAmB;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,eAAe,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,qBAAqB;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAC1D,KAAK,EAAE,MAAM,KACV,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC9D,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,WAAW,EAAE,eAAe,CAAC;IAC7B;;;OAGG;IACH,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oCAAoC;IACpC,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,MAAM,EAAE,UAAU,CAAC;CACpB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Tool Definition Types
3
+ *
4
+ * Types for defining tools that can be executed by Claude.
5
+ * Supports both server-side and browser-side execution.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/types/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Error Classes
3
+ *
4
+ * Custom error types for the Chucky SDK.
5
+ */
6
+ /**
7
+ * Base error class for Chucky SDK errors
8
+ */
9
+ export declare class ChuckyError extends Error {
10
+ /** Error code */
11
+ readonly code: string;
12
+ /** Additional error details */
13
+ readonly details?: Record<string, unknown>;
14
+ constructor(message: string, code: string, details?: Record<string, unknown>);
15
+ }
16
+ /**
17
+ * Connection error
18
+ */
19
+ export declare class ConnectionError extends ChuckyError {
20
+ constructor(message: string, details?: Record<string, unknown>);
21
+ }
22
+ /**
23
+ * Authentication error
24
+ */
25
+ export declare class AuthenticationError extends ChuckyError {
26
+ constructor(message: string, details?: Record<string, unknown>);
27
+ }
28
+ /**
29
+ * Budget exceeded error
30
+ */
31
+ export declare class BudgetExceededError extends ChuckyError {
32
+ constructor(message: string, details?: Record<string, unknown>);
33
+ }
34
+ /**
35
+ * Concurrency limit error
36
+ */
37
+ export declare class ConcurrencyLimitError extends ChuckyError {
38
+ constructor(message: string, details?: Record<string, unknown>);
39
+ }
40
+ /**
41
+ * Rate limit error
42
+ */
43
+ export declare class RateLimitError extends ChuckyError {
44
+ constructor(message: string, details?: Record<string, unknown>);
45
+ }
46
+ /**
47
+ * Session error
48
+ */
49
+ export declare class SessionError extends ChuckyError {
50
+ constructor(message: string, details?: Record<string, unknown>);
51
+ }
52
+ /**
53
+ * Tool execution error
54
+ */
55
+ export declare class ToolExecutionError extends ChuckyError {
56
+ /** Tool name */
57
+ readonly toolName: string;
58
+ constructor(message: string, toolName: string, details?: Record<string, unknown>);
59
+ }
60
+ /**
61
+ * Timeout error
62
+ */
63
+ export declare class TimeoutError extends ChuckyError {
64
+ constructor(message: string, details?: Record<string, unknown>);
65
+ }
66
+ /**
67
+ * Validation error
68
+ */
69
+ export declare class ValidationError extends ChuckyError {
70
+ constructor(message: string, details?: Record<string, unknown>);
71
+ }
72
+ /**
73
+ * Parse error code from error message
74
+ */
75
+ export declare function parseErrorCode(message: string): string | null;
76
+ /**
77
+ * Create appropriate error from message and optional code
78
+ */
79
+ export declare function createError(message: string, code?: string): ChuckyError;
80
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC,iBAAiB;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAE/B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAW7E;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;gBACxC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,WAAW;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,gBAAgB;IAChB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEd,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAKjF;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,WAAW;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAI/D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqB7D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAuBvE"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Error Classes
3
+ *
4
+ * Custom error types for the Chucky SDK.
5
+ */
6
+ /**
7
+ * Base error class for Chucky SDK errors
8
+ */
9
+ export class ChuckyError extends Error {
10
+ /** Error code */
11
+ code;
12
+ /** Additional error details */
13
+ details;
14
+ constructor(message, code, details) {
15
+ super(message);
16
+ this.name = 'ChuckyError';
17
+ this.code = code;
18
+ this.details = details;
19
+ // Maintains proper stack trace for where the error was thrown
20
+ if (Error.captureStackTrace) {
21
+ Error.captureStackTrace(this, ChuckyError);
22
+ }
23
+ }
24
+ }
25
+ /**
26
+ * Connection error
27
+ */
28
+ export class ConnectionError extends ChuckyError {
29
+ constructor(message, details) {
30
+ super(message, 'CONNECTION_ERROR', details);
31
+ this.name = 'ConnectionError';
32
+ }
33
+ }
34
+ /**
35
+ * Authentication error
36
+ */
37
+ export class AuthenticationError extends ChuckyError {
38
+ constructor(message, details) {
39
+ super(message, 'AUTHENTICATION_ERROR', details);
40
+ this.name = 'AuthenticationError';
41
+ }
42
+ }
43
+ /**
44
+ * Budget exceeded error
45
+ */
46
+ export class BudgetExceededError extends ChuckyError {
47
+ constructor(message, details) {
48
+ super(message, 'BUDGET_EXCEEDED', details);
49
+ this.name = 'BudgetExceededError';
50
+ }
51
+ }
52
+ /**
53
+ * Concurrency limit error
54
+ */
55
+ export class ConcurrencyLimitError extends ChuckyError {
56
+ constructor(message, details) {
57
+ super(message, 'CONCURRENCY_LIMIT', details);
58
+ this.name = 'ConcurrencyLimitError';
59
+ }
60
+ }
61
+ /**
62
+ * Rate limit error
63
+ */
64
+ export class RateLimitError extends ChuckyError {
65
+ constructor(message, details) {
66
+ super(message, 'RATE_LIMIT', details);
67
+ this.name = 'RateLimitError';
68
+ }
69
+ }
70
+ /**
71
+ * Session error
72
+ */
73
+ export class SessionError extends ChuckyError {
74
+ constructor(message, details) {
75
+ super(message, 'SESSION_ERROR', details);
76
+ this.name = 'SessionError';
77
+ }
78
+ }
79
+ /**
80
+ * Tool execution error
81
+ */
82
+ export class ToolExecutionError extends ChuckyError {
83
+ /** Tool name */
84
+ toolName;
85
+ constructor(message, toolName, details) {
86
+ super(message, 'TOOL_EXECUTION_ERROR', { ...details, toolName });
87
+ this.name = 'ToolExecutionError';
88
+ this.toolName = toolName;
89
+ }
90
+ }
91
+ /**
92
+ * Timeout error
93
+ */
94
+ export class TimeoutError extends ChuckyError {
95
+ constructor(message, details) {
96
+ super(message, 'TIMEOUT', details);
97
+ this.name = 'TimeoutError';
98
+ }
99
+ }
100
+ /**
101
+ * Validation error
102
+ */
103
+ export class ValidationError extends ChuckyError {
104
+ constructor(message, details) {
105
+ super(message, 'VALIDATION_ERROR', details);
106
+ this.name = 'ValidationError';
107
+ }
108
+ }
109
+ /**
110
+ * Parse error code from error message
111
+ */
112
+ export function parseErrorCode(message) {
113
+ // Common error patterns
114
+ const patterns = [
115
+ { pattern: /budget.*exceed/i, code: 'BUDGET_EXCEEDED' },
116
+ { pattern: /concurrency.*limit/i, code: 'CONCURRENCY_LIMIT' },
117
+ { pattern: /rate.*limit/i, code: 'RATE_LIMIT' },
118
+ { pattern: /auth|unauthorized|forbidden/i, code: 'AUTHENTICATION_ERROR' },
119
+ { pattern: /timeout/i, code: 'TIMEOUT' },
120
+ { pattern: /connect|disconnect|websocket/i, code: 'CONNECTION_ERROR' },
121
+ { pattern: /session/i, code: 'SESSION_ERROR' },
122
+ { pattern: /tool/i, code: 'TOOL_EXECUTION_ERROR' },
123
+ { pattern: /invalid|validation/i, code: 'VALIDATION_ERROR' },
124
+ ];
125
+ for (const { pattern, code } of patterns) {
126
+ if (pattern.test(message)) {
127
+ return code;
128
+ }
129
+ }
130
+ return null;
131
+ }
132
+ /**
133
+ * Create appropriate error from message and optional code
134
+ */
135
+ export function createError(message, code) {
136
+ const errorCode = code || parseErrorCode(message) || 'UNKNOWN_ERROR';
137
+ switch (errorCode) {
138
+ case 'CONNECTION_ERROR':
139
+ return new ConnectionError(message);
140
+ case 'AUTHENTICATION_ERROR':
141
+ return new AuthenticationError(message);
142
+ case 'BUDGET_EXCEEDED':
143
+ return new BudgetExceededError(message);
144
+ case 'CONCURRENCY_LIMIT':
145
+ return new ConcurrencyLimitError(message);
146
+ case 'RATE_LIMIT':
147
+ return new RateLimitError(message);
148
+ case 'SESSION_ERROR':
149
+ return new SessionError(message);
150
+ case 'TIMEOUT':
151
+ return new TimeoutError(message);
152
+ case 'VALIDATION_ERROR':
153
+ return new ValidationError(message);
154
+ default:
155
+ return new ChuckyError(message, errorCode);
156
+ }
157
+ }
158
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Utils Index
3
+ *
4
+ * Re-exports all utility functions.
5
+ */
6
+ export { createToken, decodeToken, verifyToken, isTokenExpired, createBudget, } from './token.js';
7
+ export { ChuckyError, ConnectionError, AuthenticationError, BudgetExceededError, ConcurrencyLimitError, RateLimitError, SessionError, ToolExecutionError, TimeoutError, ValidationError, parseErrorCode, createError, } from './errors.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,EACd,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,WAAW,GACZ,MAAM,aAAa,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Utils Index
3
+ *
4
+ * Re-exports all utility functions.
5
+ */
6
+ export { createToken, decodeToken, verifyToken, isTokenExpired, createBudget, } from './token.js';
7
+ export { ChuckyError, ConnectionError, AuthenticationError, BudgetExceededError, ConcurrencyLimitError, RateLimitError, SessionError, ToolExecutionError, TimeoutError, ValidationError, parseErrorCode, createError, } from './errors.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,cAAc,EACd,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,cAAc,EACd,WAAW,GACZ,MAAM,aAAa,CAAC"}