@superblocksteam/vite-plugin-file-sync 2.0.68-next.0 → 2.0.68-next.2
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/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +28 -17
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.js +29 -0
- package/dist/ai-service/agent/tools/build-delete-file.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.js +5 -4
- package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +17 -6
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/entity-permissions.d.ts +23 -20
- package/dist/ai-service/agent/tools2/entity-permissions.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/entity-permissions.js +15 -11
- package/dist/ai-service/agent/tools2/entity-permissions.js.map +1 -1
- package/dist/ai-service/agent/tools2/example.js +2 -2
- package/dist/ai-service/agent/tools2/example.js.map +1 -1
- package/dist/ai-service/agent/tools2/index.d.ts +1 -1
- package/dist/ai-service/agent/tools2/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/index.js +1 -1
- package/dist/ai-service/agent/tools2/index.js.map +1 -1
- package/dist/ai-service/agent/tools2/registry.d.ts +4 -4
- package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/registry.js +41 -28
- package/dist/ai-service/agent/tools2/registry.js.map +1 -1
- package/dist/ai-service/agent/tools2/types.d.ts +36 -15
- package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/types.js.map +1 -1
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +5 -0
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +5 -7
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +36 -17
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/extract-history.d.ts +0 -85
- package/dist/ai-service/chat/extract-history.d.ts.map +1 -1
- package/dist/ai-service/chat/extract-history.js +3 -239
- package/dist/ai-service/chat/extract-history.js.map +1 -1
- package/dist/ai-service/index.d.ts +3 -2
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +26 -4
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/llm/context/constants.d.ts +7 -0
- package/dist/ai-service/llm/context/constants.d.ts.map +1 -1
- package/dist/ai-service/llm/context/constants.js +7 -0
- package/dist/ai-service/llm/context/constants.js.map +1 -1
- package/dist/ai-service/llm/context/context.d.ts +8 -1
- package/dist/ai-service/llm/context/context.d.ts.map +1 -1
- package/dist/ai-service/llm/context/context.js +47 -12
- package/dist/ai-service/llm/context/context.js.map +1 -1
- package/dist/ai-service/llm/context/internal-types.d.ts +1 -0
- package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -1
- package/dist/ai-service/llm/context/internal-types.js.map +1 -1
- package/dist/ai-service/llm/context/manager.d.ts +2 -1
- package/dist/ai-service/llm/context/manager.d.ts.map +1 -1
- package/dist/ai-service/llm/context/manager.js +2 -1
- package/dist/ai-service/llm/context/manager.js.map +1 -1
- package/dist/ai-service/llm/context/utils/message-utils.d.ts +10 -0
- package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -1
- package/dist/ai-service/llm/context/utils/message-utils.js +74 -0
- package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -1
- package/dist/ai-service/llm/error.d.ts +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +4 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +3 -1
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/idle.js +3 -1
- package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +4 -1
- package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/context-id.d.ts +1 -1
- package/dist/ai-service/state-machine/helpers/context-id.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/context-id.js +6 -7
- package/dist/ai-service/state-machine/helpers/context-id.js.map +1 -1
- package/dist/ai-service/state-machine/mocks.d.ts +1 -0
- package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
- package/dist/ai-service/state-machine/mocks.js +5 -1
- package/dist/ai-service/state-machine/mocks.js.map +1 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +18 -6
- package/dist/socket-manager.js.map +1 -1
- package/dist/sync-service/index.d.ts +5 -0
- package/dist/sync-service/index.d.ts.map +1 -1
- package/dist/sync-service/index.js +13 -1
- package/dist/sync-service/index.js.map +1 -1
- package/package.json +6 -6
|
@@ -86,7 +86,7 @@ export function setupExampleRegistry() {
|
|
|
86
86
|
// Or use a preset
|
|
87
87
|
// registry.addAccessRule(...presets.production());
|
|
88
88
|
// 2. Setup prompt handler
|
|
89
|
-
registry.setPromptHandler(async (tool, input, context) => {
|
|
89
|
+
registry.setPromptHandler(async (tool, input, _permissions, context) => {
|
|
90
90
|
console.log(`\n=== User Confirmation Required ===`);
|
|
91
91
|
console.log(`Tool: ${tool.name}`);
|
|
92
92
|
// Use tool formatting methods if available
|
|
@@ -113,7 +113,7 @@ export function setupExampleRegistry() {
|
|
|
113
113
|
console.log(`===================================\n`);
|
|
114
114
|
// In real implementation, show dialog and wait for user response
|
|
115
115
|
// For example: return await showConfirmDialog({ tool, input });
|
|
116
|
-
return ToolPermissionResponse.ALLOW; // Mock: auto-approve for demo
|
|
116
|
+
return { response: ToolPermissionResponse.ALLOW }; // Mock: auto-approve for demo
|
|
117
117
|
});
|
|
118
118
|
// 3. Register and instantiate tools with dependencies
|
|
119
119
|
const mockDeps = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/example.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/example.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
export type { Tool, ToolFactory, ToolExecutionResult, AccessControlContext, AccessControlRule, PromptHandler, EntityReference, } from "./types.js";
|
|
11
11
|
export { PermissionLevel, ToolCategory, ToolPermissionResponse, createToolFactory, } from "./types.js";
|
|
12
12
|
export type { EntityPermissionStore } from "./entity-permissions.js";
|
|
13
|
-
export { SessionEntityPermissionStore } from "./entity-permissions.js";
|
|
13
|
+
export { SessionEntityPermissionStore, PermissionKeyStrategy, ActionBasedPermissionKeyStrategy, type PermissionScope, type PermissionKey, } from "./entity-permissions.js";
|
|
14
14
|
export { ToolRegistry } from "./registry.js";
|
|
15
15
|
export { blockTools, promptForTools, requireRole, combineRules, forTools, forCategory, presets, } from "./access-control.js";
|
|
16
16
|
import { ToolRegistry } from "./registry.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,YAAY,EACV,IAAI,EACJ,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,YAAY,EACV,IAAI,EACJ,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,gCAAgC,EAChC,KAAK,eAAe,EACpB,KAAK,aAAa,GACnB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EACL,UAAU,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,OAAO,GACR,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,eAAO,MAAM,eAAe,cAAqB,CAAC"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* - Type-safe tool definitions
|
|
9
9
|
*/
|
|
10
10
|
export { PermissionLevel, ToolCategory, ToolPermissionResponse, createToolFactory, } from "./types.js";
|
|
11
|
-
export { SessionEntityPermissionStore } from "./entity-permissions.js";
|
|
11
|
+
export { SessionEntityPermissionStore, PermissionKeyStrategy, ActionBasedPermissionKeyStrategy, } from "./entity-permissions.js";
|
|
12
12
|
// Export registry
|
|
13
13
|
export { ToolRegistry } from "./registry.js";
|
|
14
14
|
// Export access control utilities
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAIpB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,gCAAgC,GAGjC,MAAM,yBAAyB,CAAC;AAEjC,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,kCAAkC;AAClC,OAAO,EACL,UAAU,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,OAAO,GACR,MAAM,qBAAqB,CAAC;AAE7B,4CAA4C;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC"}
|
|
@@ -118,9 +118,9 @@ export declare class ToolRegistry {
|
|
|
118
118
|
/**
|
|
119
119
|
* Set entity permission store for tracking per-entity approvals.
|
|
120
120
|
*
|
|
121
|
-
* When set, tools with `
|
|
122
|
-
* check if
|
|
123
|
-
* If any
|
|
121
|
+
* When set, tools with `getRequiredPermissions` defined will automatically
|
|
122
|
+
* check if required permissions have been approved before execution.
|
|
123
|
+
* If any permission is not approved, the user will be prompted.
|
|
124
124
|
*
|
|
125
125
|
* @param store - Entity permission store instance
|
|
126
126
|
*/
|
|
@@ -134,7 +134,7 @@ export declare class ToolRegistry {
|
|
|
134
134
|
* @param tool - Tool to get scope for
|
|
135
135
|
* @returns Permission scope string
|
|
136
136
|
*/
|
|
137
|
-
private
|
|
137
|
+
private getPermissionScope;
|
|
138
138
|
/**
|
|
139
139
|
* Check permission level for tool execution.
|
|
140
140
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/registry.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,IAAI,EACT,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,eAAe,EAGf,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { OperationQueue } from "../../../util/operation-queue.js";
|
|
2
|
-
import {
|
|
2
|
+
import { ActionBasedPermissionKeyStrategy, } from "./entity-permissions.js";
|
|
3
3
|
import { PermissionLevel, ToolPermissionResponse, ToolExecutionError, } from "./types.js";
|
|
4
4
|
/**
|
|
5
5
|
* Central registry for tools with access control.
|
|
@@ -18,7 +18,7 @@ export class ToolRegistry {
|
|
|
18
18
|
promptHandler;
|
|
19
19
|
promptQueue = new OperationQueue();
|
|
20
20
|
entityPermissionStore;
|
|
21
|
-
scopeStrategy = new
|
|
21
|
+
scopeStrategy = new ActionBasedPermissionKeyStrategy();
|
|
22
22
|
/**
|
|
23
23
|
* Register a tool factory and optionally instantiate it immediately.
|
|
24
24
|
*
|
|
@@ -169,14 +169,14 @@ export class ToolRegistry {
|
|
|
169
169
|
* @param handler - Prompt handler function
|
|
170
170
|
*/
|
|
171
171
|
setPromptHandler(handler) {
|
|
172
|
-
this.promptHandler = (tool, input, context) => this.promptQueue.enqueue(() => handler(tool, input, context));
|
|
172
|
+
this.promptHandler = (tool, input, permissions, context) => this.promptQueue.enqueue(() => handler(tool, input, permissions, context));
|
|
173
173
|
}
|
|
174
174
|
/**
|
|
175
175
|
* Set entity permission store for tracking per-entity approvals.
|
|
176
176
|
*
|
|
177
|
-
* When set, tools with `
|
|
178
|
-
* check if
|
|
179
|
-
* If any
|
|
177
|
+
* When set, tools with `getRequiredPermissions` defined will automatically
|
|
178
|
+
* check if required permissions have been approved before execution.
|
|
179
|
+
* If any permission is not approved, the user will be prompted.
|
|
180
180
|
*
|
|
181
181
|
* @param store - Entity permission store instance
|
|
182
182
|
*/
|
|
@@ -192,8 +192,8 @@ export class ToolRegistry {
|
|
|
192
192
|
* @param tool - Tool to get scope for
|
|
193
193
|
* @returns Permission scope string
|
|
194
194
|
*/
|
|
195
|
-
|
|
196
|
-
const key = this.scopeStrategy.
|
|
195
|
+
getPermissionScope(permission, input) {
|
|
196
|
+
const key = this.scopeStrategy.getPermissionKey(permission, input);
|
|
197
197
|
return this.scopeStrategy.formatScope(key);
|
|
198
198
|
}
|
|
199
199
|
/**
|
|
@@ -263,7 +263,7 @@ export class ToolRegistry {
|
|
|
263
263
|
// Handle PROMPT
|
|
264
264
|
if (permission === PermissionLevel.PROMPT) {
|
|
265
265
|
// Check if we need to prompt (or if entities are already approved)
|
|
266
|
-
const needsPrompt = this.shouldPromptForEntities(tool, input, context);
|
|
266
|
+
const needsPrompt = await this.shouldPromptForEntities(tool, input, context);
|
|
267
267
|
if (needsPrompt) {
|
|
268
268
|
// Ensure prompt handler exists
|
|
269
269
|
if (!this.promptHandler) {
|
|
@@ -272,18 +272,24 @@ export class ToolRegistry {
|
|
|
272
272
|
error: new ToolExecutionError(`Tool "${toolName}" requires user confirmation but no prompt handler registered`, { toolName, input, context }),
|
|
273
273
|
};
|
|
274
274
|
}
|
|
275
|
+
const permissions = (await Promise.all(((await tool.getRequiredPermissions?.(input)) ?? []).map(async (permission) => ({
|
|
276
|
+
permission,
|
|
277
|
+
isApproved: this.entityPermissionStore?.isApproved(permission.entityType, permission.entityId, this.getPermissionScope(permission, input)),
|
|
278
|
+
}))))
|
|
279
|
+
.filter(({ isApproved }) => !isApproved)
|
|
280
|
+
.map(({ permission }) => permission);
|
|
275
281
|
// Prompt user for approval
|
|
276
|
-
const
|
|
282
|
+
const promptResult = await this.promptHandler(tool, input, permissions, context);
|
|
277
283
|
// Handle DENY
|
|
278
|
-
if (response === ToolPermissionResponse.DENY) {
|
|
284
|
+
if (promptResult.response === ToolPermissionResponse.DENY) {
|
|
279
285
|
return {
|
|
280
286
|
type: "error",
|
|
281
287
|
error: new ToolExecutionError(`Tool "${toolName}" execution rejected by user`, { toolName, input, context }),
|
|
282
288
|
};
|
|
283
289
|
}
|
|
284
290
|
// Handle ALWAYS_ALLOW - store entity approvals for future use
|
|
285
|
-
if (response === ToolPermissionResponse.ALWAYS_ALLOW) {
|
|
286
|
-
this.approveEntitiesAfterPrompt(tool, input);
|
|
291
|
+
if (promptResult.response === ToolPermissionResponse.ALWAYS_ALLOW) {
|
|
292
|
+
await this.approveEntitiesAfterPrompt(tool, input, promptResult.alwaysAllowPermissions);
|
|
287
293
|
}
|
|
288
294
|
// Handle ALLOW - proceed to execution without storing permission
|
|
289
295
|
// (no special action needed, just continue to execution)
|
|
@@ -325,23 +331,25 @@ export class ToolRegistry {
|
|
|
325
331
|
* @param input - Tool input to extract entities from
|
|
326
332
|
* @returns True if we should prompt user, false if we can skip
|
|
327
333
|
*/
|
|
328
|
-
shouldPromptForEntities(tool, input, _context) {
|
|
334
|
+
async shouldPromptForEntities(tool, input, _context) {
|
|
329
335
|
// No entity system configured, use standard prompting
|
|
330
336
|
const entityPermissionStore = this.entityPermissionStore;
|
|
331
|
-
if (!tool.
|
|
337
|
+
if (!tool.getRequiredPermissions || !entityPermissionStore) {
|
|
332
338
|
return true;
|
|
333
339
|
}
|
|
334
|
-
const
|
|
340
|
+
const permissions = await tool.getRequiredPermissions(input);
|
|
335
341
|
// No entities extracted, use standard prompting
|
|
336
|
-
if (
|
|
342
|
+
if (permissions.length === 0) {
|
|
337
343
|
return true;
|
|
338
344
|
}
|
|
339
|
-
// Compute scope for this tool
|
|
340
|
-
const scope = this.getToolPermissionScope(tool);
|
|
341
345
|
// Check if any entities are not approved for this scope
|
|
342
|
-
|
|
343
|
-
|
|
346
|
+
// Map each permission to a promise that resolves to true if not approved
|
|
347
|
+
const approvalChecks = permissions.map((permission) => {
|
|
348
|
+
const scope = this.getPermissionScope(permission, input);
|
|
349
|
+
return !entityPermissionStore.isApproved(permission.entityType, permission.entityId, scope);
|
|
344
350
|
});
|
|
351
|
+
// Return true if any permission is not approved (needs prompt)
|
|
352
|
+
return approvalChecks.some((needsPrompt) => needsPrompt);
|
|
345
353
|
}
|
|
346
354
|
/**
|
|
347
355
|
* Store entity approvals after successful user prompt.
|
|
@@ -353,16 +361,21 @@ export class ToolRegistry {
|
|
|
353
361
|
* @param tool - Tool that was approved
|
|
354
362
|
* @param input - Tool input to extract entities from
|
|
355
363
|
*/
|
|
356
|
-
approveEntitiesAfterPrompt(tool, input) {
|
|
364
|
+
async approveEntitiesAfterPrompt(tool, input, alwaysAllowPermissions) {
|
|
357
365
|
// No entity system configured
|
|
358
|
-
if (!tool.
|
|
366
|
+
if (!tool.getRequiredPermissions || !this.entityPermissionStore) {
|
|
359
367
|
return;
|
|
360
368
|
}
|
|
361
|
-
|
|
362
|
-
const
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
369
|
+
const permissions = await tool.getRequiredPermissions(input);
|
|
370
|
+
const permissionsToApprove = alwaysAllowPermissions
|
|
371
|
+
? permissions.filter((permission) => alwaysAllowPermissions.some((alwaysAllow) => alwaysAllow.entityType === permission.entityType &&
|
|
372
|
+
alwaysAllow.entityId === permission.entityId &&
|
|
373
|
+
alwaysAllow.permissionType === permission.permissionType))
|
|
374
|
+
: [];
|
|
375
|
+
for (const permission of permissionsToApprove) {
|
|
376
|
+
// Compute scope for each permission individually
|
|
377
|
+
const scope = this.getPermissionScope(permission, input);
|
|
378
|
+
this.entityPermissionStore.approve(permission.entityType, permission.entityId, scope);
|
|
366
379
|
}
|
|
367
380
|
}
|
|
368
381
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SubagentType } from "../subagents/types.js";
|
|
2
|
-
import type { AiMode, AiEntityType, PlanContext, PromptContextEntity, PromptContextIntegration } from "@superblocksteam/library-shared/types";
|
|
2
|
+
import type { AiMode, AiEntityType, PlanContext, PromptContextEntity, PromptContextIntegration, AiPermissionType, AiToolPermission } from "@superblocksteam/library-shared/types";
|
|
3
3
|
import type { ToolCallOptions } from "ai";
|
|
4
4
|
import type z from "zod";
|
|
5
5
|
/**
|
|
@@ -55,22 +55,19 @@ export interface Tool<Input = any, Output = any> {
|
|
|
55
55
|
/** Optional function to transform output for the model */
|
|
56
56
|
toModelOutput?: (output: Output) => any;
|
|
57
57
|
/**
|
|
58
|
-
* Optional function to
|
|
59
|
-
*
|
|
60
|
-
* When defined, the registry will automatically check if all extracted
|
|
61
|
-
* entities have been approved before executing the tool. If any entity
|
|
62
|
-
* is not approved, the user will be prompted for permission.
|
|
58
|
+
* Optional function to get the required permissions for the tool.
|
|
63
59
|
*
|
|
64
60
|
* @param input - Validated tool input
|
|
65
|
-
* @returns Array of
|
|
61
|
+
* @returns Array of required permissions
|
|
66
62
|
*
|
|
67
63
|
* @example
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
64
|
+
* getRequiredPermissions: (input) => [{
|
|
65
|
+
* entityType: AiEntityType.PAGE,
|
|
66
|
+
* entityId: input.filePath,
|
|
67
|
+
* permissionType: AiPermissionType.DELETE,
|
|
71
68
|
* }]
|
|
72
69
|
*/
|
|
73
|
-
|
|
70
|
+
getRequiredPermissions?: (input: Input) => Promise<AiToolPermission[]> | AiToolPermission[];
|
|
74
71
|
/**
|
|
75
72
|
* Optional function to get action name in different tenses.
|
|
76
73
|
*
|
|
@@ -112,6 +109,23 @@ export interface Tool<Input = any, Output = any> {
|
|
|
112
109
|
details?: string;
|
|
113
110
|
summary?: string;
|
|
114
111
|
};
|
|
112
|
+
/**
|
|
113
|
+
* Optional function to determine the permission type (read or write) for this tool.
|
|
114
|
+
*
|
|
115
|
+
* If not provided, defaults to "read" if the tool is readOnly, otherwise "write".
|
|
116
|
+
* This allows tools to dynamically determine permission type based on input.
|
|
117
|
+
*
|
|
118
|
+
* @param input - Validated tool input
|
|
119
|
+
* @returns "read" or "write" permission type
|
|
120
|
+
*
|
|
121
|
+
* @example
|
|
122
|
+
* getPermissionType: async (input) => {
|
|
123
|
+
* const apiSource = await readApiSource(services, input.apiName);
|
|
124
|
+
* const hasMutations = extractMutations(apiSource.content).length > 0;
|
|
125
|
+
* return hasMutations ? "write" : "read";
|
|
126
|
+
* }
|
|
127
|
+
*/
|
|
128
|
+
getPermissionType?: (input: Input) => Promise<AiPermissionType>;
|
|
115
129
|
}
|
|
116
130
|
/**
|
|
117
131
|
* Permission levels for tool execution.
|
|
@@ -185,7 +199,7 @@ export declare function createToolFactory<TInputSchema extends z.ZodTypeAny, TDe
|
|
|
185
199
|
outputSchema?: TOutputSchema;
|
|
186
200
|
execute: (input: TInput, options: ToolCallOptions) => Promise<TOutput>;
|
|
187
201
|
toModelOutput?: (output: TOutput) => any;
|
|
188
|
-
|
|
202
|
+
getRequiredPermissions?: (input: TInput) => Promise<AiToolPermission[]> | AiToolPermission[];
|
|
189
203
|
getActionName?: () => {
|
|
190
204
|
future: string;
|
|
191
205
|
present: string;
|
|
@@ -231,6 +245,13 @@ export interface AccessControlContext {
|
|
|
231
245
|
* Rules are evaluated in order, most restrictive wins.
|
|
232
246
|
*/
|
|
233
247
|
export type AccessControlRule = (tool: Tool, context: AccessControlContext, input?: any) => PermissionLevel | Promise<PermissionLevel>;
|
|
248
|
+
/**
|
|
249
|
+
* Result from a prompt handler, including the response and which permissions to always allow.
|
|
250
|
+
*/
|
|
251
|
+
export interface PromptHandlerResult {
|
|
252
|
+
response: ToolPermissionResponse;
|
|
253
|
+
alwaysAllowPermissions?: AiToolPermission[];
|
|
254
|
+
}
|
|
234
255
|
/**
|
|
235
256
|
* Handler for prompting user for confirmation.
|
|
236
257
|
*
|
|
@@ -241,14 +262,14 @@ export type AccessControlRule = (tool: Tool, context: AccessControlContext, inpu
|
|
|
241
262
|
* - tool.name, tool.description, tool.category for context
|
|
242
263
|
* - tool.getActionName() for tense-based display (if defined)
|
|
243
264
|
* - tool.formatInput(input) for human-readable input summary (if defined)
|
|
244
|
-
* - tool.
|
|
265
|
+
* - tool.getRequiredPermissions(input) to see what entities will be accessed (if defined)
|
|
245
266
|
*
|
|
246
267
|
* Returns:
|
|
247
268
|
* - ALLOW: Execute once, don't store permission
|
|
248
|
-
* - ALWAYS_ALLOW: Execute and store permission for future use
|
|
269
|
+
* - ALWAYS_ALLOW: Execute and store permission for future use (with alwaysAllowPermissions indicating which specific permissions to store)
|
|
249
270
|
* - DENY: Block execution
|
|
250
271
|
*/
|
|
251
|
-
export type PromptHandler = (tool: Tool, input: any, context: AccessControlContext, options?: ToolCallOptions) => Promise<
|
|
272
|
+
export type PromptHandler = (tool: Tool, input: any, permissions: AiToolPermission[], context: AccessControlContext, options?: ToolCallOptions) => Promise<PromptHandlerResult>;
|
|
252
273
|
/**
|
|
253
274
|
* Middleware function that can transform tools.
|
|
254
275
|
* Receives the tool name and tool instance, returns transformed tool.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ai-service/agent/tools2/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAElD,eAAO,MAAM,2BAA2B,GACtC,UAAU,uBAAuB,sBAIlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,GAAG,KAAG,MA0FtD,CAAC;AAiBF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,cAAc,CAAC,OAAO,CAAC,EAC9B,OAAO,KAAK,EACZ,UAAU,uBAAuB,EACjC,QAAQ,MAAM,KACb,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACxB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAElD,eAAO,MAAM,2BAA2B,GACtC,UAAU,uBAAuB,sBAIlC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,GAAG,KAAG,MA0FtD,CAAC;AAiBF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,cAAc,CAAC,OAAO,CAAC,EAC9B,OAAO,KAAK,EACZ,UAAU,uBAAuB,EACjC,QAAQ,MAAM,KACb,OAAO,CAAC,IAAI,CAyGd,CAAC"}
|
|
@@ -141,6 +141,11 @@ export const processStreamChunk = async (chunk, clark, services, group) => {
|
|
|
141
141
|
break;
|
|
142
142
|
}
|
|
143
143
|
case "tool-call": {
|
|
144
|
+
if (clark.context.pendingToolPermissionRequest &&
|
|
145
|
+
clark.context.pendingToolPermissionRequest.toolName === chunk.toolName) {
|
|
146
|
+
// do not send the tool call message if it is the same tool name as the pending tool permission request
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
144
149
|
const args = await getToolCallArguments(chunk.toolName, chunk.input, clark);
|
|
145
150
|
const sendUserMessage = sendUserMessageChannel(clark, services.chatSessionStore);
|
|
146
151
|
void sendUserMessage({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/ai-service/agent/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { type AiChangeInfoPush, type AiMessagePush, type AiChatMessage, type AiChatSummary, type Attachment } from "@superblocksteam/library-shared/types";
|
|
1
2
|
import { type Logger } from "../../util/logger.js";
|
|
2
3
|
import type { AutoConnectingRpcClient } from "../../server-rpc/index.js";
|
|
3
|
-
import type { AiChangeInfoPush, AiMessagePush, AiChatMessage, AiChatSummary, Attachment } from "@superblocksteam/library-shared/types";
|
|
4
4
|
export type AiChatItem = AiChatMessage | AiChatSummary;
|
|
5
5
|
export type AiChatSummaryWithOutcome = AiChatSummary & {
|
|
6
6
|
outcome: "accepted" | "rejected" | "unknown";
|
|
@@ -13,7 +13,6 @@ interface ChatSessionStoreConfig {
|
|
|
13
13
|
logger: Logger;
|
|
14
14
|
}
|
|
15
15
|
export declare class ChatSessionStore {
|
|
16
|
-
private static readonly CHARS_PER_TOKEN;
|
|
17
16
|
private applicationId;
|
|
18
17
|
private rpcClient;
|
|
19
18
|
private logger;
|
|
@@ -35,12 +34,11 @@ export declare class ChatSessionStore {
|
|
|
35
34
|
private validateChatItemV1;
|
|
36
35
|
private ensureLoadedFromServer;
|
|
37
36
|
getLastUserMessage(): AiChatMessage | undefined;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
}[];
|
|
42
|
-
getMessages(): Promise<AiChatMessage[]>;
|
|
37
|
+
getMessages(options?: {
|
|
38
|
+
force?: boolean;
|
|
39
|
+
}): Promise<AiChatMessage[]>;
|
|
43
40
|
newChat(): Promise<void>;
|
|
41
|
+
truncateAfterTimestamp(sinceTimestamp: number): Promise<void>;
|
|
44
42
|
recordUser(text: string, options?: {
|
|
45
43
|
attachments?: Array<Attachment>;
|
|
46
44
|
}): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-session-store.d.ts","sourceRoot":"","sources":["../../../src/ai-service/chat/chat-session-store.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"chat-session-store.d.ts","sourceRoot":"","sources":["../../../src/ai-service/chat/chat-session-store.ts"],"names":[],"mappings":"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"}
|