@meetsmore-oss/use-ai-server 1.2.1
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/agents/AISDKAgent.d.ts +220 -0
- package/dist/agents/AISDKAgent.d.ts.map +1 -0
- package/dist/agents/AISDKAgent.test.d.ts +2 -0
- package/dist/agents/AISDKAgent.test.d.ts.map +1 -0
- package/dist/agents/index.d.ts +7 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/types.d.ts +151 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents.integration.test.d.ts +2 -0
- package/dist/agents.integration.test.d.ts.map +1 -0
- package/dist/configuration.integration.test.d.ts +2 -0
- package/dist/configuration.integration.test.d.ts.map +1 -0
- package/dist/core-architecture.integration.test.d.ts +2 -0
- package/dist/core-architecture.integration.test.d.ts.map +1 -0
- package/dist/error-handling.integration.test.d.ts +2 -0
- package/dist/error-handling.integration.test.d.ts.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +80683 -0
- package/dist/instrumentation.d.ts +15 -0
- package/dist/instrumentation.d.ts.map +1 -0
- package/dist/langfuse.integration.test.d.ts +7 -0
- package/dist/langfuse.integration.test.d.ts.map +1 -0
- package/dist/logger.d.ts +30 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/mcp/RemoteMcpToolsProvider.d.ts +73 -0
- package/dist/mcp/RemoteMcpToolsProvider.d.ts.map +1 -0
- package/dist/mcp/RemoteMcpToolsProvider.test.d.ts +2 -0
- package/dist/mcp/RemoteMcpToolsProvider.test.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +2 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp.integration.test.d.ts +2 -0
- package/dist/mcp.integration.test.d.ts.map +1 -0
- package/dist/message-sanitization.test.d.ts +2 -0
- package/dist/message-sanitization.test.d.ts.map +1 -0
- package/dist/plugins/index.d.ts +2 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/types.d.ts +69 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins.integration.test.d.ts +2 -0
- package/dist/plugins.integration.test.d.ts.map +1 -0
- package/dist/rate-limiting.integration.test.d.ts +2 -0
- package/dist/rate-limiting.integration.test.d.ts.map +1 -0
- package/dist/rateLimiter.d.ts +17 -0
- package/dist/rateLimiter.d.ts.map +1 -0
- package/dist/rateLimiter.test.d.ts +2 -0
- package/dist/rateLimiter.test.d.ts.map +1 -0
- package/dist/server.d.ts +140 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.test.d.ts +2 -0
- package/dist/server.test.d.ts.map +1 -0
- package/dist/src/agents/AISDKAgent.d.ts +220 -0
- package/dist/src/agents/AISDKAgent.d.ts.map +1 -0
- package/dist/src/agents/AISDKAgent.test.d.ts +2 -0
- package/dist/src/agents/AISDKAgent.test.d.ts.map +1 -0
- package/dist/src/agents/index.d.ts +7 -0
- package/dist/src/agents/index.d.ts.map +1 -0
- package/dist/src/agents/types.d.ts +151 -0
- package/dist/src/agents/types.d.ts.map +1 -0
- package/dist/src/agents.integration.test.d.ts +2 -0
- package/dist/src/agents.integration.test.d.ts.map +1 -0
- package/dist/src/configuration.integration.test.d.ts +2 -0
- package/dist/src/configuration.integration.test.d.ts.map +1 -0
- package/dist/src/core-architecture.integration.test.d.ts +2 -0
- package/dist/src/core-architecture.integration.test.d.ts.map +1 -0
- package/dist/src/error-handling.integration.test.d.ts +2 -0
- package/dist/src/error-handling.integration.test.d.ts.map +1 -0
- package/dist/src/index.d.ts +9 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/instrumentation.d.ts +15 -0
- package/dist/src/instrumentation.d.ts.map +1 -0
- package/dist/src/langfuse.integration.test.d.ts +7 -0
- package/dist/src/langfuse.integration.test.d.ts.map +1 -0
- package/dist/src/logger.d.ts +30 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.d.ts +73 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.d.ts.map +1 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.test.d.ts +2 -0
- package/dist/src/mcp/RemoteMcpToolsProvider.test.d.ts.map +1 -0
- package/dist/src/mcp/index.d.ts +2 -0
- package/dist/src/mcp/index.d.ts.map +1 -0
- package/dist/src/mcp.integration.test.d.ts +2 -0
- package/dist/src/mcp.integration.test.d.ts.map +1 -0
- package/dist/src/message-sanitization.test.d.ts +2 -0
- package/dist/src/message-sanitization.test.d.ts.map +1 -0
- package/dist/src/plugins/index.d.ts +2 -0
- package/dist/src/plugins/index.d.ts.map +1 -0
- package/dist/src/plugins/types.d.ts +69 -0
- package/dist/src/plugins/types.d.ts.map +1 -0
- package/dist/src/plugins.integration.test.d.ts +2 -0
- package/dist/src/plugins.integration.test.d.ts.map +1 -0
- package/dist/src/rate-limiting.integration.test.d.ts +2 -0
- package/dist/src/rate-limiting.integration.test.d.ts.map +1 -0
- package/dist/src/rateLimiter.d.ts +17 -0
- package/dist/src/rateLimiter.d.ts.map +1 -0
- package/dist/src/rateLimiter.test.d.ts +2 -0
- package/dist/src/rateLimiter.test.d.ts.map +1 -0
- package/dist/src/server.d.ts +140 -0
- package/dist/src/server.d.ts.map +1 -0
- package/dist/src/server.test.d.ts +2 -0
- package/dist/src/server.test.d.ts.map +1 -0
- package/dist/src/test-preload.d.ts +25 -0
- package/dist/src/test-preload.d.ts.map +1 -0
- package/dist/src/tool-execution.integration.test.d.ts +2 -0
- package/dist/src/tool-execution.integration.test.d.ts.map +1 -0
- package/dist/src/types.d.ts +60 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +6 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/patternMatcher.d.ts +41 -0
- package/dist/src/utils/patternMatcher.d.ts.map +1 -0
- package/dist/src/utils/patternMatcher.test.d.ts +2 -0
- package/dist/src/utils/patternMatcher.test.d.ts.map +1 -0
- package/dist/src/utils/toolConverter.d.ts +22 -0
- package/dist/src/utils/toolConverter.d.ts.map +1 -0
- package/dist/src/utils/toolFilters.d.ts +101 -0
- package/dist/src/utils/toolFilters.d.ts.map +1 -0
- package/dist/test/integration-test-utils.d.ts +203 -0
- package/dist/test/integration-test-utils.d.ts.map +1 -0
- package/dist/test/test-utils.d.ts +104 -0
- package/dist/test/test-utils.d.ts.map +1 -0
- package/dist/test-preload.d.ts +25 -0
- package/dist/test-preload.d.ts.map +1 -0
- package/dist/tool-execution.integration.test.d.ts +2 -0
- package/dist/tool-execution.integration.test.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types.d.ts +60 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/patternMatcher.d.ts +41 -0
- package/dist/utils/patternMatcher.d.ts.map +1 -0
- package/dist/utils/patternMatcher.test.d.ts +2 -0
- package/dist/utils/patternMatcher.test.d.ts.map +1 -0
- package/dist/utils/toolConverter.d.ts +22 -0
- package/dist/utils/toolConverter.d.ts.map +1 -0
- package/dist/utils/toolFilters.d.ts +101 -0
- package/dist/utils/toolFilters.d.ts.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { ToolDefinition } from '../types';
|
|
2
|
+
import type { RemoteToolDefinition } from '../mcp';
|
|
3
|
+
/**
|
|
4
|
+
* Type guard to check if a tool is a remote MCP tool.
|
|
5
|
+
*
|
|
6
|
+
* @param tool - Tool definition to check
|
|
7
|
+
* @returns True if tool has MCP remote provider, false otherwise
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* if (isRemoteTool(tool)) {
|
|
12
|
+
* // tool is RemoteToolDefinition with _remote property
|
|
13
|
+
* await tool._remote.provider.executeTool(...);
|
|
14
|
+
* }
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function isRemoteTool(tool: ToolDefinition): tool is RemoteToolDefinition;
|
|
18
|
+
/**
|
|
19
|
+
* Combines multiple filter functions with AND logic.
|
|
20
|
+
* All filters must return true for the tool to pass.
|
|
21
|
+
*
|
|
22
|
+
* @param filters - Filter functions to combine
|
|
23
|
+
* @returns Combined filter function
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const agent = new AISDKAgent({
|
|
28
|
+
* model: anthropic('claude-3-5-sonnet-20241022'),
|
|
29
|
+
* toolFilter: and(
|
|
30
|
+
* createMcpGlobAllowFilter(['db_*']),
|
|
31
|
+
* (tool) => tool.description.includes('read-only')
|
|
32
|
+
* )
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare function and(...filters: Array<(tool: ToolDefinition) => boolean>): (tool: ToolDefinition) => boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Combines multiple filter functions with OR logic.
|
|
39
|
+
* At least one filter must return true for the tool to pass.
|
|
40
|
+
*
|
|
41
|
+
* @param filters - Filter functions to combine
|
|
42
|
+
* @returns Combined filter function
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const agent = new AISDKAgent({
|
|
47
|
+
* model: anthropic('claude-3-5-sonnet-20241022'),
|
|
48
|
+
* toolFilter: or(
|
|
49
|
+
* createMcpGlobAllowFilter(['db_*']),
|
|
50
|
+
* createMcpGlobAllowFilter(['file_*'])
|
|
51
|
+
* )
|
|
52
|
+
* });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare function or(...filters: Array<(tool: ToolDefinition) => boolean>): (tool: ToolDefinition) => boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Inverts a filter function with NOT logic.
|
|
58
|
+
*
|
|
59
|
+
* @param filter - Filter function to invert
|
|
60
|
+
* @returns Inverted filter function
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* // Block MCP tools matching delete patterns (equivalent to disallow filter)
|
|
65
|
+
* const agent = new AISDKAgent({
|
|
66
|
+
* model: anthropic('claude-3-5-sonnet-20241022'),
|
|
67
|
+
* toolFilter: and(
|
|
68
|
+
* or(not(isRemoteTool), createMcpGlobAllowFilter(['db_*'])),
|
|
69
|
+
* not(createMcpGlobAllowFilter(['*_delete']))
|
|
70
|
+
* )
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function not(filter: (tool: ToolDefinition) => boolean): (tool: ToolDefinition) => boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Creates a filter function that matches tools by glob patterns.
|
|
77
|
+
* Returns true if tool name matches any of the provided patterns.
|
|
78
|
+
*
|
|
79
|
+
* @param patterns - Glob patterns to match tool names (e.g., `['db_*', 'file_*']`)
|
|
80
|
+
* @returns Filter function for use with `AISDKAgentConfig.toolFilter`
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* // Only allow database MCP tools (client tools always pass)
|
|
85
|
+
* const agent = new AISDKAgent({
|
|
86
|
+
* model: anthropic('claude-3-5-sonnet-20241022'),
|
|
87
|
+
* toolFilter: or(not(isRemoteTool), createGlobFilter(['db_*']))
|
|
88
|
+
* });
|
|
89
|
+
*
|
|
90
|
+
* // Allow db_* but exclude *_delete
|
|
91
|
+
* const agent = new AISDKAgent({
|
|
92
|
+
* model: anthropic('claude-3-5-sonnet-20241022'),
|
|
93
|
+
* toolFilter: and(
|
|
94
|
+
* or(not(isRemoteTool), createGlobFilter(['db_*'])),
|
|
95
|
+
* not(createGlobFilter(['*_delete']))
|
|
96
|
+
* )
|
|
97
|
+
* });
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
export declare function createGlobFilter(patterns: string[]): (tool: ToolDefinition) => boolean;
|
|
101
|
+
//# sourceMappingURL=toolFilters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolFilters.d.ts","sourceRoot":"","sources":["../../../src/utils/toolFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAGnD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,IAAI,oBAAoB,CAE/E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,GAAG,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAE3G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,EAAE,CAAC,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAE1G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAEhG;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAOtF"}
|
package/package.json
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@meetsmore-oss/use-ai-server",
|
|
3
|
+
"version": "1.2.1",
|
|
4
|
+
"license": "BUSL-1.1",
|
|
5
|
+
"files": [
|
|
6
|
+
"dist"
|
|
7
|
+
],
|
|
8
|
+
"author": {
|
|
9
|
+
"name": "Zachary Davison",
|
|
10
|
+
"url": "https://github.com/mm-zacharydavison"
|
|
11
|
+
},
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/meetsmore/use-ai.git",
|
|
15
|
+
"directory": "packages/server"
|
|
16
|
+
},
|
|
17
|
+
"type": "module",
|
|
18
|
+
"main": "./dist/index.js",
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
20
|
+
"exports": {
|
|
21
|
+
".": {
|
|
22
|
+
"import": "./dist/index.js",
|
|
23
|
+
"types": "./dist/index.d.ts"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"clean": "rm -rf dist *.tsbuildinfo",
|
|
28
|
+
"build": "bun build ./src/index.ts --outdir ./dist --target node --format esm && tsc --emitDeclarationOnly --declaration --declarationMap && cp -r dist/src/* dist/",
|
|
29
|
+
"test": "bun test --only-failures $(find src -name '*.test.ts' -not -name '*.e2e.test.ts' -type f)",
|
|
30
|
+
"test:e2e": "bun test $(find src -name '*.e2e.test.ts' -type f)"
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@ai-sdk/anthropic": "3.0.0-beta.59",
|
|
34
|
+
"@ai-sdk/openai": "3.0.0-beta.66",
|
|
35
|
+
"@meetsmore-oss/use-ai-core": "1.2.1",
|
|
36
|
+
"ai": "6.0.0-beta.116",
|
|
37
|
+
"picomatch": "^4.0.3",
|
|
38
|
+
"socket.io": "^4.8.1",
|
|
39
|
+
"uuid": "^11.1.0",
|
|
40
|
+
"zod": "^3.24.1"
|
|
41
|
+
},
|
|
42
|
+
"optionalDependencies": {
|
|
43
|
+
"@langfuse/otel": "^4.0.0",
|
|
44
|
+
"@opentelemetry/sdk-trace-node": "^2.2.0"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@types/bun": "latest",
|
|
48
|
+
"@types/json-schema": "^7.0.15",
|
|
49
|
+
"@types/picomatch": "^4.0.2",
|
|
50
|
+
"@types/uuid": "^10.0.0",
|
|
51
|
+
"langfuse": "^3.38.6",
|
|
52
|
+
"socket.io-client": "^4.8.1",
|
|
53
|
+
"testcontainers": "^11.8.1",
|
|
54
|
+
"typescript": "^5.9.3"
|
|
55
|
+
}
|
|
56
|
+
}
|