arcie 0.1.3 → 0.1.5

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 (156) hide show
  1. package/README.md +34 -6
  2. package/dist/agent/index.d.ts +6 -3
  3. package/dist/agent/index.js +6 -6
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/auth/index.d.ts +6 -5
  6. package/dist/auth/index.js +8 -17
  7. package/dist/auth/index.js.map +1 -1
  8. package/dist/build-TWNCPXBU.js +82 -0
  9. package/dist/build-TWNCPXBU.js.map +1 -0
  10. package/dist/channels/index.d.ts +8 -5
  11. package/dist/channels/index.js +10 -12
  12. package/dist/channels/index.js.map +1 -1
  13. package/dist/chunk-3CNQ6HQV.js +12 -0
  14. package/dist/chunk-3CNQ6HQV.js.map +1 -0
  15. package/dist/chunk-4L7WVCTU.js +12 -0
  16. package/dist/chunk-4L7WVCTU.js.map +1 -0
  17. package/dist/chunk-4WSILP75.js +1774 -0
  18. package/dist/chunk-4WSILP75.js.map +1 -0
  19. package/dist/chunk-6XETPLIF.js +176 -0
  20. package/dist/chunk-6XETPLIF.js.map +1 -0
  21. package/dist/chunk-CKHBEZCT.js +24 -0
  22. package/dist/chunk-CKHBEZCT.js.map +1 -0
  23. package/dist/chunk-FQ7KDNV5.js +12 -0
  24. package/dist/chunk-FQ7KDNV5.js.map +1 -0
  25. package/dist/chunk-HVBDOHTL.js +148 -0
  26. package/dist/chunk-HVBDOHTL.js.map +1 -0
  27. package/dist/chunk-HWD2Z2CH.js +742 -0
  28. package/dist/chunk-HWD2Z2CH.js.map +1 -0
  29. package/dist/chunk-KVSX4MLK.js +139 -0
  30. package/dist/chunk-KVSX4MLK.js.map +1 -0
  31. package/dist/chunk-L3BTL5FM.js +39 -0
  32. package/dist/chunk-L3BTL5FM.js.map +1 -0
  33. package/dist/chunk-LQC65UHE.js +34 -0
  34. package/dist/chunk-LQC65UHE.js.map +1 -0
  35. package/dist/chunk-N5R3TEEZ.js +15 -0
  36. package/dist/chunk-N5R3TEEZ.js.map +1 -0
  37. package/dist/chunk-PHTJLJOV.js +25 -0
  38. package/dist/chunk-PHTJLJOV.js.map +1 -0
  39. package/dist/chunk-QE46QFID.js +92 -0
  40. package/dist/chunk-QE46QFID.js.map +1 -0
  41. package/dist/chunk-SGWQZZ2A.js +54 -0
  42. package/dist/chunk-SGWQZZ2A.js.map +1 -0
  43. package/dist/chunk-WAD7VLNI.js +51 -0
  44. package/dist/chunk-WAD7VLNI.js.map +1 -0
  45. package/dist/chunk-XOFWQUOO.js +30 -0
  46. package/dist/chunk-XOFWQUOO.js.map +1 -0
  47. package/dist/chunk-ZJNHQXMO.js +20 -0
  48. package/dist/chunk-ZJNHQXMO.js.map +1 -0
  49. package/dist/cli/index.d.ts +7 -2
  50. package/dist/cli/index.js +171 -41
  51. package/dist/cli/index.js.map +1 -1
  52. package/dist/context/index.d.ts +14 -11
  53. package/dist/context/index.js +22 -37
  54. package/dist/context/index.js.map +1 -1
  55. package/dist/dev-ZZDVOWUZ.js +1967 -0
  56. package/dist/dev-ZZDVOWUZ.js.map +1 -0
  57. package/dist/discover/index.d.ts +17 -7
  58. package/dist/discover/index.js +6 -132
  59. package/dist/discover/index.js.map +1 -1
  60. package/dist/hooks/index.d.ts +6 -3
  61. package/dist/hooks/index.js +6 -6
  62. package/dist/hooks/index.js.map +1 -1
  63. package/dist/index-CElLRVTP.d.ts +136 -0
  64. package/dist/index.d.ts +297 -18
  65. package/dist/index.js +160 -13
  66. package/dist/index.js.map +1 -1
  67. package/dist/init-5F7CIVLN.js +822 -0
  68. package/dist/init-5F7CIVLN.js.map +1 -0
  69. package/dist/instructions/index.d.ts +7 -4
  70. package/dist/instructions/index.js +8 -32
  71. package/dist/instructions/index.js.map +1 -1
  72. package/dist/protocol/events.d.ts +47 -39
  73. package/dist/protocol/events.js +46 -45
  74. package/dist/protocol/events.js.map +1 -1
  75. package/dist/runner/index.d.ts +4 -18
  76. package/dist/runner/index.js +11 -277
  77. package/dist/runner/index.js.map +1 -1
  78. package/dist/scaffold-web-chat-OQL5C2GK.js +7 -0
  79. package/dist/scaffold-web-chat-OQL5C2GK.js.map +1 -0
  80. package/dist/schedules/index.d.ts +6 -3
  81. package/dist/schedules/index.js +6 -6
  82. package/dist/schedules/index.js.map +1 -1
  83. package/dist/skills/index.d.ts +7 -4
  84. package/dist/skills/index.js +8 -27
  85. package/dist/skills/index.js.map +1 -1
  86. package/dist/tools/index.d.ts +13 -3
  87. package/dist/tools/index.js +8 -9
  88. package/dist/tools/index.js.map +1 -1
  89. package/dist/types-DwxwdSa2.d.ts +151 -0
  90. package/docs/getting-started.md +2 -2
  91. package/docs/index.md +3 -2
  92. package/docs/project-layout.md +2 -2
  93. package/docs/subagents.md +95 -0
  94. package/package.json +15 -10
  95. package/templates/default/.env.local +12 -0
  96. package/templates/default/agent/agent.ts +2 -2
  97. package/templates/default/package.json +3 -3
  98. package/templates/web-chat/.env.local.example +4 -0
  99. package/templates/web-chat/README.md +51 -0
  100. package/templates/web-chat/app/api/chat/route.ts +43 -0
  101. package/templates/web-chat/app/globals.css +55 -0
  102. package/templates/web-chat/app/layout.tsx +15 -0
  103. package/templates/web-chat/app/page.tsx +9 -0
  104. package/templates/web-chat/components/chat.tsx +196 -0
  105. package/templates/web-chat/components/input-bar.tsx +74 -0
  106. package/templates/web-chat/components/message.tsx +63 -0
  107. package/templates/web-chat/components/tool-call.tsx +79 -0
  108. package/templates/web-chat/components/ui/button.tsx +46 -0
  109. package/templates/web-chat/components/ui/input.tsx +19 -0
  110. package/templates/web-chat/components.json +20 -0
  111. package/templates/web-chat/lib/stream.ts +41 -0
  112. package/templates/web-chat/lib/types.ts +61 -0
  113. package/templates/web-chat/lib/utils.ts +6 -0
  114. package/templates/web-chat/next.config.mjs +4 -0
  115. package/templates/web-chat/package.json +32 -0
  116. package/templates/web-chat/postcss.config.mjs +6 -0
  117. package/templates/web-chat/tailwind.config.ts +59 -0
  118. package/templates/web-chat/tsconfig.json +23 -0
  119. package/dist/agent/index.d.ts.map +0 -1
  120. package/dist/auth/index.d.ts.map +0 -1
  121. package/dist/channels/index.d.ts.map +0 -1
  122. package/dist/cli/banner.d.ts +0 -2
  123. package/dist/cli/banner.d.ts.map +0 -1
  124. package/dist/cli/banner.js +0 -10
  125. package/dist/cli/banner.js.map +0 -1
  126. package/dist/cli/build.d.ts +0 -5
  127. package/dist/cli/build.d.ts.map +0 -1
  128. package/dist/cli/build.js +0 -54
  129. package/dist/cli/build.js.map +0 -1
  130. package/dist/cli/dev.d.ts +0 -5
  131. package/dist/cli/dev.d.ts.map +0 -1
  132. package/dist/cli/dev.js +0 -74
  133. package/dist/cli/dev.js.map +0 -1
  134. package/dist/cli/index.d.ts.map +0 -1
  135. package/dist/cli/init.d.ts +0 -4
  136. package/dist/cli/init.d.ts.map +0 -1
  137. package/dist/cli/init.js +0 -75
  138. package/dist/cli/init.js.map +0 -1
  139. package/dist/context/index.d.ts.map +0 -1
  140. package/dist/discover/index.d.ts.map +0 -1
  141. package/dist/hooks/index.d.ts.map +0 -1
  142. package/dist/index.d.ts.map +0 -1
  143. package/dist/instructions/index.d.ts.map +0 -1
  144. package/dist/loader.d.ts +0 -7
  145. package/dist/loader.d.ts.map +0 -1
  146. package/dist/loader.js +0 -102
  147. package/dist/loader.js.map +0 -1
  148. package/dist/protocol/events.d.ts.map +0 -1
  149. package/dist/runner/index.d.ts.map +0 -1
  150. package/dist/schedules/index.d.ts.map +0 -1
  151. package/dist/skills/index.d.ts.map +0 -1
  152. package/dist/tools/index.d.ts.map +0 -1
  153. package/dist/types.d.ts +0 -118
  154. package/dist/types.d.ts.map +0 -1
  155. package/dist/types.js +0 -2
  156. package/dist/types.js.map +0 -1
@@ -0,0 +1,136 @@
1
+ import { n as TurnContext } from './types-DwxwdSa2.js';
2
+ import { StreamEvent } from './protocol/events.js';
3
+
4
+ interface MemoryEntry {
5
+ role: "user" | "assistant" | "tool" | "system";
6
+ content: string;
7
+ timestamp: number;
8
+ turnId?: string;
9
+ score?: number;
10
+ }
11
+ interface Thread {
12
+ id: string;
13
+ resourceId: string;
14
+ title?: string;
15
+ metadata?: Record<string, unknown>;
16
+ createdAt: number;
17
+ updatedAt: number;
18
+ }
19
+ interface DeleteMessagesOptions {
20
+ threadId: string;
21
+ resourceId: string;
22
+ messageIds?: string[];
23
+ beforeTimestamp?: number;
24
+ afterTimestamp?: number;
25
+ }
26
+ interface MemoryQuery {
27
+ resourceId: string;
28
+ threadId: string;
29
+ query?: string;
30
+ limit?: number;
31
+ }
32
+ interface RecallOptions {
33
+ threadId: string;
34
+ resourceId: string;
35
+ page?: number;
36
+ perPage?: number;
37
+ dateRange?: {
38
+ start?: Date;
39
+ end?: Date;
40
+ };
41
+ include?: Array<{
42
+ id: string;
43
+ withPreviousMessages?: number;
44
+ withNextMessages?: number;
45
+ }>;
46
+ vectorSearchString?: string;
47
+ }
48
+ interface RecallResult {
49
+ messages: MemoryEntry[];
50
+ total: number;
51
+ hasMore: boolean;
52
+ }
53
+ interface MemoryStore {
54
+ save(resourceId: string, threadId: string, entries: MemoryEntry[]): Promise<void>;
55
+ load(resourceId: string, threadId: string, limit?: number): Promise<MemoryEntry[]>;
56
+ clear(resourceId: string, threadId: string): Promise<void>;
57
+ search?(resourceId: string, threadId: string, query: string, limit?: number): Promise<MemoryEntry[]>;
58
+ close?(): Promise<void>;
59
+ createThread?(thread: Thread): Promise<void>;
60
+ getThread?(threadId: string, resourceId: string): Promise<Thread | null>;
61
+ listThreads?(resourceId: string): Promise<Thread[]>;
62
+ updateThread?(thread: Partial<Thread> & {
63
+ id: string;
64
+ resourceId: string;
65
+ }): Promise<void>;
66
+ deleteThread?(threadId: string, resourceId: string): Promise<void>;
67
+ deleteMessages?(opts: DeleteMessagesOptions): Promise<number>;
68
+ cloneThread?(source: {
69
+ threadId: string;
70
+ resourceId: string;
71
+ }, dest: {
72
+ threadId: string;
73
+ resourceId: string;
74
+ }): Promise<void>;
75
+ }
76
+ interface MemoryStrategy {
77
+ getInputContext(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
78
+ recordTurn(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, toolCalls?: {
79
+ tool: string;
80
+ input: unknown;
81
+ output: unknown;
82
+ }[]): Promise<void>;
83
+ }
84
+ interface InputProcessor {
85
+ name: string;
86
+ processInput(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
87
+ }
88
+ interface MemoryProcessor extends InputProcessor {
89
+ processOutput?(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, toolCalls?: {
90
+ tool: string;
91
+ input: unknown;
92
+ output: unknown;
93
+ }[]): Promise<void>;
94
+ }
95
+ interface Embedder {
96
+ embed(text: string): Promise<number[]>;
97
+ embedBatch(texts: string[]): Promise<number[][]>;
98
+ readonly dimensions: number;
99
+ }
100
+ interface VectorStore {
101
+ upsert(namespace: string, vectors: Array<{
102
+ id: string;
103
+ values: number[];
104
+ metadata?: Record<string, unknown>;
105
+ }>): Promise<void>;
106
+ query(namespace: string, vector: number[], options?: {
107
+ topK?: number;
108
+ filter?: Record<string, unknown>;
109
+ }): Promise<Array<{
110
+ id: string;
111
+ score: number;
112
+ metadata?: Record<string, unknown>;
113
+ }>>;
114
+ delete(namespace: string, ids: string[]): Promise<void>;
115
+ }
116
+
117
+ interface RunOptions {
118
+ endpoint?: string;
119
+ apiKey?: string;
120
+ maxTurns?: number;
121
+ sessionId?: string;
122
+ resourceId?: string;
123
+ threadId?: string;
124
+ memoryStore?: MemoryStore;
125
+ onEvent?: (event: StreamEvent) => void;
126
+ }
127
+ interface RunResult {
128
+ output: string;
129
+ turns: TurnContext[];
130
+ events: StreamEvent[];
131
+ sessionId: string;
132
+ }
133
+ declare function runAgent(agentDir: string, input: string, options?: RunOptions): Promise<RunResult>;
134
+ declare function streamAgent(agentDir: string, input: string, options?: RunOptions): AsyncGenerator<StreamEvent, void, unknown>;
135
+
136
+ export { type DeleteMessagesOptions as D, type Embedder as E, type MemoryStore as M, type RecallOptions as R, type Thread as T, type VectorStore as V, type MemoryEntry as a, type MemoryStrategy as b, type MemoryProcessor as c, type RecallResult as d, type MemoryQuery as e, type RunOptions as f, type RunResult as g, runAgent as r, streamAgent as s };
package/dist/index.d.ts CHANGED
@@ -1,18 +1,297 @@
1
- export { defineAgent } from "./agent/index.js";
2
- export { defineInstructions, loadInstructions } from "./instructions/index.js";
3
- export { defineTool } from "./tools/index.js";
4
- export { defineSkill, getSkill } from "./skills/index.js";
5
- export { defineHook } from "./hooks/index.js";
6
- export { defineChannel, POST, GET } from "./channels/index.js";
7
- export { defineSchedule } from "./schedules/index.js";
8
- export { getSession, getTurn, getContext, requireContext, hasContext, setContext, ensureContext } from "./context/index.js";
9
- export { loadAgent } from "./loader.js";
10
- export { runAgent, streamAgent } from "./runner/index.js";
11
- export { discoverAgent } from "./discover/index.js";
12
- export { bearer, basic } from "./auth/index.js";
13
- export type { OutboundAuthFn, TokenValue } from "./auth/index.js";
14
- export type * from "./types.js";
15
- export type * from "./protocol/events.js";
16
- export { createSessionStarted, createTurnStarted, createMessageReceived, createMessageAppended, createMessageCompleted, createStepStarted, createStepCompleted, createTurnCompleted, createSessionWaiting, createSessionCompleted, encodeEvent, encodeEvents, } from "./protocol/events.js";
17
- export type { StreamEvent } from "./protocol/events.js";
18
- //# sourceMappingURL=index.d.ts.map
1
+ export { defineAgent } from './agent/index.js';
2
+ export { defineInstructions, loadInstructions } from './instructions/index.js';
3
+ export { defineTool, toModelOutput } from './tools/index.js';
4
+ export { defineSkill, getSkill } from './skills/index.js';
5
+ export { defineHook } from './hooks/index.js';
6
+ export { GET, POST, defineChannel } from './channels/index.js';
7
+ import { C as ConnectionConfig, T as ToolConfig, S as SessionConfig, A as AgentManifest } from './types-DwxwdSa2.js';
8
+ export { a as AgentConfig, b as ApprovalStrategy, c as CencoriConfig, d as ChannelConfig, e as ChannelRequest, f as ChannelResponse, H as HookConfig, g as HookEvent, h as HookPayload, I as InstructionsConfig, P as PolicyConfig, i as ScheduleConfig, j as Session, k as SkillConfig, l as SubagentManifest, m as ToolCallContext, n as TurnContext } from './types-DwxwdSa2.js';
9
+ export { defineSchedule } from './schedules/index.js';
10
+ export { ensureContext, getContext, getSession, getTurn, hasContext, requireContext, setContext, setSession, setTurn } from './context/index.js';
11
+ import { M as MemoryStore, a as MemoryEntry, T as Thread, D as DeleteMessagesOptions, b as MemoryStrategy, c as MemoryProcessor, E as Embedder, V as VectorStore, R as RecallOptions, d as RecallResult } from './index-CElLRVTP.js';
12
+ export { e as MemoryQuery, r as runAgent, s as streamAgent } from './index-CElLRVTP.js';
13
+ export { discoverAgent } from './discover/index.js';
14
+ export { OutboundAuthFn, TokenValue, basic, bearer } from './auth/index.js';
15
+ export { ActionResultError, ActionResultStatus, AssistantStepFinishReason, MessageAppendedEvent, MessageCompletedEvent, MessageReceivedEvent, ReasoningAppendedEvent, ReasoningCompletedEvent, SessionCompletedEvent, SessionFailedEvent, SessionStartedEvent, SessionWaitingEvent, StepCompletedEvent, StepFailedEvent, StepStartedEvent, StreamEvent, SubagentCalledEvent, SubagentCompletedEvent, ToolCallCompletedEvent, ToolCallStartedEvent, TurnCompletedEvent, TurnFailedEvent, TurnStartedEvent, createMessageAppended, createMessageCompleted, createMessageReceived, createReasoningAppended, createReasoningCompleted, createSessionCompleted, createSessionFailed, createSessionStarted, createSessionWaiting, createStepCompleted, createStepFailed, createStepStarted, createSubagentCalled, createSubagentCompleted, createToolCallCompleted, createToolCallStarted, createTurnCompleted, createTurnFailed, createTurnStarted, encodeEvent, encodeEvents } from './protocol/events.js';
16
+ import 'zod';
17
+
18
+ declare function defineConnection(config: ConnectionConfig): ConnectionConfig;
19
+
20
+ declare class InMemoryStore implements MemoryStore {
21
+ private entries;
22
+ private threads;
23
+ private key;
24
+ save(resourceId: string, threadId: string, entries: MemoryEntry[]): Promise<void>;
25
+ load(resourceId: string, threadId: string, limit?: number): Promise<MemoryEntry[]>;
26
+ search(resourceId: string, threadId: string, query: string, limit?: number): Promise<MemoryEntry[]>;
27
+ clear(resourceId: string, threadId: string): Promise<void>;
28
+ close(): Promise<void>;
29
+ createThread(thread: Thread): Promise<void>;
30
+ getThread(threadId: string, _resourceId: string): Promise<Thread | null>;
31
+ listThreads(resourceId: string): Promise<Thread[]>;
32
+ updateThread(thread: Partial<Thread> & {
33
+ id: string;
34
+ resourceId: string;
35
+ }): Promise<void>;
36
+ deleteThread(threadId: string, _resourceId: string): Promise<void>;
37
+ deleteMessages(opts: DeleteMessagesOptions): Promise<number>;
38
+ cloneThread(source: {
39
+ threadId: string;
40
+ resourceId: string;
41
+ }, dest: {
42
+ threadId: string;
43
+ resourceId: string;
44
+ }): Promise<void>;
45
+ }
46
+
47
+ declare class SqliteStore implements MemoryStore {
48
+ private client;
49
+ constructor(dbPath?: string);
50
+ private init;
51
+ save(resourceId: string, threadId: string, entries: MemoryEntry[]): Promise<void>;
52
+ load(resourceId: string, threadId: string, limit?: number): Promise<MemoryEntry[]>;
53
+ clear(resourceId: string, threadId: string): Promise<void>;
54
+ search(resourceId: string, threadId: string, query: string, limit?: number): Promise<MemoryEntry[]>;
55
+ close(): Promise<void>;
56
+ createThread(thread: Thread): Promise<void>;
57
+ getThread(threadId: string, _resourceId: string): Promise<Thread | null>;
58
+ listThreads(resourceId: string): Promise<Thread[]>;
59
+ updateThread(thread: Partial<Thread> & {
60
+ id: string;
61
+ resourceId: string;
62
+ }): Promise<void>;
63
+ deleteThread(threadId: string, _resourceId: string): Promise<void>;
64
+ deleteMessages(opts: DeleteMessagesOptions): Promise<number>;
65
+ cloneThread(source: {
66
+ threadId: string;
67
+ resourceId: string;
68
+ }, dest: {
69
+ threadId: string;
70
+ resourceId: string;
71
+ }): Promise<void>;
72
+ }
73
+
74
+ declare class FileStore implements MemoryStore {
75
+ private baseDir;
76
+ constructor(baseDir?: string);
77
+ private filePath;
78
+ private threadsPath;
79
+ private read;
80
+ private write;
81
+ private readThreads;
82
+ private writeThreads;
83
+ save(resourceId: string, threadId: string, entries: MemoryEntry[]): Promise<void>;
84
+ load(resourceId: string, threadId: string, limit?: number): Promise<MemoryEntry[]>;
85
+ clear(resourceId: string, threadId: string): Promise<void>;
86
+ close(): Promise<void>;
87
+ createThread(thread: Thread): Promise<void>;
88
+ getThread(threadId: string, resourceId: string): Promise<Thread | null>;
89
+ listThreads(resourceId: string): Promise<Thread[]>;
90
+ updateThread(thread: Partial<Thread> & {
91
+ id: string;
92
+ resourceId: string;
93
+ }): Promise<void>;
94
+ deleteThread(threadId: string, resourceId: string): Promise<void>;
95
+ deleteMessages(opts: DeleteMessagesOptions): Promise<number>;
96
+ cloneThread(source: {
97
+ threadId: string;
98
+ resourceId: string;
99
+ }, dest: {
100
+ threadId: string;
101
+ resourceId: string;
102
+ }): Promise<void>;
103
+ }
104
+
105
+ interface CencoriMemoryClient {
106
+ store(options: {
107
+ namespace: string;
108
+ content: string;
109
+ metadata?: Record<string, unknown>;
110
+ }): Promise<unknown>;
111
+ search(options: {
112
+ namespace: string;
113
+ query: string;
114
+ limit?: number;
115
+ threshold?: number;
116
+ filter?: Record<string, unknown>;
117
+ }): Promise<{
118
+ results: Array<{
119
+ content: string;
120
+ metadata: Record<string, unknown>;
121
+ similarity?: number;
122
+ }>;
123
+ }>;
124
+ delete?(options: {
125
+ namespace: string;
126
+ ids?: string[];
127
+ filter?: Record<string, unknown>;
128
+ }): Promise<unknown>;
129
+ }
130
+ declare class CencoriMemoryStore implements MemoryStore {
131
+ private client;
132
+ constructor(client: CencoriMemoryClient);
133
+ save(resourceId: string, threadId: string, entries: MemoryEntry[]): Promise<void>;
134
+ load(resourceId: string, threadId: string, limit?: number): Promise<MemoryEntry[]>;
135
+ clear(resourceId: string, threadId: string): Promise<void>;
136
+ search(resourceId: string, threadId: string, query: string, limit?: number): Promise<MemoryEntry[]>;
137
+ close(): Promise<void>;
138
+ createThread(_thread: Thread): Promise<void>;
139
+ getThread(_threadId: string, _resourceId: string): Promise<Thread | null>;
140
+ listThreads(_resourceId: string): Promise<Thread[]>;
141
+ updateThread(_thread: Partial<Thread> & {
142
+ id: string;
143
+ resourceId: string;
144
+ }): Promise<void>;
145
+ deleteThread(_threadId: string, _resourceId: string): Promise<void>;
146
+ deleteMessages(opts: DeleteMessagesOptions): Promise<number>;
147
+ cloneThread(source: {
148
+ threadId: string;
149
+ resourceId: string;
150
+ }, dest: {
151
+ threadId: string;
152
+ resourceId: string;
153
+ }): Promise<void>;
154
+ }
155
+
156
+ declare class LastNStrategy implements MemoryStrategy {
157
+ private limit;
158
+ constructor(limit?: number);
159
+ getInputContext(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
160
+ recordTurn(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, toolCalls?: {
161
+ tool: string;
162
+ input: unknown;
163
+ output: unknown;
164
+ }[]): Promise<void>;
165
+ }
166
+
167
+ declare class KeyFactsStrategy implements MemoryStrategy {
168
+ private facts;
169
+ private loaded;
170
+ private ensureLoaded;
171
+ getInputContext(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
172
+ recordTurn(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, _toolCalls?: {
173
+ tool: string;
174
+ input: unknown;
175
+ output: unknown;
176
+ }[]): Promise<void>;
177
+ }
178
+
179
+ type SummarizeFn = (text: string) => Promise<string>;
180
+ declare class SummaryStrategy implements MemoryStrategy {
181
+ private limit;
182
+ private summary;
183
+ private summarize;
184
+ private mutex;
185
+ constructor(limit?: number, summarize?: SummarizeFn);
186
+ private exclusive;
187
+ private defaultSummarize;
188
+ getInputContext(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
189
+ recordTurn(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, toolCalls?: {
190
+ tool: string;
191
+ input: unknown;
192
+ output: unknown;
193
+ }[]): Promise<void>;
194
+ }
195
+
196
+ declare class SemanticRecall implements MemoryStrategy {
197
+ private topK;
198
+ constructor(topK?: number);
199
+ getInputContext(store: MemoryStore, resourceId: string, threadId: string): Promise<string>;
200
+ recordTurn(store: MemoryStore, resourceId: string, threadId: string, input: string, output: string, toolCalls?: {
201
+ tool: string;
202
+ input: unknown;
203
+ output: unknown;
204
+ }[]): Promise<void>;
205
+ }
206
+
207
+ declare const DEFAULT_TEMPLATE = "# User Profile\n\n- **Name**:\n- **Interests**:\n- **Goals**:\n- **Preferences**:\n";
208
+ declare const WORKING_MEMORY_SYSTEM_INSTRUCTION = "You have access to a persistent working memory that stores information about the user.\nYou can read the current working memory below and update it using the `updateWorkingMemory` tool.\n\nWhen the user tells you something about themselves, update the working memory to reflect it.\nUse the `updateWorkingMemory` tool with `section` set to the markdown heading (e.g. \"Interests\") and `content` set to the new bullet list content for that section.";
209
+ declare class WorkingMemory implements MemoryStrategy {
210
+ private template;
211
+ private content;
212
+ private baseDir;
213
+ private resourceId;
214
+ private initialized;
215
+ constructor(template?: string, baseDir?: string, resourceId?: string);
216
+ private ensureDir;
217
+ private filePath;
218
+ private loadFromDisk;
219
+ private saveToDisk;
220
+ getSystemInstruction(): string;
221
+ getCurrentContent(resourceId: string): string;
222
+ updateSection(resourceId: string, section: string, content: string): void;
223
+ getToolDefinitions(): Record<string, ToolConfig>;
224
+ getInputContext(_store: MemoryStore, resourceId: string, _threadId: string): Promise<string>;
225
+ recordTurn(_store: MemoryStore, _resourceId: string, _threadId: string, _input: string, _output: string, _toolCalls?: {
226
+ tool: string;
227
+ input: unknown;
228
+ output: unknown;
229
+ }[]): Promise<void>;
230
+ }
231
+
232
+ interface MemoryOptions {
233
+ store?: MemoryStore;
234
+ resourceId?: string;
235
+ threadId?: string;
236
+ processors?: (MemoryProcessor | MemoryStrategy)[];
237
+ embedder?: Embedder;
238
+ vectorStore?: VectorStore;
239
+ lastMessages?: number;
240
+ readOnly?: boolean;
241
+ }
242
+ declare class Memory {
243
+ store: MemoryStore;
244
+ resourceId: string;
245
+ threadId: string;
246
+ private processors;
247
+ private readOnly;
248
+ private buildSource;
249
+ constructor(options?: MemoryOptions);
250
+ constructor(config: SessionConfig["memory"], options?: MemoryOptions);
251
+ private buildFromConfig;
252
+ /**
253
+ * Create a new Memory instance sharing the same store and configuration
254
+ * but with overridden resourceId, threadId, and/or readOnly.
255
+ * Useful for per-request memory config.
256
+ */
257
+ with(overrides: {
258
+ resourceId?: string;
259
+ threadId?: string;
260
+ readOnly?: boolean;
261
+ }): Memory;
262
+ destroy(): Promise<void>;
263
+ getInputContext(): Promise<string>;
264
+ getSystemInstruction(): string;
265
+ getToolDefinitions(): Record<string, ToolConfig>;
266
+ recordTurn(input: string, output: string, toolCalls?: {
267
+ tool: string;
268
+ input: unknown;
269
+ output: unknown;
270
+ }[]): Promise<void>;
271
+ clear(): Promise<void>;
272
+ createThread(thread: Thread): Promise<void>;
273
+ getThread(threadId: string, resourceId: string): Promise<Thread | null>;
274
+ listThreads(resourceId: string): Promise<Thread[]>;
275
+ updateThread(thread: Partial<Thread> & {
276
+ id: string;
277
+ resourceId: string;
278
+ }): Promise<void>;
279
+ deleteThread(threadId: string, resourceId: string): Promise<void>;
280
+ deleteMessages(opts: DeleteMessagesOptions): Promise<number>;
281
+ cloneThread(source: {
282
+ threadId: string;
283
+ resourceId: string;
284
+ }, dest: {
285
+ threadId: string;
286
+ resourceId: string;
287
+ }): Promise<void>;
288
+ recall(opts: RecallOptions): Promise<RecallResult>;
289
+ }
290
+
291
+ interface LoadedAgent {
292
+ manifest: AgentManifest;
293
+ agentDir: string;
294
+ }
295
+ declare function loadAgent(agentDir: string): Promise<LoadedAgent>;
296
+
297
+ export { AgentManifest, type CencoriMemoryClient, CencoriMemoryStore, ConnectionConfig, DEFAULT_TEMPLATE, FileStore, InMemoryStore, KeyFactsStrategy, LastNStrategy, Memory, MemoryEntry, MemoryStore, MemoryStrategy, SemanticRecall, SessionConfig, SqliteStore, type SummarizeFn, SummaryStrategy, ToolConfig, WORKING_MEMORY_SYSTEM_INSTRUCTION, WorkingMemory, defineConnection, loadAgent };
package/dist/index.js CHANGED
@@ -1,14 +1,161 @@
1
- export { defineAgent } from "./agent/index.js";
2
- export { defineInstructions, loadInstructions } from "./instructions/index.js";
3
- export { defineTool } from "./tools/index.js";
4
- export { defineSkill, getSkill } from "./skills/index.js";
5
- export { defineHook } from "./hooks/index.js";
6
- export { defineChannel, POST, GET } from "./channels/index.js";
7
- export { defineSchedule } from "./schedules/index.js";
8
- export { getSession, getTurn, getContext, requireContext, hasContext, setContext, ensureContext } from "./context/index.js";
9
- export { loadAgent } from "./loader.js";
10
- export { runAgent, streamAgent } from "./runner/index.js";
11
- export { discoverAgent } from "./discover/index.js";
12
- export { bearer, basic } from "./auth/index.js";
13
- export { createSessionStarted, createTurnStarted, createMessageReceived, createMessageAppended, createMessageCompleted, createStepStarted, createStepCompleted, createTurnCompleted, createSessionWaiting, createSessionCompleted, encodeEvent, encodeEvents, } from "./protocol/events.js";
1
+ import {
2
+ defineAgent
3
+ } from "./chunk-FQ7KDNV5.js";
4
+ import {
5
+ basic,
6
+ bearer
7
+ } from "./chunk-CKHBEZCT.js";
8
+ import {
9
+ CencoriMemoryStore,
10
+ DEFAULT_TEMPLATE,
11
+ FileStore,
12
+ InMemoryStore,
13
+ KeyFactsStrategy,
14
+ LastNStrategy,
15
+ Memory,
16
+ SemanticRecall,
17
+ SqliteStore,
18
+ SummaryStrategy,
19
+ WORKING_MEMORY_SYSTEM_INSTRUCTION,
20
+ WorkingMemory,
21
+ runAgent,
22
+ streamAgent
23
+ } from "./chunk-4WSILP75.js";
24
+ import {
25
+ loadAgent
26
+ } from "./chunk-KVSX4MLK.js";
27
+ import {
28
+ discoverAgent
29
+ } from "./chunk-6XETPLIF.js";
30
+ import {
31
+ createMessageAppended,
32
+ createMessageCompleted,
33
+ createMessageReceived,
34
+ createReasoningAppended,
35
+ createReasoningCompleted,
36
+ createSessionCompleted,
37
+ createSessionFailed,
38
+ createSessionStarted,
39
+ createSessionWaiting,
40
+ createStepCompleted,
41
+ createStepFailed,
42
+ createStepStarted,
43
+ createSubagentCalled,
44
+ createSubagentCompleted,
45
+ createToolCallCompleted,
46
+ createToolCallStarted,
47
+ createTurnCompleted,
48
+ createTurnFailed,
49
+ createTurnStarted,
50
+ encodeEvent,
51
+ encodeEvents
52
+ } from "./chunk-QE46QFID.js";
53
+ import {
54
+ defineTool,
55
+ toModelOutput
56
+ } from "./chunk-PHTJLJOV.js";
57
+ import {
58
+ defineSkill,
59
+ getSkill
60
+ } from "./chunk-LQC65UHE.js";
61
+ import {
62
+ defineInstructions,
63
+ loadInstructions
64
+ } from "./chunk-L3BTL5FM.js";
65
+ import {
66
+ defineHook
67
+ } from "./chunk-3CNQ6HQV.js";
68
+ import {
69
+ GET,
70
+ POST,
71
+ defineChannel
72
+ } from "./chunk-ZJNHQXMO.js";
73
+ import {
74
+ defineSchedule
75
+ } from "./chunk-4L7WVCTU.js";
76
+ import {
77
+ ensureContext,
78
+ getContext,
79
+ getSession,
80
+ getTurn,
81
+ hasContext,
82
+ requireContext,
83
+ setContext,
84
+ setSession,
85
+ setTurn
86
+ } from "./chunk-WAD7VLNI.js";
87
+
88
+ // src/connections/index.ts
89
+ function defineConnection(config) {
90
+ if (!config.name || !config.description) {
91
+ throw new Error("Connection must have name and description");
92
+ }
93
+ if (!config.auth?.type) {
94
+ throw new Error("Connection must have an auth type");
95
+ }
96
+ return config;
97
+ }
98
+ export {
99
+ CencoriMemoryStore,
100
+ DEFAULT_TEMPLATE,
101
+ FileStore,
102
+ GET,
103
+ InMemoryStore,
104
+ KeyFactsStrategy,
105
+ LastNStrategy,
106
+ Memory,
107
+ POST,
108
+ SemanticRecall,
109
+ SqliteStore,
110
+ SummaryStrategy,
111
+ WORKING_MEMORY_SYSTEM_INSTRUCTION,
112
+ WorkingMemory,
113
+ basic,
114
+ bearer,
115
+ createMessageAppended,
116
+ createMessageCompleted,
117
+ createMessageReceived,
118
+ createReasoningAppended,
119
+ createReasoningCompleted,
120
+ createSessionCompleted,
121
+ createSessionFailed,
122
+ createSessionStarted,
123
+ createSessionWaiting,
124
+ createStepCompleted,
125
+ createStepFailed,
126
+ createStepStarted,
127
+ createSubagentCalled,
128
+ createSubagentCompleted,
129
+ createToolCallCompleted,
130
+ createToolCallStarted,
131
+ createTurnCompleted,
132
+ createTurnFailed,
133
+ createTurnStarted,
134
+ defineAgent,
135
+ defineChannel,
136
+ defineConnection,
137
+ defineHook,
138
+ defineInstructions,
139
+ defineSchedule,
140
+ defineSkill,
141
+ defineTool,
142
+ discoverAgent,
143
+ encodeEvent,
144
+ encodeEvents,
145
+ ensureContext,
146
+ getContext,
147
+ getSession,
148
+ getSkill,
149
+ getTurn,
150
+ hasContext,
151
+ loadAgent,
152
+ loadInstructions,
153
+ requireContext,
154
+ runAgent,
155
+ setContext,
156
+ setSession,
157
+ setTurn,
158
+ streamAgent,
159
+ toModelOutput
160
+ };
14
161
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIhD,OAAO,EACL,oBAAoB,EAAE,iBAAiB,EAAE,qBAAqB,EAC9D,qBAAqB,EAAE,sBAAsB,EAAE,iBAAiB,EAChE,mBAAmB,EAAE,mBAAmB,EAAE,oBAAoB,EAC9D,sBAAsB,EAAE,WAAW,EAAE,YAAY,GAClD,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"sources":["../src/connections/index.ts"],"sourcesContent":["import type { ConnectionConfig } from \"../types\";\n\nexport function defineConnection(config: ConnectionConfig): ConnectionConfig {\n if (!config.name || !config.description) {\n throw new Error(\"Connection must have name and description\");\n }\n if (!config.auth?.type) {\n throw new Error(\"Connection must have an auth type\");\n }\n return config;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,SAAS,iBAAiB,QAA4C;AAC3E,MAAI,CAAC,OAAO,QAAQ,CAAC,OAAO,aAAa;AACvC,UAAM,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AACA,MAAI,CAAC,OAAO,MAAM,MAAM;AACtB,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AACA,SAAO;AACT;","names":[]}