@projectaria/cf-agents 0.1.1 → 0.1.3

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 (38) hide show
  1. package/README.md +358 -253
  2. package/dist/AriaCFChatAgent.d.ts +37 -0
  3. package/dist/AriaCFChatAgent.d.ts.map +1 -0
  4. package/dist/AriaCFChatAgent.js +203 -0
  5. package/dist/AriaCFChatAgent.js.map +1 -0
  6. package/dist/CloudflareSessionStore.d.ts +37 -0
  7. package/dist/CloudflareSessionStore.d.ts.map +1 -0
  8. package/dist/CloudflareSessionStore.js +101 -0
  9. package/dist/CloudflareSessionStore.js.map +1 -0
  10. package/dist/aria-to-ui-stream.d.ts +21 -0
  11. package/dist/aria-to-ui-stream.d.ts.map +1 -0
  12. package/dist/aria-to-ui-stream.js +118 -0
  13. package/dist/aria-to-ui-stream.js.map +1 -0
  14. package/dist/index.d.ts +25 -22
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +21 -23
  17. package/dist/index.js.map +1 -1
  18. package/dist/message-format.d.ts +39 -0
  19. package/dist/message-format.d.ts.map +1 -0
  20. package/dist/message-format.js +124 -0
  21. package/dist/message-format.js.map +1 -0
  22. package/dist/types.d.ts +59 -146
  23. package/dist/types.d.ts.map +1 -1
  24. package/dist/types.js +8 -7
  25. package/dist/types.js.map +1 -1
  26. package/package.json +3 -2
  27. package/dist/AriaAgent.d.ts +0 -186
  28. package/dist/AriaAgent.d.ts.map +0 -1
  29. package/dist/AriaAgent.js +0 -756
  30. package/dist/AriaAgent.js.map +0 -1
  31. package/dist/aria-agent-integration.d.ts +0 -52
  32. package/dist/aria-agent-integration.d.ts.map +0 -1
  33. package/dist/aria-agent-integration.js +0 -186
  34. package/dist/aria-agent-integration.js.map +0 -1
  35. package/dist/message-converter.d.ts +0 -48
  36. package/dist/message-converter.d.ts.map +0 -1
  37. package/dist/message-converter.js +0 -138
  38. package/dist/message-converter.js.map +0 -1
@@ -1,186 +0,0 @@
1
- /**
2
- * ARIA Agent - Cloudflare Agents integration with proper memory primitives
3
- *
4
- * Memory Architecture:
5
- * 1. Session: Current conversation thread with chronological messages
6
- * 2. State: Temporary data within the current conversation (working memory)
7
- * 3. Memory: Searchable, cross-session information (knowledge base)
8
- *
9
- * AI SDK 6.0 Message Types (matching agents@0.3.3):
10
- * - UIMessage: Format with UI metadata (id, role, parts)
11
- * - ModelMessage: Format expected by LLM models
12
- * - convertToModelMessages: Converts UIMessage[] to ModelMessage[]
13
- */
14
- import { AIChatAgent } from "agents/ai-chat-agent";
15
- import { type AgentContext } from "agents";
16
- import type { StreamTextOnFinishCallback, ToolSet } from "ai";
17
- import type { AriaEnv, AriaMemory, AriaSession, AriaSessionState, FlowTransition, MemorySearchQuery, MemorySearchResult, WorkingMemory } from "./types";
18
- /**
19
- * ARIA Agent extending AIChatAgent
20
- *
21
- * Provides:
22
- * - Session management with conversation history
23
- * - State management (working memory) for session-local data
24
- * - Memory layer for cross-session knowledge
25
- * - Flow orchestration integration
26
- * - Multi-turn conversation support
27
- */
28
- export declare class AriaAgent extends AIChatAgent<AriaEnv, AriaSessionState> {
29
- private config;
30
- private flowDefinitions;
31
- constructor(ctx: AgentContext, env: AriaEnv);
32
- /**
33
- * Initialize ARIA-specific database tables
34
- */
35
- private initializeTables;
36
- /**
37
- * Initial state when no session exists
38
- */
39
- initialState: AriaSessionState;
40
- /**
41
- * Get the current session
42
- * Session = Current conversation thread with chronological messages
43
- */
44
- getSession(): AriaSession;
45
- /**
46
- * Get session creation time from storage
47
- */
48
- private getCreatedAt;
49
- /**
50
- * Record a session event for tracking
51
- */
52
- private recordSessionEvent;
53
- /**
54
- * Get working memory (state within current conversation)
55
- * Examples: shopping cart items, user preferences mentioned in this session
56
- */
57
- getWorkingMemory(): WorkingMemory;
58
- /**
59
- * Set a value in working memory
60
- */
61
- setWorkingMemory(key: string, value: unknown): void;
62
- /**
63
- * Clear all working memory
64
- */
65
- clearWorkingMemory(): void;
66
- /**
67
- * Handle state updates (called by Cloudflare Agents framework)
68
- * This is triggered whenever setState is called, either from the server or from a connected client.
69
- *
70
- * Use cases:
71
- * - React state synchronization via useAgent hook
72
- * - Logging state changes
73
- * - Triggering side effects on state changes
74
- *
75
- * @param state - The updated state
76
- * @param source - "server" if update came from the agent, or a Connection object if from a client
77
- */
78
- onStateUpdate(state: AriaSessionState, source: "server" | unknown): void;
79
- /**
80
- * Store a memory for cross-session retrieval
81
- * Memory = Searchable, cross-session information (knowledge base)
82
- */
83
- storeMemory(memory: Omit<AriaMemory, "id" | "createdAt" | "lastAccessedAt" | "accessCount">): string;
84
- /**
85
- * Search memory by query
86
- * Returns relevant memories across all sessions
87
- */
88
- searchMemories(query: MemorySearchQuery): MemorySearchResult[];
89
- /**
90
- * Get a specific memory by key
91
- */
92
- getMemory(key: string): AriaMemory | null;
93
- /**
94
- * Update memory access (increments access count and updates timestamp)
95
- */
96
- private updateMemoryAccess;
97
- /**
98
- * Clean up old memories based on retention policy
99
- */
100
- cleanupOldMemories(): void;
101
- /**
102
- * Register a flow definition
103
- */
104
- registerFlow(flow: import("@projectaria/aria-agents").FlowDefinition): void;
105
- /**
106
- * Record a flow transition
107
- */
108
- recordFlowTransition(flowId: string, fromNodeId: string | null, toNodeId: string, metadata?: Record<string, unknown>): void;
109
- /**
110
- * Get flow transition history
111
- */
112
- getFlowHistory(flowId?: string, limit?: number): FlowTransition[];
113
- /**
114
- * Handle incoming chat messages
115
- * This is where ARIA's flow orchestration would be integrated
116
- */
117
- onChatMessage(onFinish: StreamTextOnFinishCallback<ToolSet>, options?: {
118
- abortSignal?: AbortSignal;
119
- clientTools?: Array<{
120
- name: string;
121
- description?: string;
122
- parameters?: import("ai").JSONSchema7;
123
- }>;
124
- }): Promise<Response | undefined>;
125
- /**
126
- * Build system prompt with conversation context
127
- */
128
- private buildSystemPrompt;
129
- /**
130
- * Run an ARIA agent with persistence
131
- * This method allows you to use ARIA's createAgent() with persistent memory
132
- *
133
- * @param agent - The ARIA agent created via createAgent()
134
- * @param input - The user input
135
- * @returns The agent response with persisted session state
136
- */
137
- runAriaAgent(agent: import("@projectaria/aria-agents").Agent, input: string): Promise<{
138
- text: string;
139
- session: import("@projectaria/aria-agents").AgentSession;
140
- }>;
141
- /**
142
- * Stream an ARIA agent response with persistence
143
- *
144
- * @param agent - The ARIA agent created via createAgent()
145
- * @param input - The user input
146
- * @returns Stream result with session
147
- */
148
- streamAriaAgent(agent: import("@projectaria/aria-agents").Agent, input: string): Promise<{
149
- fullStream: AsyncIterable<import("@projectaria/aria-agents").AriaStreamPart>;
150
- textStream: AsyncIterable<string>;
151
- usage?: Promise<import("ai").LanguageModelUsage | undefined>;
152
- }>;
153
- /**
154
- * Build ARIA agent prompt with context from session and memories
155
- */
156
- private buildAriaAgentPrompt;
157
- /**
158
- * Extract and store memories from ARIA agent conversation
159
- */
160
- private extractAndStoreMemories;
161
- /**
162
- * Extract preference key from message content
163
- */
164
- private extractPreferenceKey;
165
- /**
166
- * Extract fact key from message content
167
- */
168
- private extractFactKey;
169
- /**
170
- * Called when agent starts
171
- */
172
- onStart(): Promise<void>;
173
- /**
174
- * Called when a client connects
175
- */
176
- onConnect(connection: import("agents").Connection, ctx: import("agents").ConnectionContext): Promise<void>;
177
- /**
178
- * Cleanup when destroyed
179
- */
180
- destroy(): Promise<void>;
181
- /**
182
- * Handle HTTP requests
183
- */
184
- onRequest(request: Request): Promise<Response>;
185
- }
186
- //# sourceMappingURL=AriaAgent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AriaAgent.d.ts","sourceRoot":"","sources":["../src/AriaAgent.ts"],"names":[],"mappings":"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"}