@fabric-harness/sdk 0.3.1 → 0.4.0
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 +21 -17
- package/dist/agent-definition.d.ts +2 -2
- package/dist/agent-definition.js +2 -2
- package/dist/cloudflare-source.d.ts +1 -1
- package/dist/cloudflare-source.js +1 -1
- package/dist/filesystem-source.d.ts +1 -1
- package/dist/filesystem-source.js +1 -1
- package/dist/index.d.ts +14 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -1
- package/dist/index.js.map +1 -1
- package/dist/lite.d.ts +12 -44
- package/dist/lite.d.ts.map +1 -1
- package/dist/lite.js +12 -40
- package/dist/lite.js.map +1 -1
- package/dist/strict.d.ts +64 -0
- package/dist/strict.d.ts.map +1 -0
- package/dist/strict.js +43 -0
- package/dist/strict.js.map +1 -0
- package/package.json +5 -1
package/README.md
CHANGED
|
@@ -12,21 +12,24 @@ pnpm add @fabric-harness/sdk
|
|
|
12
12
|
|
|
13
13
|
## Quick start
|
|
14
14
|
|
|
15
|
-
### Minimal
|
|
15
|
+
### Minimal — bare import, headless defaults (8 lines)
|
|
16
16
|
|
|
17
17
|
```ts
|
|
18
|
-
import {
|
|
19
|
-
|
|
20
|
-
export default
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
},
|
|
18
|
+
import { agent } from '@fabric-harness/sdk';
|
|
19
|
+
|
|
20
|
+
export default agent<{ message: string }>({
|
|
21
|
+
name: 'echo',
|
|
22
|
+
triggers: { webhook: true },
|
|
23
|
+
run: async ({ init, input }) => {
|
|
24
|
+
const session = await (await init({ model: 'openai/gpt-5.5' })).session();
|
|
25
|
+
return { reply: await session.prompt<string>(input.message) };
|
|
26
|
+
},
|
|
27
|
+
});
|
|
27
28
|
```
|
|
28
29
|
|
|
29
|
-
### Complete
|
|
30
|
+
### Complete — same import, more fields
|
|
31
|
+
|
|
32
|
+
### With typed I/O + capability policy + skills (same import)
|
|
30
33
|
|
|
31
34
|
```ts
|
|
32
35
|
import { agent, schema } from '@fabric-harness/sdk';
|
|
@@ -43,20 +46,21 @@ export default agent({
|
|
|
43
46
|
});
|
|
44
47
|
```
|
|
45
48
|
|
|
46
|
-
Both
|
|
49
|
+
Both forms share the same `init()`, `session.prompt()` / `skill()` / `task()` / `shell()` APIs. Runtime (`stateless`, `inline`, or `temporal`) is a separate choice configured at `init()`.
|
|
50
|
+
|
|
51
|
+
## One SDK, one import
|
|
47
52
|
|
|
48
|
-
|
|
53
|
+
`@fabric-harness/sdk` is the single import everyone uses. `agent({...})` from the bare import auto-injects headless defaults (`runtime: 'stateless'`, `sandbox: 'virtual'`, `loopRuntime: pi-agent-core`, `compaction: { enabled: true }`) on every `init()` call. Override any of them by passing values to `init()`. Add typed `input`/`output` schemas, `policy`, artifacts, custom stores, telemetry — they're all options on the same `agent({...})`/`init()` shape.
|
|
49
54
|
|
|
50
|
-
|
|
51
|
-
- **`@fabric-harness/sdk`** — complete entrypoint: everything in the minimal entrypoint plus provider implementations, policy evaluators, built-in tools, stores, telemetry, result extraction, Docker/remote sandbox helpers, and stdio MCP.
|
|
55
|
+
For Temporal-backed durable agents or compliance workloads where no implicit behaviour is wanted, use `@fabric-harness/sdk/strict` — same call shape, no defaults injected.
|
|
52
56
|
|
|
53
|
-
|
|
57
|
+
Runtime (`stateless`, `inline`, or `temporal`) controls persistence and durability and is configured at `init()`. The deploy target (`node`, `temporal-worker`, `docker`, `cloudflare`, …) is chosen via `fh build --target`.
|
|
54
58
|
|
|
55
59
|
## What's in the box
|
|
56
60
|
|
|
57
61
|
- **`init({ model, sandbox, policy, runtime, ... })`** — initialize an agent runtime.
|
|
58
62
|
- **`session.prompt / skill / task / shell`** — the four agent operations.
|
|
59
|
-
- **`
|
|
63
|
+
- **`agent({...})`** — single builder. Same call shape from `/lite` and from the full SDK; the import you choose controls whether headless defaults are injected. `defineAgent(handler, options)` is kept as a backward-compat alias.
|
|
60
64
|
- **`defineCommand`** — bind a privileged CLI (`gh`, `npm`, …) with secrets at the command level, never in model context.
|
|
61
65
|
- **`withFilesystemSources`** — mount read-only content (knowledge base, runbooks) into the sandbox; the agent's built-in `grep` / `glob` / `read` tools see it as ordinary files.
|
|
62
66
|
- **`runtime: 'inline' | 'stateless' | 'temporal'`** — pick by persistence needs; the agent code is unchanged.
|
|
@@ -59,7 +59,7 @@ export interface DefineAgentOptions {
|
|
|
59
59
|
* Pass `<TPayload>` to type the incoming `payload` without `as` casts:
|
|
60
60
|
*
|
|
61
61
|
* ```ts
|
|
62
|
-
* import { defineAgent } from '@fabric-harness/sdk
|
|
62
|
+
* import { defineAgent } from '@fabric-harness/sdk';
|
|
63
63
|
*
|
|
64
64
|
* export default defineAgent<{ message: string }>(async ({ init, payload }) => {
|
|
65
65
|
* const session = await (await init({ model: 'openai/gpt-5.5' })).session();
|
|
@@ -75,7 +75,7 @@ export declare function defineAgent<TPayload = unknown, TOutput = unknown>(handl
|
|
|
75
75
|
input: TPayload;
|
|
76
76
|
}) => Promise<TOutput> | TOutput, options?: DefineAgentOptions): DefinedAgent<TPayload, TOutput>;
|
|
77
77
|
/**
|
|
78
|
-
* `agent({...})` — but exported from `@fabric-harness/sdk
|
|
78
|
+
* `agent({...})` — but exported from `@fabric-harness/sdk` so it
|
|
79
79
|
* automatically injects the headless defaults (stateless runtime, virtual
|
|
80
80
|
* sandbox, pi-agent-core loop, compaction-on) into every `init()` call.
|
|
81
81
|
*
|
package/dist/agent-definition.js
CHANGED
|
@@ -59,7 +59,7 @@ export function getAgentDefinition(value) {
|
|
|
59
59
|
* Pass `<TPayload>` to type the incoming `payload` without `as` casts:
|
|
60
60
|
*
|
|
61
61
|
* ```ts
|
|
62
|
-
* import { defineAgent } from '@fabric-harness/sdk
|
|
62
|
+
* import { defineAgent } from '@fabric-harness/sdk';
|
|
63
63
|
*
|
|
64
64
|
* export default defineAgent<{ message: string }>(async ({ init, payload }) => {
|
|
65
65
|
* const session = await (await init({ model: 'openai/gpt-5.5' })).session();
|
|
@@ -75,7 +75,7 @@ export function defineAgent(handler, options = {}) {
|
|
|
75
75
|
return liteAgent({ ...options, run: handler });
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
|
-
* `agent({...})` — but exported from `@fabric-harness/sdk
|
|
78
|
+
* `agent({...})` — but exported from `@fabric-harness/sdk` so it
|
|
79
79
|
* automatically injects the headless defaults (stateless runtime, virtual
|
|
80
80
|
* sandbox, pi-agent-core loop, compaction-on) into every `init()` call.
|
|
81
81
|
*
|
|
@@ -47,7 +47,7 @@ export interface R2FilesystemSourceOptions {
|
|
|
47
47
|
* sandbox tools.
|
|
48
48
|
*
|
|
49
49
|
* ```ts
|
|
50
|
-
* import { defineAgent, getVirtualSandbox } from '@fabric-harness/sdk
|
|
50
|
+
* import { defineAgent, getVirtualSandbox } from '@fabric-harness/sdk';
|
|
51
51
|
* import { r2FilesystemSource } from '@fabric-harness/sdk/cloudflare';
|
|
52
52
|
*
|
|
53
53
|
* export default defineAgent(async ({ init, payload, env }) => {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* sandbox tools.
|
|
14
14
|
*
|
|
15
15
|
* ```ts
|
|
16
|
-
* import { defineAgent, getVirtualSandbox } from '@fabric-harness/sdk
|
|
16
|
+
* import { defineAgent, getVirtualSandbox } from '@fabric-harness/sdk';
|
|
17
17
|
* import { r2FilesystemSource } from '@fabric-harness/sdk/cloudflare';
|
|
18
18
|
*
|
|
19
19
|
* export default defineAgent(async ({ init, payload, env }) => {
|
|
@@ -78,7 +78,7 @@ export declare function inMemorySource(files: Record<string, string | Uint8Array
|
|
|
78
78
|
* `grep`/`glob`/`read` tools.
|
|
79
79
|
*
|
|
80
80
|
* ```ts
|
|
81
|
-
* import { defineAgent, getVirtualSandbox, localDirectorySource } from '@fabric-harness/sdk
|
|
81
|
+
* import { defineAgent, getVirtualSandbox, localDirectorySource } from '@fabric-harness/sdk';
|
|
82
82
|
*
|
|
83
83
|
* export default defineAgent(async ({ init, payload }) => {
|
|
84
84
|
* const sandbox = getVirtualSandbox(localDirectorySource('./kb'));
|
|
@@ -89,7 +89,7 @@ export function inMemorySource(files, options = {}) {
|
|
|
89
89
|
* `grep`/`glob`/`read` tools.
|
|
90
90
|
*
|
|
91
91
|
* ```ts
|
|
92
|
-
* import { defineAgent, getVirtualSandbox, localDirectorySource } from '@fabric-harness/sdk
|
|
92
|
+
* import { defineAgent, getVirtualSandbox, localDirectorySource } from '@fabric-harness/sdk';
|
|
93
93
|
*
|
|
94
94
|
* export default defineAgent(async ({ init, payload }) => {
|
|
95
95
|
* const sandbox = getVirtualSandbox(localDirectorySource('./kb'));
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fabric-harness/sdk — the default entry point.
|
|
3
|
+
*
|
|
4
|
+
* `agent({...})` here applies headless defaults on every `init()` call —
|
|
5
|
+
* `runtime: 'stateless'`, `sandbox: 'virtual'`, `loopRuntime: pi-agent-core`,
|
|
6
|
+
* `compaction: { enabled: true }`. Override any of them by passing a value
|
|
7
|
+
* to `init()`. Smallest path from `npm install @fabric-harness/sdk` to a
|
|
8
|
+
* working agent.
|
|
9
|
+
*
|
|
10
|
+
* For Temporal-backed durable agents, compliance/audit, or any workload that
|
|
11
|
+
* wants no implicit behaviour, use the no-defaults variant from
|
|
12
|
+
* `@fabric-harness/sdk/strict` — same call shape, no defaults injected.
|
|
13
|
+
*/
|
|
1
14
|
export { init, StubFabricAgent } from './agent.js';
|
|
2
|
-
export { agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
15
|
+
export { liteAgent as agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
3
16
|
export { resolveRuntimeMode, isStatelessRuntime, isInMemoryStore } from './runtime-mode.js';
|
|
4
17
|
export { evaluateContextBudget, estimateModelMessagesTokens, estimateSessionEntriesTokens, estimateTextTokens, isContextOverflowError } from './context-budget.js';
|
|
5
18
|
export { createFabricContext } from './context.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fabric-harness/sdk — the default entry point.
|
|
3
|
+
*
|
|
4
|
+
* `agent({...})` here applies headless defaults on every `init()` call —
|
|
5
|
+
* `runtime: 'stateless'`, `sandbox: 'virtual'`, `loopRuntime: pi-agent-core`,
|
|
6
|
+
* `compaction: { enabled: true }`. Override any of them by passing a value
|
|
7
|
+
* to `init()`. Smallest path from `npm install @fabric-harness/sdk` to a
|
|
8
|
+
* working agent.
|
|
9
|
+
*
|
|
10
|
+
* For Temporal-backed durable agents, compliance/audit, or any workload that
|
|
11
|
+
* wants no implicit behaviour, use the no-defaults variant from
|
|
12
|
+
* `@fabric-harness/sdk/strict` — same call shape, no defaults injected.
|
|
13
|
+
*/
|
|
1
14
|
export { init, StubFabricAgent } from './agent.js';
|
|
2
|
-
|
|
15
|
+
// `liteAgent` (re-exported as `agent`) injects the headless defaults at runtime.
|
|
16
|
+
// `defineAgent` is kept as a backward-compat handler-first alias.
|
|
17
|
+
export { liteAgent as agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
3
18
|
export { resolveRuntimeMode, isStatelessRuntime, isInMemoryStore } from './runtime-mode.js';
|
|
4
19
|
export { evaluateContextBudget, estimateModelMessagesTokens, estimateSessionEntriesTokens, estimateTextTokens, isContextOverflowError } from './context-budget.js';
|
|
5
20
|
export { createFabricContext } from './context.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lite.d.ts
CHANGED
|
@@ -1,51 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fabric-harness/sdk/lite —
|
|
2
|
+
* @fabric-harness/sdk/lite — DEPRECATED alias for `@fabric-harness/sdk`.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* the import graph. Use this when bundling for Cloudflare Workers, Vercel
|
|
8
|
-
* Edge, AWS Lambda, or any environment where you want the smallest
|
|
9
|
-
* possible import footprint.
|
|
4
|
+
* Starting in 0.4.0 the bare `@fabric-harness/sdk` import IS the
|
|
5
|
+
* headless-defaults variant. The `/lite` subpath stays for one minor so
|
|
6
|
+
* existing 0.3.x code keeps building. Migrate at your convenience:
|
|
10
7
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* `@fabric-harness/sdk` directly.
|
|
8
|
+
* import { agent } from '@fabric-harness/sdk/lite'; // before (deprecated)
|
|
9
|
+
* import { agent } from '@fabric-harness/sdk'; // after
|
|
14
10
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
11
|
+
* The export surface is identical to `@fabric-harness/sdk`. No behaviour
|
|
12
|
+
* change — `agent({...})` from this path is the same function as
|
|
13
|
+
* `agent({...})` from the bare path.
|
|
17
14
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* model: 'openai/gpt-5.5',
|
|
21
|
-
* runtime: 'stateless',
|
|
22
|
-
* })).session();
|
|
23
|
-
* return { reply: (await session.prompt(String(payload?.message ?? ''))).text };
|
|
24
|
-
* });
|
|
25
|
-
* ```
|
|
15
|
+
* For the no-defaults variant (Temporal / compliance / production), use
|
|
16
|
+
* `@fabric-harness/sdk/strict`.
|
|
26
17
|
*/
|
|
27
|
-
export
|
|
28
|
-
export { liteAgent as agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
29
|
-
export { createFabricContext } from './context.js';
|
|
30
|
-
export { FabricError, isFabricError, toFabricError } from './error.js';
|
|
31
|
-
export { schema, SchemaValidationError } from './schema.js';
|
|
32
|
-
export { isEvent } from './events.js';
|
|
33
|
-
export type { AgentEvent, AgentEventBase, AgentEventCallback, AgentEventType } from './events.js';
|
|
34
|
-
export { createBuiltinTools, defineCommand, defineTool, secret, shellQuote } from './tools.js';
|
|
35
|
-
export { createRemoteSandboxEnv, createSandboxEnv, createScopedSandboxEnv, EmptySandboxEnv, LocalSandboxEnv } from './sandbox.js';
|
|
36
|
-
export { VirtualSandboxEnv, createVirtualSandboxEnv } from './virtual-sandbox.js';
|
|
37
|
-
export { fumadocsSource, getVirtualSandbox, httpFilesystemSource, inMemorySource, localDirectorySource, mintlifySource, withFilesystemSources } from './filesystem-source.js';
|
|
38
|
-
export type { FilesystemEntry, FilesystemSource, HttpResource, MountedSource } from './filesystem-source.js';
|
|
39
|
-
export { resolveRuntimeMode, isStatelessRuntime } from './runtime-mode.js';
|
|
40
|
-
export { PiAgentLoopRuntime, createPiAgentLoopRuntime } from './pi-loop-runtime.js';
|
|
41
|
-
export type { PiAgentLoopRuntimeOptions, PiCustomModel } from './pi-loop-runtime.js';
|
|
42
|
-
export { noopSessionStore, NoopSessionStore } from './store.js';
|
|
43
|
-
export { connectMcpServer } from './mcp.js';
|
|
44
|
-
export type { AgentDefinition, AgentTriggers, DefineAgentOptions, DefinedAgent } from './agent-definition.js';
|
|
45
|
-
export type { Schema, SchemaIssue, JsonSchemaObject } from './schema.js';
|
|
46
|
-
export type { Command, CommandEnvValue, SecretRef, ToolDef, } from './tools.js';
|
|
47
|
-
export type { AgentInit, FabricAgent, FabricContext, FabricRuntime, JsonObject, JsonValue, PromptOptions, Role, SandboxBackend, SessionOptions, ShellOptions, ShellResult, Skill, SkillOptions, } from './types.js';
|
|
48
|
-
export type { FabricSession } from './session.js';
|
|
49
|
-
export type { RemoteSandboxApi, RemoteSandboxOptions, SandboxEnv, SandboxExecOptions, SandboxFactory, SandboxFactoryOptions } from './sandbox.js';
|
|
50
|
-
export type { ModelConfig, ProviderSettings, ProvidersConfig } from './providers.js';
|
|
18
|
+
export * from './index.js';
|
|
51
19
|
//# sourceMappingURL=lite.d.ts.map
|
package/dist/lite.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lite.d.ts","sourceRoot":"","sources":["../src/lite.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"lite.d.ts","sourceRoot":"","sources":["../src/lite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,YAAY,CAAC"}
|
package/dist/lite.js
CHANGED
|
@@ -1,47 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @fabric-harness/sdk/lite —
|
|
2
|
+
* @fabric-harness/sdk/lite — DEPRECATED alias for `@fabric-harness/sdk`.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* the import graph. Use this when bundling for Cloudflare Workers, Vercel
|
|
8
|
-
* Edge, AWS Lambda, or any environment where you want the smallest
|
|
9
|
-
* possible import footprint.
|
|
4
|
+
* Starting in 0.4.0 the bare `@fabric-harness/sdk` import IS the
|
|
5
|
+
* headless-defaults variant. The `/lite` subpath stays for one minor so
|
|
6
|
+
* existing 0.3.x code keeps building. Migrate at your convenience:
|
|
10
7
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* `@fabric-harness/sdk` directly.
|
|
8
|
+
* import { agent } from '@fabric-harness/sdk/lite'; // before (deprecated)
|
|
9
|
+
* import { agent } from '@fabric-harness/sdk'; // after
|
|
14
10
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
11
|
+
* The export surface is identical to `@fabric-harness/sdk`. No behaviour
|
|
12
|
+
* change — `agent({...})` from this path is the same function as
|
|
13
|
+
* `agent({...})` from the bare path.
|
|
17
14
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* model: 'openai/gpt-5.5',
|
|
21
|
-
* runtime: 'stateless',
|
|
22
|
-
* })).session();
|
|
23
|
-
* return { reply: (await session.prompt(String(payload?.message ?? ''))).text };
|
|
24
|
-
* });
|
|
25
|
-
* ```
|
|
15
|
+
* For the no-defaults variant (Temporal / compliance / production), use
|
|
16
|
+
* `@fabric-harness/sdk/strict`.
|
|
26
17
|
*/
|
|
27
|
-
export
|
|
28
|
-
// In the lite entrypoint, `agent` is the headless-defaults variant — same
|
|
29
|
-
// `AgentDefinition` shape as the full SDK's `agent({...})`, just with
|
|
30
|
-
// runtime/sandbox/loopRuntime/compaction defaults pre-injected at every
|
|
31
|
-
// init() call. Swap to `@fabric-harness/sdk` to opt out of those defaults
|
|
32
|
-
// without changing the call shape. `defineAgent` stays exported as the
|
|
33
|
-
// historical handler-first shorthand.
|
|
34
|
-
export { liteAgent as agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
35
|
-
export { createFabricContext } from './context.js';
|
|
36
|
-
export { FabricError, isFabricError, toFabricError } from './error.js';
|
|
37
|
-
export { schema, SchemaValidationError } from './schema.js';
|
|
38
|
-
export { isEvent } from './events.js';
|
|
39
|
-
export { createBuiltinTools, defineCommand, defineTool, secret, shellQuote } from './tools.js';
|
|
40
|
-
export { createRemoteSandboxEnv, createSandboxEnv, createScopedSandboxEnv, EmptySandboxEnv, LocalSandboxEnv } from './sandbox.js';
|
|
41
|
-
export { VirtualSandboxEnv, createVirtualSandboxEnv } from './virtual-sandbox.js';
|
|
42
|
-
export { fumadocsSource, getVirtualSandbox, httpFilesystemSource, inMemorySource, localDirectorySource, mintlifySource, withFilesystemSources } from './filesystem-source.js';
|
|
43
|
-
export { resolveRuntimeMode, isStatelessRuntime } from './runtime-mode.js';
|
|
44
|
-
export { PiAgentLoopRuntime, createPiAgentLoopRuntime } from './pi-loop-runtime.js';
|
|
45
|
-
export { noopSessionStore, NoopSessionStore } from './store.js';
|
|
46
|
-
export { connectMcpServer } from './mcp.js';
|
|
18
|
+
export * from './index.js';
|
|
47
19
|
//# sourceMappingURL=lite.js.map
|
package/dist/lite.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lite.js","sourceRoot":"","sources":["../src/lite.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"lite.js","sourceRoot":"","sources":["../src/lite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,YAAY,CAAC"}
|
package/dist/strict.d.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fabric-harness/sdk/strict — fully explicit, no-defaults entry point.
|
|
3
|
+
*
|
|
4
|
+
* Same exports as `@fabric-harness/sdk` (bare). The only difference is that
|
|
5
|
+
* `agent({...})` does NOT auto-inject any of the headless defaults
|
|
6
|
+
* (`runtime`, `sandbox`, `loopRuntime`, `compaction`). Every option must
|
|
7
|
+
* be declared in source — useful for:
|
|
8
|
+
*
|
|
9
|
+
* - Temporal-backed durable agents (replay determinism).
|
|
10
|
+
* - Compliance / audit / regulated workloads.
|
|
11
|
+
* - Production agents that prefer explicitness over defaults.
|
|
12
|
+
*
|
|
13
|
+
* For the friendly default experience, import from `@fabric-harness/sdk`
|
|
14
|
+
* directly — same call shape, defaults injected when you don't override.
|
|
15
|
+
*/
|
|
16
|
+
export { init, StubFabricAgent } from './agent.js';
|
|
17
|
+
export { agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
18
|
+
export { resolveRuntimeMode, isStatelessRuntime, isInMemoryStore } from './runtime-mode.js';
|
|
19
|
+
export { evaluateContextBudget, estimateModelMessagesTokens, estimateSessionEntriesTokens, estimateTextTokens, isContextOverflowError } from './context-budget.js';
|
|
20
|
+
export { createFabricContext } from './context.js';
|
|
21
|
+
export { FabricError, isFabricError, toFabricError } from './error.js';
|
|
22
|
+
export { redactError, redactJson, redactText } from './redaction.js';
|
|
23
|
+
export { DEFAULT_HEADLESS_PREAMBLE, SessionHistory, buildModelMessagesFromHistory } from './history.js';
|
|
24
|
+
export { NativeLoopRuntime, defaultLoopRuntime } from './loop.js';
|
|
25
|
+
export { PiAgentLoopRuntime, createPiAgentLoopRuntime } from './pi-loop-runtime.js';
|
|
26
|
+
export type { PiAgentLoopRuntimeOptions, PiCustomModel } from './pi-loop-runtime.js';
|
|
27
|
+
export { connectMcpServer, createMcpTools } from './mcp.js';
|
|
28
|
+
export { StdioMcpClient, createStdioMcpClient } from './mcp-stdio.js';
|
|
29
|
+
export { AnthropicModelProvider, AzureOpenAIModelProvider, BedrockModelProvider, CohereModelProvider, FallbackModelProvider, GeminiModelProvider, MockModelProvider, OpenAICompatibleModelProvider, ProviderHttpError, VertexAIModelProvider, defaultModelProvider, generateWithRuntime, toolsToModelSchemas, } from './model.js';
|
|
30
|
+
export { clampCommandTimeout, evaluateCommandPolicy, evaluateToolCallPolicy, } from './policy.js';
|
|
31
|
+
export { parseModelRef, resolveModelProvider } from './providers.js';
|
|
32
|
+
export { RESULT_END_DELIMITER, RESULT_START_DELIMITER, buildResultRetryPrompt, extractResultValue, validateResult } from './result.js';
|
|
33
|
+
export { StubFabricSession } from './session.js';
|
|
34
|
+
export { createRemoteSandboxEnv, createSandboxEnv, createScopedSandboxEnv, DockerSandboxEnv, EmptySandboxEnv, LocalSandboxEnv, UnimplementedSandboxEnv } from './sandbox.js';
|
|
35
|
+
export { VirtualSandboxEnv, createVirtualSandboxEnv } from './virtual-sandbox.js';
|
|
36
|
+
export { fumadocsSource, getVirtualSandbox, httpFilesystemSource, inMemorySource, localDirectorySource, mintlifySource, withFilesystemSources } from './filesystem-source.js';
|
|
37
|
+
export type { FilesystemEntry, FilesystemSource, HttpResource, MountedSource } from './filesystem-source.js';
|
|
38
|
+
export { SchemaValidationError, formatSchemaIssues, schema } from './schema.js';
|
|
39
|
+
export { isEvent } from './events.js';
|
|
40
|
+
export type { AgentEvent, AgentEventBase, AgentEventCallback, AgentEventType } from './events.js';
|
|
41
|
+
export { emitOpenTelemetrySpan, openTelemetryExporter } from './otel.js';
|
|
42
|
+
export { consoleTelemetryExporter, entryToTelemetrySpan, eventToTelemetrySpan } from './telemetry.js';
|
|
43
|
+
export { InMemorySessionStore, NoopSessionStore, approvalStatesFromEntries, defaultSessionStore, noopSessionStore } from './store.js';
|
|
44
|
+
export { bashTool, createBuiltinTools, createCommandTools, createFileTools, defineCommand, defineTool, editFileTool, existsTool, globTool, grepTool, mkdirTool, readFileBufferTool, readFileTool, readdirTool, rmTool, secret, shellQuote, statTool, writeFileTool, } from './tools.js';
|
|
45
|
+
export type { ContextBudget, ContextBudgetOptions } from './context-budget.js';
|
|
46
|
+
export type { FabricErrorCode, FabricErrorOptions } from './error.js';
|
|
47
|
+
export type { RedactionOptions } from './redaction.js';
|
|
48
|
+
export type { ApprovalRisk, CapabilityPolicy, CommandPolicy, FilesystemPolicy, PolicyDecision, ToolPolicy } from './policy.js';
|
|
49
|
+
export type { ModelConfig, ParsedModelRef, ProviderSettings, ProvidersConfig, ResolveModelProviderOptions, ResolvedModelProvider } from './providers.js';
|
|
50
|
+
export type { AgentDefinition, AgentTriggers, DefineAgentOptions, DefinedAgent } from './agent-definition.js';
|
|
51
|
+
export type { RuntimeModeResolution } from './runtime-mode.js';
|
|
52
|
+
export type { JsonSchemaObject, Schema, SchemaIssue } from './schema.js';
|
|
53
|
+
export type { AgentLoopRuntime, PromptRunInput, PromptRunResult, } from './loop.js';
|
|
54
|
+
export type { CreateMcpToolsOptions, McpClientLike, McpServerConnection, McpServerOptions, McpToolDescriptor, McpTransport } from './mcp.js';
|
|
55
|
+
export type { OpenTelemetryExporterOptions } from './otel.js';
|
|
56
|
+
export type { TelemetryExporter, TelemetrySpan } from './telemetry.js';
|
|
57
|
+
export type { StdioMcpClientOptions } from './mcp-stdio.js';
|
|
58
|
+
export type { ModelAttemptEvent, ModelMessage, ModelMessageRole, ModelProvider, ModelRequest, ModelResponse, ModelRuntimeOptions, ModelToolCall, ModelToolSchema, ModelUsage, AnthropicProviderOptions, AzureOpenAIProviderOptions, BedrockProviderOptions, CohereProviderOptions, FallbackModelProviderOptions, GeminiProviderOptions, OpenAICompatibleProviderOptions, VertexAIProviderOptions, } from './model.js';
|
|
59
|
+
export type { FabricSession } from './session.js';
|
|
60
|
+
export { pruneSnapshots } from './sandbox.js';
|
|
61
|
+
export type { DockerSandboxOptions, FileStat, LocalSandboxOptions, RemoteSandboxApi, RemoteSandboxOptions, SandboxAdapterDescriptor, SandboxCapabilities, SandboxEnv, SandboxExecOptions, SandboxFactory, SandboxFactoryOptions, SandboxSnapshot, SnapshotPruneOptions, SnapshotPruneResult, } from './sandbox.js';
|
|
62
|
+
export type { ActorIdentity, AgentInit, ApprovalCallback, ApprovalDecision, ApprovalOptions, ApprovalRequest, ApprovalResponse, ApprovalState, ApprovalStateStatus, ApprovalUnavailableStrategy, ApprovalVote, ArtifactCreateOptions, ArtifactRef, AutonomyMode, AutonomyOptions, CheckpointCreateOptions, CheckpointRestoreOptions, CheckpointResult, CompactionOptions, CompactionResult, FabricActor, FabricAgent, FabricContext, FabricEvent, FabricEventCallback, FabricEventType, FabricRuntime, JsonObject, JsonPrimitive, JsonValue, CredentialMissingStrategy, MissingInputStrategy, PromptOptions, ResultExtractionOptions, ResultValidator, Role, SandboxBackend, SessionData, SessionEntry, SessionEntryType, SessionOptions, SessionStore, ShellOptions, ShellResult, Skill, SkillOptions, TaskOptions, } from './types.js';
|
|
63
|
+
export type { BashInput, BuiltinFileTool, BuiltinTool, Command, CommandEnvValue, CommandToolInput, CommandToolOptions, EditInput, ExistsInput, GlobInput, GrepInput, GrepMatch, MkdirInput, ReadFileBufferInput, ReadFileInput, ReaddirInput, RmInput, SecretRef, StatInput, ToolCall, ToolCallResult, ToolContext, ToolDef, ToolEffect, WriteFileInput, } from './tools.js';
|
|
64
|
+
//# sourceMappingURL=strict.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strict.d.ts","sourceRoot":"","sources":["../src/strict.ts"],"names":[],"mappings":"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"}
|
package/dist/strict.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fabric-harness/sdk/strict — fully explicit, no-defaults entry point.
|
|
3
|
+
*
|
|
4
|
+
* Same exports as `@fabric-harness/sdk` (bare). The only difference is that
|
|
5
|
+
* `agent({...})` does NOT auto-inject any of the headless defaults
|
|
6
|
+
* (`runtime`, `sandbox`, `loopRuntime`, `compaction`). Every option must
|
|
7
|
+
* be declared in source — useful for:
|
|
8
|
+
*
|
|
9
|
+
* - Temporal-backed durable agents (replay determinism).
|
|
10
|
+
* - Compliance / audit / regulated workloads.
|
|
11
|
+
* - Production agents that prefer explicitness over defaults.
|
|
12
|
+
*
|
|
13
|
+
* For the friendly default experience, import from `@fabric-harness/sdk`
|
|
14
|
+
* directly — same call shape, defaults injected when you don't override.
|
|
15
|
+
*/
|
|
16
|
+
export { init, StubFabricAgent } from './agent.js';
|
|
17
|
+
export { agent, defineAgent, getAgentDefinition } from './agent-definition.js';
|
|
18
|
+
export { resolveRuntimeMode, isStatelessRuntime, isInMemoryStore } from './runtime-mode.js';
|
|
19
|
+
export { evaluateContextBudget, estimateModelMessagesTokens, estimateSessionEntriesTokens, estimateTextTokens, isContextOverflowError } from './context-budget.js';
|
|
20
|
+
export { createFabricContext } from './context.js';
|
|
21
|
+
export { FabricError, isFabricError, toFabricError } from './error.js';
|
|
22
|
+
export { redactError, redactJson, redactText } from './redaction.js';
|
|
23
|
+
export { DEFAULT_HEADLESS_PREAMBLE, SessionHistory, buildModelMessagesFromHistory } from './history.js';
|
|
24
|
+
export { NativeLoopRuntime, defaultLoopRuntime } from './loop.js';
|
|
25
|
+
export { PiAgentLoopRuntime, createPiAgentLoopRuntime } from './pi-loop-runtime.js';
|
|
26
|
+
export { connectMcpServer, createMcpTools } from './mcp.js';
|
|
27
|
+
export { StdioMcpClient, createStdioMcpClient } from './mcp-stdio.js';
|
|
28
|
+
export { AnthropicModelProvider, AzureOpenAIModelProvider, BedrockModelProvider, CohereModelProvider, FallbackModelProvider, GeminiModelProvider, MockModelProvider, OpenAICompatibleModelProvider, ProviderHttpError, VertexAIModelProvider, defaultModelProvider, generateWithRuntime, toolsToModelSchemas, } from './model.js';
|
|
29
|
+
export { clampCommandTimeout, evaluateCommandPolicy, evaluateToolCallPolicy, } from './policy.js';
|
|
30
|
+
export { parseModelRef, resolveModelProvider } from './providers.js';
|
|
31
|
+
export { RESULT_END_DELIMITER, RESULT_START_DELIMITER, buildResultRetryPrompt, extractResultValue, validateResult } from './result.js';
|
|
32
|
+
export { StubFabricSession } from './session.js';
|
|
33
|
+
export { createRemoteSandboxEnv, createSandboxEnv, createScopedSandboxEnv, DockerSandboxEnv, EmptySandboxEnv, LocalSandboxEnv, UnimplementedSandboxEnv } from './sandbox.js';
|
|
34
|
+
export { VirtualSandboxEnv, createVirtualSandboxEnv } from './virtual-sandbox.js';
|
|
35
|
+
export { fumadocsSource, getVirtualSandbox, httpFilesystemSource, inMemorySource, localDirectorySource, mintlifySource, withFilesystemSources } from './filesystem-source.js';
|
|
36
|
+
export { SchemaValidationError, formatSchemaIssues, schema } from './schema.js';
|
|
37
|
+
export { isEvent } from './events.js';
|
|
38
|
+
export { emitOpenTelemetrySpan, openTelemetryExporter } from './otel.js';
|
|
39
|
+
export { consoleTelemetryExporter, entryToTelemetrySpan, eventToTelemetrySpan } from './telemetry.js';
|
|
40
|
+
export { InMemorySessionStore, NoopSessionStore, approvalStatesFromEntries, defaultSessionStore, noopSessionStore } from './store.js';
|
|
41
|
+
export { bashTool, createBuiltinTools, createCommandTools, createFileTools, defineCommand, defineTool, editFileTool, existsTool, globTool, grepTool, mkdirTool, readFileBufferTool, readFileTool, readdirTool, rmTool, secret, shellQuote, statTool, writeFileTool, } from './tools.js';
|
|
42
|
+
export { pruneSnapshots } from './sandbox.js';
|
|
43
|
+
//# sourceMappingURL=strict.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strict.js","sourceRoot":"","sources":["../src/strict.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fabric-harness/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Headless TypeScript framework for building durable, deployable autonomous agents — core SDK.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Fabric",
|
|
@@ -41,6 +41,10 @@
|
|
|
41
41
|
"types": "./dist/lite.d.ts",
|
|
42
42
|
"import": "./dist/lite.js"
|
|
43
43
|
},
|
|
44
|
+
"./strict": {
|
|
45
|
+
"types": "./dist/strict.d.ts",
|
|
46
|
+
"import": "./dist/strict.js"
|
|
47
|
+
},
|
|
44
48
|
"./cloudflare": {
|
|
45
49
|
"types": "./dist/cloudflare-source.d.ts",
|
|
46
50
|
"import": "./dist/cloudflare-source.js"
|