@silkweave/core 1.3.2 → 1.4.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/.turbo/turbo-build.log +18 -17
- package/.turbo/turbo-check.log +12 -13
- package/.turbo/turbo-lint.log +1 -1
- package/.turbo/turbo-prepack.log +8 -8
- package/README.md +12 -12
- package/build/index.d.ts +3 -11
- package/build/index.js +0 -24
- package/build/index.js.map +1 -1
- package/package.json +2 -2
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
>
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
DTS
|
|
17
|
-
DTS
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
> @silkweave/core@1.4.0 build /Users/atomic/projects/ai/silkweave/packages/core
|
|
4
|
+
> tsup
|
|
5
|
+
|
|
6
|
+
[34mCLI[39m Building entry: src/index.ts
|
|
7
|
+
[34mCLI[39m Using tsconfig: tsconfig.json
|
|
8
|
+
[34mCLI[39m tsup v8.5.1
|
|
9
|
+
[34mCLI[39m Using tsup config: /Users/atomic/projects/ai/silkweave/packages/core/tsup.config.ts
|
|
10
|
+
[34mCLI[39m Target: node18
|
|
11
|
+
[34mCLI[39m Cleaning output folder
|
|
12
|
+
[34mESM[39m Build start
|
|
13
|
+
[32mESM[39m [1mbuild/index.js [22m[32m2.94 KB[39m
|
|
14
|
+
[32mESM[39m [1mbuild/index.js.map [22m[32m7.03 KB[39m
|
|
15
|
+
[32mESM[39m ⚡️ Build success in 6ms
|
|
16
|
+
DTS Build start
|
|
17
|
+
DTS ⚡️ Build success in 626ms
|
|
18
|
+
DTS build/index.d.ts 2.59 KB
|
package/.turbo/turbo-check.log
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
>
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
>
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
>
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
|
|
2
|
+
> @silkweave/core@1.3.2 check /Users/atomic/projects/ai/silkweave/packages/core
|
|
3
|
+
> pnpm lint && pnpm typecheck
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
> @silkweave/core@1.3.2 lint /Users/atomic/projects/ai/silkweave/packages/core
|
|
7
|
+
> eslint
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
> @silkweave/core@1.3.2 typecheck /Users/atomic/projects/ai/silkweave/packages/core
|
|
11
|
+
> tsc --noEmit
|
|
12
|
+
|
package/.turbo/turbo-lint.log
CHANGED
package/.turbo/turbo-prepack.log
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
|
-
> @silkweave/core@1.
|
|
3
|
+
> @silkweave/core@1.4.0 prepack /Users/atomic/projects/ai/silkweave/packages/core
|
|
4
4
|
> pnpm clean && pnpm build
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
> @silkweave/core@1.
|
|
7
|
+
> @silkweave/core@1.4.0 clean /Users/atomic/projects/ai/silkweave/packages/core
|
|
8
8
|
> rimraf build
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
> @silkweave/core@1.
|
|
11
|
+
> @silkweave/core@1.4.0 build /Users/atomic/projects/ai/silkweave/packages/core
|
|
12
12
|
> tsup
|
|
13
13
|
|
|
14
14
|
[34mCLI[39m Building entry: src/index.ts
|
|
@@ -18,9 +18,9 @@
|
|
|
18
18
|
[34mCLI[39m Target: node18
|
|
19
19
|
[34mCLI[39m Cleaning output folder
|
|
20
20
|
[34mESM[39m Build start
|
|
21
|
-
[32mESM[39m [1mbuild/index.js [22m[
|
|
22
|
-
[32mESM[39m [1mbuild/index.js.map [22m[32m7.
|
|
23
|
-
[32mESM[39m ⚡️ Build success in
|
|
21
|
+
[32mESM[39m [1mbuild/index.js [22m[32m2.94 KB[39m
|
|
22
|
+
[32mESM[39m [1mbuild/index.js.map [22m[32m7.03 KB[39m
|
|
23
|
+
[32mESM[39m ⚡️ Build success in 7ms
|
|
24
24
|
DTS Build start
|
|
25
|
-
DTS ⚡️ Build success in
|
|
26
|
-
DTS build/index.d.ts 2.
|
|
25
|
+
DTS ⚡️ Build success in 716ms
|
|
26
|
+
DTS build/index.d.ts 2.59 KB
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @silkweave/core
|
|
2
2
|
|
|
3
|
-
Core library for [Silkweave](https://github.com/silkweave/silkweave)
|
|
3
|
+
Core library for [Silkweave](https://github.com/silkweave/silkweave) - the TypeScript toolkit for building MCP servers and CLI tools from a single set of Actions.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -12,12 +12,11 @@ pnpm add @silkweave/core
|
|
|
12
12
|
|
|
13
13
|
This package provides the foundational building blocks that all Silkweave adapters depend on:
|
|
14
14
|
|
|
15
|
-
- **`silkweave()`**
|
|
16
|
-
- **`createAction()`**
|
|
17
|
-
- **Adapter types**
|
|
18
|
-
- **Context**
|
|
19
|
-
- **
|
|
20
|
-
- **Zod utilities** — `unwrap()` to recursively unwrap Zod wrapper types
|
|
15
|
+
- **`silkweave()`** - Fluent builder to wire up adapters and actions
|
|
16
|
+
- **`createAction()`** - Define transport-agnostic actions with Zod input schemas
|
|
17
|
+
- **Adapter types** - `Adapter`, `AdapterGenerator`, `AdapterFactory` interfaces for building custom adapters
|
|
18
|
+
- **Context** - `SilkweaveContext` key-value store with `fork()` for per-adapter/per-request isolation
|
|
19
|
+
- **Zod utilities** - `unwrap()` to recursively unwrap Zod wrapper types
|
|
21
20
|
|
|
22
21
|
## Usage
|
|
23
22
|
|
|
@@ -65,6 +64,7 @@ Returns a builder with `.adapter()`, `.action()`, `.actions()`, `.set()`, and `.
|
|
|
65
64
|
| `args` | `(keyof I)[]` | Fields to expose as CLI positional arguments |
|
|
66
65
|
| `isEnabled` | `(context) => boolean` | Gate action availability per adapter |
|
|
67
66
|
| `run` | `(input, context) => Promise<O>` | The action implementation |
|
|
67
|
+
| `toolResult` | `(response, context) => CallToolResult \| undefined` | Custom MCP result formatting (optional) |
|
|
68
68
|
|
|
69
69
|
### Adapter Interfaces
|
|
70
70
|
|
|
@@ -81,8 +81,8 @@ type AdapterFactory<T = void> = (options: T) => AdapterGenerator
|
|
|
81
81
|
|
|
82
82
|
## See Also
|
|
83
83
|
|
|
84
|
-
- [Silkweave README](https://github.com/silkweave/silkweave)
|
|
85
|
-
- [`@silkweave/mcp`](https://www.npmjs.com/package/@silkweave/mcp)
|
|
86
|
-
- [`@silkweave/fastify`](https://www.npmjs.com/package/@silkweave/fastify)
|
|
87
|
-
- [`@silkweave/cli`](https://www.npmjs.com/package/@silkweave/cli)
|
|
88
|
-
- [`@silkweave/vercel`](https://www.npmjs.com/package/@silkweave/vercel)
|
|
84
|
+
- [Silkweave README](https://github.com/silkweave/silkweave) - Full documentation
|
|
85
|
+
- [`@silkweave/mcp`](https://www.npmjs.com/package/@silkweave/mcp) - MCP stdio and HTTP adapters
|
|
86
|
+
- [`@silkweave/fastify`](https://www.npmjs.com/package/@silkweave/fastify) - Fastify REST adapter
|
|
87
|
+
- [`@silkweave/cli`](https://www.npmjs.com/package/@silkweave/cli) - CLI adapter
|
|
88
|
+
- [`@silkweave/vercel`](https://www.npmjs.com/package/@silkweave/vercel) - Vercel serverless adapter
|
package/build/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
1
2
|
import z, { z as z$1 } from 'zod';
|
|
2
|
-
import { TextContent } from '@modelcontextprotocol/sdk/types.js';
|
|
3
3
|
|
|
4
4
|
interface SilkweaveContext {
|
|
5
5
|
keys: () => string[];
|
|
@@ -20,6 +20,7 @@ interface Action<I extends object = any, O extends object = any> {
|
|
|
20
20
|
args?: (keyof I)[];
|
|
21
21
|
isEnabled?: (context: SilkweaveContext) => boolean;
|
|
22
22
|
run: (input: I, context: SilkweaveContext) => Promise<O>;
|
|
23
|
+
toolResult?: (response: O, context: SilkweaveContext) => CallToolResult | undefined;
|
|
23
24
|
}
|
|
24
25
|
declare function createAction<I extends object = object, O extends object = object>(action: Action<I, O>): Action<I, O>;
|
|
25
26
|
|
|
@@ -55,15 +56,6 @@ declare function badRequest(message?: string): SilkweaveError;
|
|
|
55
56
|
declare function forbidden(message?: string): SilkweaveError;
|
|
56
57
|
declare function internal(message?: string): SilkweaveError;
|
|
57
58
|
|
|
58
|
-
interface ToolResponse {
|
|
59
|
-
content: TextContent[];
|
|
60
|
-
isError?: boolean;
|
|
61
|
-
[x: string]: unknown;
|
|
62
|
-
}
|
|
63
|
-
declare function toolResponse(data: object, isError?: boolean): ToolResponse;
|
|
64
|
-
declare function handleToolError(error: unknown): ToolResponse;
|
|
65
|
-
declare function parseToolResponse<T = unknown>(result: ToolResponse): T;
|
|
66
|
-
|
|
67
59
|
interface UnwrapResult {
|
|
68
60
|
defaultValue?: any;
|
|
69
61
|
isOptional?: boolean;
|
|
@@ -72,4 +64,4 @@ interface UnwrapResult {
|
|
|
72
64
|
}
|
|
73
65
|
declare function unwrap(type: z$1.ZodTypeAny, result?: UnwrapResult): [z$1.ZodTypeAny, UnwrapResult];
|
|
74
66
|
|
|
75
|
-
export { type Action, type Adapter, type AdapterFactory, type AdapterGenerator, type Silkweave, type SilkweaveContext, SilkweaveError, type SilkweaveOptions, type
|
|
67
|
+
export { type Action, type Adapter, type AdapterFactory, type AdapterGenerator, type Silkweave, type SilkweaveContext, SilkweaveError, type SilkweaveOptions, type UnwrapResult, badRequest, createAction, createContext, forbidden, internal, notFound, silkweave, unwrap };
|
package/build/index.js
CHANGED
|
@@ -92,27 +92,6 @@ function internal(message = "Internal error") {
|
|
|
92
92
|
return new SilkweaveError(message, "internal", 500);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
// src/util/mcp.ts
|
|
96
|
-
function toolResponse(data, isError = false) {
|
|
97
|
-
return {
|
|
98
|
-
content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
|
|
99
|
-
...isError ? { isError: true } : {}
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
function handleToolError(error) {
|
|
103
|
-
if (error instanceof SilkweaveError) {
|
|
104
|
-
return toolResponse({ success: false, code: error.code, name: error.name, message: error.message }, true);
|
|
105
|
-
} else if (error instanceof Error) {
|
|
106
|
-
return toolResponse({ success: false, name: error.name, message: error.message, stack: error.stack }, true);
|
|
107
|
-
} else {
|
|
108
|
-
return toolResponse({ success: false, name: "Unknown Error", message: "An unknown error occurred", error }, true);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
function parseToolResponse(result) {
|
|
112
|
-
const text = result.content[0].text;
|
|
113
|
-
return JSON.parse(text);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
95
|
// src/util/zod.ts
|
|
117
96
|
import { z } from "zod";
|
|
118
97
|
function unwrap(type, result = {}) {
|
|
@@ -138,12 +117,9 @@ export {
|
|
|
138
117
|
createAction,
|
|
139
118
|
createContext,
|
|
140
119
|
forbidden,
|
|
141
|
-
handleToolError,
|
|
142
120
|
internal,
|
|
143
121
|
notFound,
|
|
144
|
-
parseToolResponse,
|
|
145
122
|
silkweave,
|
|
146
|
-
toolResponse,
|
|
147
123
|
unwrap
|
|
148
124
|
};
|
|
149
125
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/util/context.ts","../src/lib/silkweave.ts","../src/util/action.ts","../src/util/error.ts","../src/util/
|
|
1
|
+
{"version":3,"sources":["../src/util/context.ts","../src/lib/silkweave.ts","../src/util/action.ts","../src/util/error.ts","../src/util/zod.ts"],"sourcesContent":["export interface SilkweaveContext {\n keys: () => string[]\n has: (key: string) => boolean\n get: <T>(key: string) => T\n getOptional: <T>(key: string) => T | undefined\n set: <T>(key: string, value: T) => void\n fork: (store?: Record<string, unknown>) => SilkweaveContext\n}\n\nexport function createContext(store: Record<string, unknown> = {}): SilkweaveContext {\n return {\n keys: () => {\n return Object.keys(store)\n },\n has: (key: string): boolean => {\n return store[key] != null\n },\n get: <T>(key: string): T => {\n const value = store[key]\n if (value == null) { throw new Error(`Invalid context key: ${key}`) }\n return value as T\n },\n getOptional: <T>(key: string): T | undefined => {\n return store[key] as T | undefined\n },\n set: <T>(key: string, value: T) => {\n store[key] = value\n },\n fork: (value?: Record<string, unknown>) => {\n return createContext({ ...store, ...value })\n }\n }\n}\n","import { Action } from '../util/action.js'\nimport { Adapter, AdapterGenerator, SilkweaveOptions } from '../util/adapter.js'\nimport { createContext } from '../util/context.js'\n\nexport type { SilkweaveOptions } from '../util/adapter.js'\n\nexport interface Silkweave {\n set: <T>(key: string, value: T) => Silkweave\n adapter: (generator: AdapterGenerator) => Silkweave\n action: (action: Action) => Silkweave\n actions: (actions: Action[]) => Silkweave\n start: () => Promise<Silkweave>\n}\n\nexport function silkweave(options: SilkweaveOptions): Silkweave {\n const adapters: Adapter[] = []\n const actions: Action[] = []\n const context = createContext()\n const builder: Silkweave = {\n set: (key, value) => {\n context.set(key, value)\n return builder\n },\n adapter: (generator) => {\n adapters.push(generator(options, context))\n return builder\n },\n action: (value) => {\n actions.push(value)\n return builder\n },\n actions: (values) => {\n actions.push(...values)\n return builder\n },\n start: async () => {\n await Promise.all(adapters.map((adapter) => {\n return adapter.start(actions.filter((action) => {\n if (!action.isEnabled) { return true }\n return action.isEnabled(adapter.context)\n }))\n }))\n return builder\n }\n }\n return builder\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { type CallToolResult } from '@modelcontextprotocol/sdk/types.js'\nimport z from 'zod'\nimport { SilkweaveContext } from './context.js'\n\nexport interface Action<I extends object = any, O extends object = any> {\n name: string\n description: string\n input: z.ZodType<I> & { shape: Record<string, z.ZodTypeAny> }\n args?: (keyof I)[]\n isEnabled?: (context: SilkweaveContext) => boolean\n run: (input: I, context: SilkweaveContext) => Promise<O>\n toolResult?: (response: O, context: SilkweaveContext) => CallToolResult | undefined\n}\n\nexport function createAction<I extends object = object, O extends object = object>(\n action: Action<I, O>\n): Action<I, O> {\n return action\n}\n","export class SilkweaveError extends Error {\n constructor(\n message: string,\n public readonly code: string,\n public readonly statusCode = 500\n ) {\n super(message)\n this.name = 'SilkweaveError'\n }\n}\n\nexport function notFound(message = 'Not found') {\n return new SilkweaveError(message, 'not_found', 404)\n}\n\nexport function badRequest(message = 'Bad request') {\n return new SilkweaveError(message, 'bad_request', 400)\n}\n\nexport function forbidden(message = 'Forbidden') {\n return new SilkweaveError(message, 'forbidden', 403)\n}\n\nexport function internal(message = 'Internal error') {\n return new SilkweaveError(message, 'internal', 500)\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { z } from 'zod'\n\nexport interface UnwrapResult {\n defaultValue?: any\n isOptional?: boolean\n isNullable?: boolean\n isReadOnly?: boolean\n}\n\nexport function unwrap(\n type: z.ZodTypeAny,\n result: UnwrapResult = {}\n): [z.ZodTypeAny, UnwrapResult] {\n if (type instanceof z.ZodOptional) {\n result.isOptional = true\n return unwrap(type.unwrap() as z.ZodTypeAny, result)\n } else if (type instanceof z.ZodNullable) {\n result.isNullable = true\n return unwrap(type.unwrap() as z.ZodTypeAny, result)\n } else if (type instanceof z.ZodReadonly) {\n result.isReadOnly = true\n return unwrap(type.unwrap() as z.ZodTypeAny, result)\n } else if (type instanceof z.ZodDefault) {\n result.defaultValue = typeof type.def.defaultValue === 'function'\n ? type.def.defaultValue()\n : type.def.defaultValue\n return unwrap(type.unwrap() as z.ZodTypeAny, result)\n } else {\n return [type, result]\n }\n}\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@silkweave/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.1",
|
|
4
4
|
"description": "Silkweave Core",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
15
15
|
"zod": "^4.3.6",
|
|
16
|
-
"@silkweave/logger": "1.
|
|
16
|
+
"@silkweave/logger": "1.4.1"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@eslint/js": "^10.0.1",
|