@sekuire/sdk 0.1.9 → 0.1.11

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 (49) hide show
  1. package/README.md +69 -5
  2. package/dist/a2a-client.d.ts +95 -0
  3. package/dist/a2a-delegator.d.ts +58 -0
  4. package/dist/a2a-server.d.ts +84 -0
  5. package/dist/agent.d.ts +1 -1
  6. package/dist/beacon.d.ts +100 -0
  7. package/dist/compliance.d.ts +3 -3
  8. package/dist/config/loader.d.ts +38 -1
  9. package/dist/crypto.d.ts +0 -3
  10. package/dist/http/base-client.d.ts +25 -0
  11. package/dist/http/index.d.ts +2 -0
  12. package/dist/identity.d.ts +11 -2
  13. package/dist/index.d.ts +1315 -175
  14. package/dist/index.esm.js +16151 -5209
  15. package/dist/index.js +16178 -5207
  16. package/dist/llm/anthropic.d.ts +4 -12
  17. package/dist/llm/base-provider.d.ts +13 -0
  18. package/dist/llm/google.d.ts +4 -12
  19. package/dist/llm/index.d.ts +0 -12
  20. package/dist/llm/ollama.d.ts +4 -11
  21. package/dist/llm/openai.d.ts +4 -12
  22. package/dist/llm/types.d.ts +19 -12
  23. package/dist/logger.d.ts +4 -0
  24. package/dist/memory/base.d.ts +7 -0
  25. package/dist/memory/cloudflare-d1.d.ts +24 -0
  26. package/dist/memory/cloudflare-kv.d.ts +25 -0
  27. package/dist/memory/convex.d.ts +21 -0
  28. package/dist/memory/dynamodb.d.ts +28 -0
  29. package/dist/memory/in-memory.d.ts +1 -0
  30. package/dist/memory/index.d.ts +28 -1
  31. package/dist/memory/postgres.d.ts +5 -1
  32. package/dist/memory/redis.d.ts +5 -1
  33. package/dist/memory/registry.d.ts +12 -0
  34. package/dist/memory/sqlite.d.ts +22 -0
  35. package/dist/memory/turso.d.ts +23 -0
  36. package/dist/memory/upstash.d.ts +22 -0
  37. package/dist/new-agent.d.ts +2 -2
  38. package/dist/platform-url.d.ts +1 -0
  39. package/dist/registry-client.d.ts +171 -0
  40. package/dist/sdk.d.ts +117 -0
  41. package/dist/telemetry/exporter.d.ts +21 -0
  42. package/dist/telemetry/index.d.ts +22 -0
  43. package/dist/tools/agent-invocation.d.ts +16 -68
  44. package/dist/tools/remote.d.ts +1 -1
  45. package/dist/types/a2a-types.d.ts +194 -0
  46. package/dist/types.d.ts +1 -0
  47. package/dist/utils.d.ts +0 -4
  48. package/dist/worker.d.ts +104 -0
  49. package/package.json +40 -2
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Sekuire Task Worker
3
+ *
4
+ * Handles SSE connection to Core for real-time task delivery.
5
+ * Provides `onTask()` API for agents to register task handlers.
6
+ */
7
+ export interface TaskEvent {
8
+ task_id: string;
9
+ capability?: string;
10
+ tool?: string;
11
+ input: Record<string, unknown>;
12
+ workspace_id: string;
13
+ requester_agent_id?: string;
14
+ parent_task_id?: string;
15
+ trace_id?: string;
16
+ workflow_id?: string;
17
+ }
18
+ export interface TaskContext {
19
+ taskId: string;
20
+ workspaceId: string;
21
+ requesterId?: string;
22
+ parentTaskId?: string;
23
+ traceId?: string;
24
+ workflowId?: string;
25
+ }
26
+ export type TaskHandler = (ctx: TaskContext, input: Record<string, unknown>) => Promise<unknown>;
27
+ export interface WorkerConfig {
28
+ apiBaseUrl: string;
29
+ token: string;
30
+ agentId?: string;
31
+ apiKey?: string;
32
+ heartbeatIntervalMs?: number;
33
+ reconnectDelayMs?: number;
34
+ maxReconnectDelayMs?: number;
35
+ deploymentUrl?: string;
36
+ }
37
+ export declare class TaskWorker {
38
+ private eventSource;
39
+ private handlers;
40
+ private config;
41
+ private heartbeatInterval;
42
+ private reconnectDelay;
43
+ private isConnected;
44
+ private isPaused;
45
+ private installationId;
46
+ private onCommandCallback?;
47
+ constructor(config: WorkerConfig);
48
+ /**
49
+ * Register a handler for a specific capability
50
+ */
51
+ onTask(capability: string, handler: TaskHandler): this;
52
+ /**
53
+ * Start the worker (connects to SSE stream and starts heartbeat)
54
+ */
55
+ start(): Promise<void>;
56
+ /**
57
+ * Stop the worker gracefully
58
+ */
59
+ stop(): Promise<void>;
60
+ /**
61
+ * Check if the worker is currently paused
62
+ */
63
+ getIsPaused(): boolean;
64
+ /**
65
+ * Register a callback for control commands
66
+ */
67
+ onCommand(callback: (cmd: {
68
+ type: string;
69
+ reason?: string;
70
+ }) => void): this;
71
+ /**
72
+ * Handle control commands from SSE or heartbeat fallback
73
+ */
74
+ private handleCommand;
75
+ /**
76
+ * Get API key from config or environment
77
+ */
78
+ private getApiKey;
79
+ /**
80
+ * Connect to SSE stream
81
+ */
82
+ private connect;
83
+ /**
84
+ * Schedule reconnection with exponential backoff
85
+ */
86
+ private scheduleReconnect;
87
+ /**
88
+ * Handle incoming task
89
+ */
90
+ private handleTask;
91
+ /**
92
+ * Report task completion to Core
93
+ */
94
+ private completeTask;
95
+ /**
96
+ * Register this agent installation with Sekuire
97
+ */
98
+ private bootstrap;
99
+ /**
100
+ * Start heartbeat loop
101
+ */
102
+ private startHeartbeat;
103
+ }
104
+ export declare function createWorker(config: WorkerConfig): TaskWorker;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sekuire/sdk",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Sekuire Identity Protocol SDK for TypeScript/JavaScript",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -56,10 +56,16 @@
56
56
  "dependencies": {
57
57
  "@anthropic-ai/sdk": "^0.71.2",
58
58
  "@google/generative-ai": "^0.24.1",
59
+ "@opentelemetry/api": "^1.9.0",
60
+ "@opentelemetry/exporter-trace-otlp-http": "^0.57.0",
61
+ "@opentelemetry/resources": "^1.29.0",
62
+ "@opentelemetry/sdk-trace-base": "^1.29.0",
63
+ "@opentelemetry/semantic-conventions": "^1.29.0",
59
64
  "axios": "^1.13.2",
60
65
  "blake3": "^2.1.7",
61
66
  "cheerio": "^1.1.2",
62
67
  "dotenv": "^17.2.3",
68
+ "eventsource": "^2.0.2",
63
69
  "js-yaml": "^4.1.1",
64
70
  "openai": "^6.15.0",
65
71
  "tweetnacl": "^1.0.3",
@@ -67,15 +73,23 @@
67
73
  "zod": "^3.22.4"
68
74
  },
69
75
  "devDependencies": {
76
+ "@aws-sdk/client-dynamodb": "^3.700.0",
77
+ "@aws-sdk/lib-dynamodb": "^3.700.0",
70
78
  "@biomejs/biome": "^1.9.4",
79
+ "@libsql/client": "^0.14.0",
80
+ "@types/better-sqlite3": "^7.6.0",
81
+ "better-sqlite3": "^11.0.0",
71
82
  "@rollup/plugin-commonjs": "^25.0.8",
72
83
  "@rollup/plugin-json": "^6.1.0",
73
84
  "@rollup/plugin-node-resolve": "^15.3.1",
74
85
  "@rollup/plugin-typescript": "^11.1.6",
86
+ "@types/eventsource": "^1.1.15",
75
87
  "@types/js-yaml": "^4.0.9",
76
88
  "@types/node": "^20.19.27",
77
89
  "@types/uuid": "^9.0.8",
90
+ "@upstash/redis": "^1.34.0",
78
91
  "@vitest/coverage-v8": "^1.6.1",
92
+ "convex": "^1.17.0",
79
93
  "jsdom": "^23.2.0",
80
94
  "rollup": "^4.54.0",
81
95
  "rollup-plugin-dts": "^6.3.0",
@@ -86,7 +100,13 @@
86
100
  "peerDependencies": {
87
101
  "node-fetch": "^2.6.0",
88
102
  "pg": "^8.11.0",
89
- "redis": "^4.6.0"
103
+ "redis": "^4.6.0",
104
+ "better-sqlite3": "^11.0.0",
105
+ "@upstash/redis": "^1.28.0",
106
+ "@aws-sdk/client-dynamodb": "^3.500.0",
107
+ "@aws-sdk/lib-dynamodb": "^3.500.0",
108
+ "@libsql/client": "^0.5.0",
109
+ "convex": "^1.10.0"
90
110
  },
91
111
  "peerDependenciesMeta": {
92
112
  "node-fetch": {
@@ -97,6 +117,24 @@
97
117
  },
98
118
  "pg": {
99
119
  "optional": true
120
+ },
121
+ "better-sqlite3": {
122
+ "optional": true
123
+ },
124
+ "@upstash/redis": {
125
+ "optional": true
126
+ },
127
+ "@aws-sdk/client-dynamodb": {
128
+ "optional": true
129
+ },
130
+ "@aws-sdk/lib-dynamodb": {
131
+ "optional": true
132
+ },
133
+ "@libsql/client": {
134
+ "optional": true
135
+ },
136
+ "convex": {
137
+ "optional": true
100
138
  }
101
139
  },
102
140
  "optionalDependencies": {