@rool-dev/sdk 0.3.1-dev.6472332 → 0.3.1-dev.94e9f4d
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.
- package/README.md +102 -24
- package/dist/channel.d.ts +135 -4
- package/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +351 -32
- package/dist/channel.js.map +1 -1
- package/dist/client.d.ts +11 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +14 -0
- package/dist/client.js.map +1 -1
- package/dist/graphql.d.ts +15 -10
- package/dist/graphql.d.ts.map +1 -1
- package/dist/graphql.js +68 -31
- package/dist/graphql.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/subscription.d.ts.map +1 -1
- package/dist/subscription.js +2 -0
- package/dist/subscription.js.map +1 -1
- package/dist/types.d.ts +41 -6
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -10,7 +10,8 @@ Use Rool to programmatically instruct agents to generate content, research topic
|
|
|
10
10
|
|
|
11
11
|
**Core primitives:**
|
|
12
12
|
- **Spaces** — Containers for objects, schema, metadata, and channels
|
|
13
|
-
- **Channels** — Named contexts within a space
|
|
13
|
+
- **Channels** — Named contexts within a space. All object and AI operations go through a channel.
|
|
14
|
+
- **Conversations** — Independent interaction histories within a channel. Most apps use a single `'default'` conversation; multi-conversation apps (e.g., chat with multiple threads) can open additional ones.
|
|
14
15
|
- **Objects** — Key-value records with any fields you define. References between objects are data fields whose values are object IDs.
|
|
15
16
|
- **AI operations** — Create, update, or query objects using natural language and `{{placeholders}}`
|
|
16
17
|
|
|
@@ -84,7 +85,7 @@ channel.close();
|
|
|
84
85
|
|
|
85
86
|
### Spaces and Channels
|
|
86
87
|
|
|
87
|
-
A **space** is a container that holds objects, schema, metadata, and channels. A **channel** is a named context within a space — it's the handle you use for all object and AI operations. Each channel
|
|
88
|
+
A **space** is a container that holds objects, schema, metadata, and channels. A **channel** is a named context within a space — it's the handle you use for all object and AI operations. Each channel contains one or more **conversations**, each with independent interaction history.
|
|
88
89
|
|
|
89
90
|
There are two main handles:
|
|
90
91
|
- **`RoolSpace`** — Lightweight admin handle for user management, link access, channel management, and export. No real-time subscription.
|
|
@@ -111,6 +112,40 @@ The `channelId` is fixed when you open a channel and cannot be changed. To use a
|
|
|
111
112
|
- 1–32 characters
|
|
112
113
|
- Only alphanumeric characters, hyphens (`-`), and underscores (`_`)
|
|
113
114
|
|
|
115
|
+
### Conversations
|
|
116
|
+
|
|
117
|
+
A **conversation** is a named interaction history within a channel. By default, all operations use the `'default'` conversation — most apps never need to think about conversations at all.
|
|
118
|
+
|
|
119
|
+
For apps that need multiple independent interaction threads (e.g., a chat sidebar with multiple threads), use `channel.conversation()` to get a handle scoped to a specific conversation:
|
|
120
|
+
|
|
121
|
+
```typescript
|
|
122
|
+
// Default conversation — most apps use this
|
|
123
|
+
const channel = await client.openChannel('space-id', 'main');
|
|
124
|
+
await channel.prompt('Hello'); // Uses 'default' conversation
|
|
125
|
+
|
|
126
|
+
// Conversation handle — for multi-thread UIs
|
|
127
|
+
const thread = channel.conversation('thread-42');
|
|
128
|
+
await thread.prompt('Hello'); // Uses 'thread-42' conversation
|
|
129
|
+
thread.getInteractions(); // Interactions for thread-42 only
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Each conversation has its own interaction history and optional system instruction. Conversations are auto-created on first interaction — no explicit create step needed. The 50-message cap applies per conversation. All conversations share one SSE connection per channel.
|
|
133
|
+
|
|
134
|
+
```typescript
|
|
135
|
+
// System instructions are per-conversation
|
|
136
|
+
const thread = channel.conversation('research');
|
|
137
|
+
await thread.setSystemInstruction('Respond in haiku');
|
|
138
|
+
|
|
139
|
+
// List all conversations in this channel
|
|
140
|
+
const conversations = channel.getConversations();
|
|
141
|
+
|
|
142
|
+
// Delete a conversation (cannot delete 'default')
|
|
143
|
+
await channel.deleteConversation('old-thread');
|
|
144
|
+
|
|
145
|
+
// Rename a conversation
|
|
146
|
+
await thread.rename('Research Thread');
|
|
147
|
+
```
|
|
148
|
+
|
|
114
149
|
### Objects & References
|
|
115
150
|
|
|
116
151
|
**Objects** are plain key-value records. The `id` field is reserved; everything else is application-defined.
|
|
@@ -568,6 +603,7 @@ Publish, manage, and discover apps. See [`@rool-dev/app`](/app/) for building ap
|
|
|
568
603
|
| `listApps(): Promise<PublishedAppInfo[]>` | List your own published apps |
|
|
569
604
|
| `getAppInfo(appId): Promise<PublishedAppInfo \| null>` | Get info for a specific app |
|
|
570
605
|
| `findApps(options?): Promise<PublishedAppInfo[]>` | Search public apps. Options: `query` (semantic search string), `limit` (default 20, max 100). Omit `query` to browse all. |
|
|
606
|
+
| `installApp(spaceId, appId, channelId?): Promise<string>` | Install an app into a space. Creates/updates a channel with the app's manifest settings (name, system instruction, collections). Returns the channel ID. Defaults `channelId` to `appId`. |
|
|
571
607
|
|
|
572
608
|
### Utilities
|
|
573
609
|
|
|
@@ -649,6 +685,7 @@ A channel is a named context within a space. All object operations, AI prompts,
|
|
|
649
685
|
| `userId: string` | Current user's ID |
|
|
650
686
|
| `channelId: string` | Channel ID (read-only, fixed at open time) |
|
|
651
687
|
| `isReadOnly: boolean` | True if viewer role |
|
|
688
|
+
| `appUrl: string \| null` | URL of the installed app, or null if this is a plain channel |
|
|
652
689
|
|
|
653
690
|
### Lifecycle
|
|
654
691
|
|
|
@@ -656,6 +693,7 @@ A channel is a named context within a space. All object operations, AI prompts,
|
|
|
656
693
|
|--------|-------------|
|
|
657
694
|
| `close(): void` | Clean up resources and stop receiving updates |
|
|
658
695
|
| `rename(name): Promise<void>` | Rename this channel |
|
|
696
|
+
| `conversation(conversationId): ConversationHandle` | Get a handle scoped to a specific conversation (see [Conversations](#conversations)) |
|
|
659
697
|
|
|
660
698
|
### Object Operations
|
|
661
699
|
|
|
@@ -889,9 +927,12 @@ channel.on('metadataUpdated', ({ metadata, source }) => void)
|
|
|
889
927
|
// Collection schema changed
|
|
890
928
|
channel.on('schemaUpdated', ({ schema, source }) => void)
|
|
891
929
|
|
|
892
|
-
// Channel updated (
|
|
930
|
+
// Channel metadata updated (name, appUrl)
|
|
893
931
|
channel.on('channelUpdated', ({ channelId, source }) => void)
|
|
894
932
|
|
|
933
|
+
// Conversation interaction history updated
|
|
934
|
+
channel.on('conversationUpdated', ({ conversationId, channelId, source }) => void)
|
|
935
|
+
|
|
895
936
|
// Full state replacement (undo/redo, resync after error)
|
|
896
937
|
channel.on('reset', ({ source }) => void)
|
|
897
938
|
|
|
@@ -917,13 +958,13 @@ try {
|
|
|
917
958
|
|
|
918
959
|
## Interaction History
|
|
919
960
|
|
|
920
|
-
Each channel
|
|
961
|
+
Each channel contains one or more conversations, each with its own interaction history. The history records all meaningful interactions (prompts, object mutations) as self-contained entries, each capturing the request and its result. History is stored in the space data itself and syncs in real-time to all clients.
|
|
921
962
|
|
|
922
963
|
### What the AI Receives
|
|
923
964
|
|
|
924
965
|
AI operations (`prompt`, `createObject`, `updateObject`, `findObjects`) automatically receive:
|
|
925
966
|
|
|
926
|
-
- **Interaction history** — Previous interactions and their results from
|
|
967
|
+
- **Interaction history** — Previous interactions and their results from the current conversation
|
|
927
968
|
- **Recently modified objects** — Objects in the space recently created or changed
|
|
928
969
|
- **Selected objects** — Objects passed via `objectIds` are given primary focus
|
|
929
970
|
|
|
@@ -932,24 +973,27 @@ This context flows automatically — no configuration needed. The AI sees enough
|
|
|
932
973
|
### Accessing History
|
|
933
974
|
|
|
934
975
|
```typescript
|
|
935
|
-
// Get interactions for
|
|
976
|
+
// Get interactions for the current conversation
|
|
936
977
|
const interactions = channel.getInteractions();
|
|
937
978
|
// Returns: Interaction[]
|
|
938
979
|
```
|
|
939
980
|
|
|
940
|
-
###
|
|
981
|
+
### Conversation History Methods
|
|
941
982
|
|
|
942
983
|
| Method | Description |
|
|
943
984
|
|--------|-------------|
|
|
944
|
-
| `getInteractions(): Interaction[]` | Get interactions for
|
|
945
|
-
| `getSystemInstruction(): string \| undefined` | Get system instruction for
|
|
946
|
-
| `setSystemInstruction(instruction): Promise<void>` | Set system instruction for
|
|
985
|
+
| `getInteractions(): Interaction[]` | Get interactions for the default conversation |
|
|
986
|
+
| `getSystemInstruction(): string \| undefined` | Get system instruction for the default conversation |
|
|
987
|
+
| `setSystemInstruction(instruction): Promise<void>` | Set system instruction for the default conversation. Pass `null` to clear. |
|
|
988
|
+
| `getConversations(): ConversationInfo[]` | List all conversations in this channel |
|
|
989
|
+
| `deleteConversation(conversationId): Promise<void>` | Delete a conversation (cannot delete `'default'`) |
|
|
990
|
+
| `renameConversation(name): Promise<void>` | Rename the default conversation |
|
|
947
991
|
|
|
948
992
|
Channel management (listing, renaming, deleting channels) is done via the client — see [Channel Management](#channel-management).
|
|
949
993
|
|
|
950
994
|
### System Instructions
|
|
951
995
|
|
|
952
|
-
System instructions customize how the AI behaves within a
|
|
996
|
+
System instructions customize how the AI behaves within a conversation. The instruction persists across all prompts in that conversation.
|
|
953
997
|
|
|
954
998
|
```typescript
|
|
955
999
|
// Make the AI behave like an SQL interpreter
|
|
@@ -976,19 +1020,25 @@ System instructions are useful for:
|
|
|
976
1020
|
### Listening for Updates
|
|
977
1021
|
|
|
978
1022
|
```typescript
|
|
1023
|
+
// Listen for conversation updates (interaction history changes)
|
|
1024
|
+
channel.on('conversationUpdated', ({ conversationId, channelId, source }) => {
|
|
1025
|
+
const interactions = channel.getInteractions();
|
|
1026
|
+
renderInteractions(interactions);
|
|
1027
|
+
});
|
|
1028
|
+
|
|
1029
|
+
// channelUpdated also fires for the active conversation (backward compat)
|
|
979
1030
|
channel.on('channelUpdated', ({ channelId, source }) => {
|
|
980
|
-
// Channel updated - refresh if needed
|
|
981
1031
|
const interactions = channel.getInteractions();
|
|
982
1032
|
renderInteractions(interactions);
|
|
983
1033
|
});
|
|
984
1034
|
```
|
|
985
1035
|
|
|
986
|
-
### Multiple Channels
|
|
1036
|
+
### Multiple Channels and Conversations
|
|
987
1037
|
|
|
988
|
-
Each channel
|
|
1038
|
+
Each channel contains conversations with independent interaction history. For most apps, a single channel with the default conversation is sufficient. For multi-thread UIs, use conversation handles within one channel:
|
|
989
1039
|
|
|
990
1040
|
```typescript
|
|
991
|
-
//
|
|
1041
|
+
// Multiple channels on the same space
|
|
992
1042
|
const research = await client.openChannel('space-id', 'research');
|
|
993
1043
|
const main = await client.openChannel('space-id', 'main');
|
|
994
1044
|
|
|
@@ -996,19 +1046,27 @@ const main = await client.openChannel('space-id', 'main');
|
|
|
996
1046
|
await research.prompt("Analyze this data");
|
|
997
1047
|
await main.prompt("Summarize findings");
|
|
998
1048
|
|
|
1049
|
+
// Multiple conversations within one channel (shared SSE connection)
|
|
1050
|
+
const channel = await client.openChannel('space-id', 'main');
|
|
1051
|
+
const thread1 = channel.conversation('thread-1');
|
|
1052
|
+
const thread2 = channel.conversation('thread-2');
|
|
1053
|
+
|
|
1054
|
+
await thread1.prompt("Research topic A");
|
|
1055
|
+
await thread2.prompt("Research topic B");
|
|
1056
|
+
|
|
999
1057
|
// Close when done
|
|
1000
1058
|
research.close();
|
|
1001
1059
|
main.close();
|
|
1002
1060
|
```
|
|
1003
1061
|
|
|
1004
1062
|
**Use cases:**
|
|
1005
|
-
- **Chat app with sidebar** — Each sidebar entry is a
|
|
1006
|
-
- **Page refresh** — Store the channelId in localStorage to resume
|
|
1063
|
+
- **Chat app with sidebar** — Each sidebar entry is a conversation handle within the same channel
|
|
1064
|
+
- **Page refresh** — Store the channelId and conversationId in localStorage to resume
|
|
1007
1065
|
- **Collaborative channels** — Share a channelId between users to enable shared AI interaction history
|
|
1008
1066
|
|
|
1009
|
-
**Tip:** Use the user's id as
|
|
1067
|
+
**Tip:** Use the user's id as conversationId to give each user their own interaction history within a shared channel.
|
|
1010
1068
|
|
|
1011
|
-
Note: Interaction history is truncated to the most recent 50 entries
|
|
1069
|
+
Note: Interaction history is truncated to the most recent 50 entries per conversation.
|
|
1012
1070
|
|
|
1013
1071
|
### The ai Field
|
|
1014
1072
|
|
|
@@ -1018,7 +1076,7 @@ The `ai` field in interactions distinguishes AI-generated responses from synthet
|
|
|
1018
1076
|
|
|
1019
1077
|
### Tool Calls
|
|
1020
1078
|
|
|
1021
|
-
The `toolCalls` array captures what the AI agent did during execution. Use it to build responsive UIs that show progress while the agent works — the `
|
|
1079
|
+
The `toolCalls` array captures what the AI agent did during execution. Use it to build responsive UIs that show progress while the agent works — the `conversationUpdated` event fires when each tool starts and completes. A tool call without a `result` is still running; once `result` is present, the tool has finished.
|
|
1022
1080
|
|
|
1023
1081
|
## Data Types
|
|
1024
1082
|
|
|
@@ -1069,17 +1127,36 @@ interface RoolObjectStat {
|
|
|
1069
1127
|
}
|
|
1070
1128
|
```
|
|
1071
1129
|
|
|
1072
|
-
### Channels
|
|
1130
|
+
### Channels and Conversations
|
|
1073
1131
|
|
|
1074
1132
|
```typescript
|
|
1075
|
-
//
|
|
1133
|
+
// Conversation — holds interaction history and optional system instruction
|
|
1134
|
+
interface Conversation {
|
|
1135
|
+
name?: string; // Conversation name (optional)
|
|
1136
|
+
systemInstruction?: string; // Custom system instruction for AI
|
|
1137
|
+
createdAt: number; // Timestamp when conversation was created
|
|
1138
|
+
createdBy: string; // User ID who created the conversation
|
|
1139
|
+
interactions: Interaction[]; // Interaction history
|
|
1140
|
+
}
|
|
1141
|
+
|
|
1142
|
+
// Conversation summary info (returned by channel.getConversations())
|
|
1143
|
+
interface ConversationInfo {
|
|
1144
|
+
id: string;
|
|
1145
|
+
name: string | null;
|
|
1146
|
+
systemInstruction: string | null;
|
|
1147
|
+
createdAt: number;
|
|
1148
|
+
createdBy: string;
|
|
1149
|
+
interactionCount: number;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
// Channel container with metadata and conversations
|
|
1076
1153
|
interface Channel {
|
|
1077
1154
|
name?: string; // Channel name (optional)
|
|
1078
1155
|
createdAt: number; // Timestamp when channel was created
|
|
1079
1156
|
createdBy: string; // User ID who created the channel
|
|
1080
1157
|
createdByName?: string; // Display name at time of creation
|
|
1081
|
-
|
|
1082
|
-
|
|
1158
|
+
appUrl?: string; // URL of installed app (set by installApp)
|
|
1159
|
+
conversations: Record<string, Conversation>; // Keyed by conversation ID
|
|
1083
1160
|
}
|
|
1084
1161
|
|
|
1085
1162
|
// Channel summary info (returned by client.getChannels)
|
|
@@ -1090,6 +1167,7 @@ interface ChannelInfo {
|
|
|
1090
1167
|
createdBy: string;
|
|
1091
1168
|
createdByName: string | null;
|
|
1092
1169
|
interactionCount: number;
|
|
1170
|
+
appUrl: string | null; // URL of installed app, or null
|
|
1093
1171
|
}
|
|
1094
1172
|
```
|
|
1095
1173
|
|
package/dist/channel.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { GraphQLClient } from './graphql.js';
|
|
|
3
3
|
import type { MediaClient } from './media.js';
|
|
4
4
|
import type { AuthManager } from './auth.js';
|
|
5
5
|
import type { Logger } from './logger.js';
|
|
6
|
-
import type { RoolObject, RoolObjectStat, ChannelEvents, RoolUserRole, PromptOptions, FindObjectsOptions, CreateObjectOptions, UpdateObjectOptions, MediaInfo, MediaResponse, Interaction, Channel, LinkAccess, SpaceSchema, CollectionDef, FieldDef } from './types.js';
|
|
6
|
+
import type { RoolObject, RoolObjectStat, ChannelEvents, RoolUserRole, PromptOptions, FindObjectsOptions, CreateObjectOptions, UpdateObjectOptions, MediaInfo, MediaResponse, Interaction, Channel, ConversationInfo, LinkAccess, SpaceSchema, CollectionDef, FieldDef } from './types.js';
|
|
7
7
|
export declare function generateEntityId(): string;
|
|
8
8
|
export interface ChannelConfig {
|
|
9
9
|
id: string;
|
|
@@ -56,6 +56,7 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
56
56
|
private _linkAccess;
|
|
57
57
|
private _userId;
|
|
58
58
|
private _channelId;
|
|
59
|
+
private _conversationId;
|
|
59
60
|
private _closed;
|
|
60
61
|
private graphqlClient;
|
|
61
62
|
private mediaClient;
|
|
@@ -94,11 +95,40 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
94
95
|
* Fixed at open time — cannot be changed.
|
|
95
96
|
*/
|
|
96
97
|
get channelId(): string;
|
|
98
|
+
/**
|
|
99
|
+
* Get the conversation ID for this channel.
|
|
100
|
+
* Defaults to 'default' for most apps.
|
|
101
|
+
*/
|
|
102
|
+
get conversationId(): string;
|
|
97
103
|
get isReadOnly(): boolean;
|
|
98
104
|
/**
|
|
99
|
-
* Get
|
|
105
|
+
* Get the app URL if this channel was created via installApp, or null.
|
|
106
|
+
*/
|
|
107
|
+
get appUrl(): string | null;
|
|
108
|
+
/**
|
|
109
|
+
* Get interactions for the current conversation.
|
|
100
110
|
*/
|
|
101
111
|
getInteractions(): Interaction[];
|
|
112
|
+
/** @internal */
|
|
113
|
+
_getInteractionsImpl(conversationId: string): Interaction[];
|
|
114
|
+
/**
|
|
115
|
+
* Get all conversations in this channel.
|
|
116
|
+
* Returns summary info (no full interaction data) for each conversation.
|
|
117
|
+
*/
|
|
118
|
+
getConversations(): ConversationInfo[];
|
|
119
|
+
/**
|
|
120
|
+
* Delete a conversation from this channel.
|
|
121
|
+
* Cannot delete the conversation you are currently using.
|
|
122
|
+
*/
|
|
123
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
124
|
+
/**
|
|
125
|
+
* Get a handle for a specific conversation within this channel.
|
|
126
|
+
* The handle scopes AI and mutation operations to that conversation's
|
|
127
|
+
* interaction history, while sharing the channel's single SSE connection.
|
|
128
|
+
*
|
|
129
|
+
* Conversations are auto-created on first interaction — no explicit create needed.
|
|
130
|
+
*/
|
|
131
|
+
conversation(conversationId: string): ConversationHandle;
|
|
102
132
|
/**
|
|
103
133
|
* Close this channel and clean up resources.
|
|
104
134
|
* Stops real-time subscription and unregisters from client.
|
|
@@ -162,6 +192,11 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
162
192
|
objects: RoolObject[];
|
|
163
193
|
message: string;
|
|
164
194
|
}>;
|
|
195
|
+
/** @internal */
|
|
196
|
+
_findObjectsImpl(options: FindObjectsOptions, conversationId: string): Promise<{
|
|
197
|
+
objects: RoolObject[];
|
|
198
|
+
message: string;
|
|
199
|
+
}>;
|
|
165
200
|
/**
|
|
166
201
|
* Get all object IDs (sync, from local cache).
|
|
167
202
|
* The list is loaded on open and kept current via SSE events.
|
|
@@ -182,6 +217,11 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
182
217
|
object: RoolObject;
|
|
183
218
|
message: string;
|
|
184
219
|
}>;
|
|
220
|
+
/** @internal */
|
|
221
|
+
_createObjectImpl(options: CreateObjectOptions, conversationId: string): Promise<{
|
|
222
|
+
object: RoolObject;
|
|
223
|
+
message: string;
|
|
224
|
+
}>;
|
|
185
225
|
/**
|
|
186
226
|
* Update an existing object.
|
|
187
227
|
* @param objectId - The ID of the object to update
|
|
@@ -194,11 +234,18 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
194
234
|
object: RoolObject;
|
|
195
235
|
message: string;
|
|
196
236
|
}>;
|
|
237
|
+
/** @internal */
|
|
238
|
+
_updateObjectImpl(objectId: string, options: UpdateObjectOptions, conversationId: string): Promise<{
|
|
239
|
+
object: RoolObject;
|
|
240
|
+
message: string;
|
|
241
|
+
}>;
|
|
197
242
|
/**
|
|
198
243
|
* Delete objects by IDs.
|
|
199
244
|
* Other objects that reference deleted objects via data fields will retain stale ref values.
|
|
200
245
|
*/
|
|
201
246
|
deleteObjects(objectIds: string[]): Promise<void>;
|
|
247
|
+
/** @internal */
|
|
248
|
+
_deleteObjectsImpl(objectIds: string[], conversationId: string): Promise<void>;
|
|
202
249
|
/**
|
|
203
250
|
* Get the current schema for this space.
|
|
204
251
|
* Returns a map of collection names to their definitions.
|
|
@@ -211,6 +258,8 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
211
258
|
* @returns The created CollectionDef
|
|
212
259
|
*/
|
|
213
260
|
createCollection(name: string, fields: FieldDef[]): Promise<CollectionDef>;
|
|
261
|
+
/** @internal */
|
|
262
|
+
_createCollectionImpl(name: string, fields: FieldDef[], conversationId: string): Promise<CollectionDef>;
|
|
214
263
|
/**
|
|
215
264
|
* Alter an existing collection schema, replacing its field definitions.
|
|
216
265
|
* @param name - Name of the collection to alter
|
|
@@ -218,26 +267,47 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
218
267
|
* @returns The updated CollectionDef
|
|
219
268
|
*/
|
|
220
269
|
alterCollection(name: string, fields: FieldDef[]): Promise<CollectionDef>;
|
|
270
|
+
/** @internal */
|
|
271
|
+
_alterCollectionImpl(name: string, fields: FieldDef[], conversationId: string): Promise<CollectionDef>;
|
|
221
272
|
/**
|
|
222
273
|
* Drop a collection schema.
|
|
223
274
|
* @param name - Name of the collection to drop
|
|
224
275
|
*/
|
|
225
276
|
dropCollection(name: string): Promise<void>;
|
|
277
|
+
/** @internal */
|
|
278
|
+
_dropCollectionImpl(name: string, conversationId: string): Promise<void>;
|
|
226
279
|
/**
|
|
227
|
-
* Get the system instruction for
|
|
280
|
+
* Get the system instruction for the current conversation.
|
|
228
281
|
* Returns undefined if no system instruction is set.
|
|
229
282
|
*/
|
|
230
283
|
getSystemInstruction(): string | undefined;
|
|
284
|
+
/** @internal */
|
|
285
|
+
_getSystemInstructionImpl(conversationId: string): string | undefined;
|
|
231
286
|
/**
|
|
232
|
-
* Set the system instruction for
|
|
287
|
+
* Set the system instruction for the current conversation.
|
|
233
288
|
* Pass null to clear the instruction.
|
|
234
289
|
*/
|
|
235
290
|
setSystemInstruction(instruction: string | null): Promise<void>;
|
|
291
|
+
/** @internal */
|
|
292
|
+
_setSystemInstructionImpl(instruction: string | null, conversationId: string): Promise<void>;
|
|
293
|
+
/**
|
|
294
|
+
* Rename the current conversation.
|
|
295
|
+
*/
|
|
296
|
+
renameConversation(name: string): Promise<void>;
|
|
297
|
+
/** @internal */
|
|
298
|
+
_renameConversationImpl(name: string, conversationId: string): Promise<void>;
|
|
299
|
+
/**
|
|
300
|
+
* Ensure a conversation exists in the local channel cache.
|
|
301
|
+
* @internal
|
|
302
|
+
*/
|
|
303
|
+
_ensureConversationImpl(conversationId: string): void;
|
|
236
304
|
/**
|
|
237
305
|
* Set a space-level metadata value.
|
|
238
306
|
* Metadata is stored in meta and hidden from AI operations.
|
|
239
307
|
*/
|
|
240
308
|
setMetadata(key: string, value: unknown): void;
|
|
309
|
+
/** @internal */
|
|
310
|
+
_setMetadataImpl(key: string, value: unknown, conversationId: string): void;
|
|
241
311
|
/**
|
|
242
312
|
* Get a space-level metadata value.
|
|
243
313
|
*/
|
|
@@ -254,6 +324,11 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
254
324
|
message: string;
|
|
255
325
|
objects: RoolObject[];
|
|
256
326
|
}>;
|
|
327
|
+
/** @internal */
|
|
328
|
+
_promptImpl(prompt: string, options: PromptOptions | undefined, conversationId: string): Promise<{
|
|
329
|
+
message: string;
|
|
330
|
+
objects: RoolObject[];
|
|
331
|
+
}>;
|
|
257
332
|
/**
|
|
258
333
|
* Rename this channel.
|
|
259
334
|
*/
|
|
@@ -321,4 +396,60 @@ export declare class RoolChannel extends EventEmitter<ChannelEvents> {
|
|
|
321
396
|
*/
|
|
322
397
|
private _handleObjectDeleted;
|
|
323
398
|
}
|
|
399
|
+
/**
|
|
400
|
+
* A lightweight handle for a specific conversation within a channel.
|
|
401
|
+
*
|
|
402
|
+
* Scopes AI and mutation operations to a particular conversation's interaction
|
|
403
|
+
* history, while sharing the channel's single SSE connection and object state.
|
|
404
|
+
*
|
|
405
|
+
* Obtain via `channel.conversation('thread-id')`.
|
|
406
|
+
* Conversations are auto-created on first interaction.
|
|
407
|
+
*/
|
|
408
|
+
export declare class ConversationHandle {
|
|
409
|
+
/** @internal */
|
|
410
|
+
private _channel;
|
|
411
|
+
private _conversationId;
|
|
412
|
+
/** @internal */
|
|
413
|
+
constructor(channel: RoolChannel, conversationId: string);
|
|
414
|
+
/** The conversation ID this handle is scoped to. */
|
|
415
|
+
get conversationId(): string;
|
|
416
|
+
/** Get interactions for this conversation. */
|
|
417
|
+
getInteractions(): Interaction[];
|
|
418
|
+
/** Get the system instruction for this conversation. */
|
|
419
|
+
getSystemInstruction(): string | undefined;
|
|
420
|
+
/** Set the system instruction for this conversation. Pass null to clear. */
|
|
421
|
+
setSystemInstruction(instruction: string | null): Promise<void>;
|
|
422
|
+
/** Rename this conversation. */
|
|
423
|
+
rename(name: string): Promise<void>;
|
|
424
|
+
/** Find objects using structured filters and/or natural language. */
|
|
425
|
+
findObjects(options: FindObjectsOptions): Promise<{
|
|
426
|
+
objects: RoolObject[];
|
|
427
|
+
message: string;
|
|
428
|
+
}>;
|
|
429
|
+
/** Create a new object. */
|
|
430
|
+
createObject(options: CreateObjectOptions): Promise<{
|
|
431
|
+
object: RoolObject;
|
|
432
|
+
message: string;
|
|
433
|
+
}>;
|
|
434
|
+
/** Update an existing object. */
|
|
435
|
+
updateObject(objectId: string, options: UpdateObjectOptions): Promise<{
|
|
436
|
+
object: RoolObject;
|
|
437
|
+
message: string;
|
|
438
|
+
}>;
|
|
439
|
+
/** Delete objects by IDs. */
|
|
440
|
+
deleteObjects(objectIds: string[]): Promise<void>;
|
|
441
|
+
/** Send a prompt to the AI agent, scoped to this conversation's history. */
|
|
442
|
+
prompt(text: string, options?: PromptOptions): Promise<{
|
|
443
|
+
message: string;
|
|
444
|
+
objects: RoolObject[];
|
|
445
|
+
}>;
|
|
446
|
+
/** Create a new collection schema. */
|
|
447
|
+
createCollection(name: string, fields: FieldDef[]): Promise<CollectionDef>;
|
|
448
|
+
/** Alter an existing collection schema. */
|
|
449
|
+
alterCollection(name: string, fields: FieldDef[]): Promise<CollectionDef>;
|
|
450
|
+
/** Drop a collection schema. */
|
|
451
|
+
dropCollection(name: string): Promise<void>;
|
|
452
|
+
/** Set a space-level metadata value. */
|
|
453
|
+
setMetadata(key: string, value: unknown): void;
|
|
454
|
+
}
|
|
324
455
|
//# sourceMappingURL=channel.d.ts.map
|
package/dist/channel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,aAAa,EAGb,WAAW,EACX,OAAO,EACP,UAAU,EACV,WAAW,EACX,aAAa,EACb,QAAQ,EACT,MAAM,YAAY,CAAC;AAKpB,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAKD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC5C,wBAAwB;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,6CAA6C;IAC7C,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,UAAU,CAAW;IAC7B,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,aAAa,CAAS;IAI9B,OAAO,CAAC,iBAAiB,CAAwC;IAEjE,OAAO,CAAC,gBAAgB,CAAgD;IAExE,OAAO,CAAC,aAAa,CAAiC;gBAE1C,MAAM,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
|