skillscript-runtime 0.9.9 → 0.10.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 +26 -9
- package/dist/bootstrap.d.ts +57 -18
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +171 -47
- package/dist/bootstrap.js.map +1 -1
- package/dist/connectors/config.d.ts +46 -0
- package/dist/connectors/config.d.ts.map +1 -1
- package/dist/connectors/config.js +109 -1
- package/dist/connectors/config.js.map +1 -1
- package/dist/connectors/index.d.ts +3 -1
- package/dist/connectors/index.d.ts.map +1 -1
- package/dist/connectors/index.js +1 -0
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/sqlite-skill-store.d.ts +65 -0
- package/dist/connectors/sqlite-skill-store.d.ts.map +1 -0
- package/dist/connectors/sqlite-skill-store.js +479 -0
- package/dist/connectors/sqlite-skill-store.js.map +1 -0
- package/dist/errors.d.ts +9 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +39 -6
- package/dist/errors.js.map +1 -1
- package/dist/help-content.d.ts.map +1 -1
- package/dist/help-content.js +18 -4
- package/dist/help-content.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +5 -1
- package/dist/runtime.js.map +1 -1
- package/examples/hello.skill.provenance.json +1 -1
- package/package.json +1 -1
- package/scaffold/connectors.json +31 -3
package/README.md
CHANGED
|
@@ -286,15 +286,17 @@ Swap in `$ ticketing_search`, `$ llm`, `$ memory_write` once you've wired connec
|
|
|
286
286
|
|
|
287
287
|
Skills don't know what they're talking to. Five contracts decouple language from substrate:
|
|
288
288
|
|
|
289
|
-
| Contract | Purpose |
|
|
289
|
+
| Contract | Purpose | v0.10 base config |
|
|
290
290
|
|---|---|---|
|
|
291
|
-
| `SkillStore` | Skill source persistence |
|
|
292
|
-
| `
|
|
293
|
-
| `
|
|
294
|
-
| `McpConnector` | MCP tool invocation — external dispatch
|
|
295
|
-
| `AgentConnector` | Delivery to a frontier agent |
|
|
291
|
+
| `SkillStore` | Skill source persistence | `FilesystemSkillStore` (default); switch via `substrate.skill_store` in `connectors.json` |
|
|
292
|
+
| `MemoryStore` | Retrieval over a knowledge store | `SqliteMemoryStore` (conditional on dbPath); switch via `substrate.memory_store` |
|
|
293
|
+
| `LocalModel` | Local LLM dispatch | **null** (adopter wires explicitly via `substrate.local_model`) |
|
|
294
|
+
| `McpConnector` | MCP tool invocation — external dispatch | adopter wires named instances in `connectors.json` |
|
|
295
|
+
| `AgentConnector` | Delivery to a frontier agent | adopter wires explicitly (no bundled default) |
|
|
296
296
|
|
|
297
|
-
|
|
297
|
+
Runtime hosts (MCP server + web dashboard) honor whichever substrate the deployment configures. Authoring CLI commands (`skillfile compile`, `skillfile lint`, `skillfile audit`, `skillfile list`) stay filesystem-pinned by design — they're the FS-authoring loop.
|
|
298
|
+
|
|
299
|
+
See **[`docs/configuration.md`](docs/configuration.md)** for the full substrate config reference.
|
|
298
300
|
|
|
299
301
|
**v0.7.0 substrate framing.** The canonical syntax routes everything substrate-specific through MCP dispatch — `$ llm prompt="..."` rather than the legacy `~`, `$ memory mode=fts query="..."` rather than the legacy `>`. This keeps skill source portable across adopters who wire different substrates. Pick the connector names that read well at your call sites: `llm`, `memory`, `openai_chat`, `pinecone_query` — whatever matches the substrate.
|
|
300
302
|
|
|
@@ -310,12 +312,21 @@ Wire your own by implementing the interface and registering in `connectors.json`
|
|
|
310
312
|
|
|
311
313
|
**Coming from v0.5.x or earlier?** v0.7.0 is a breaking-shape release: symbol-form ops (`~`, `>`, `@`, `!`, `??`, `&`) and `$(VAR)` substitution are deprecated. They still compile in v0.7.x during the grace period; v0.7.1 ships visibility-nudge lints (`deprecated-symbol-op`, `deprecated-substitution-shape`); removal slated for v0.8.x or v0.9. The mechanical rewrite rules are documented in [`CHANGELOG.md`](CHANGELOG.md) under `## 0.7.0 — Migration`. Most adopters writing new skills against canonical surface won't need to migrate anything.
|
|
312
314
|
|
|
313
|
-
### `connectors.json`
|
|
315
|
+
### `connectors.json`
|
|
316
|
+
|
|
317
|
+
Per-host configuration. The runtime loads it at startup. Two top-level concerns:
|
|
314
318
|
|
|
315
|
-
|
|
319
|
+
1. **`substrate`** (v0.10+) — which `SkillStore` / `MemoryStore` / `LocalModel` the runtime hosts use
|
|
320
|
+
2. **Named MCP connector instances** (v0.4.0+) — each becomes a connector referenced via `$ <name>` in skill source
|
|
316
321
|
|
|
317
322
|
```json
|
|
318
323
|
{
|
|
324
|
+
"substrate": {
|
|
325
|
+
"skill_store": "sqlite",
|
|
326
|
+
"memory_store": "sqlite",
|
|
327
|
+
"local_model": null
|
|
328
|
+
},
|
|
329
|
+
|
|
319
330
|
"youtrack": {
|
|
320
331
|
"class": "RemoteMcpConnector",
|
|
321
332
|
"config": {
|
|
@@ -327,6 +338,8 @@ Per-host MCP connector configuration. The runtime loads it at startup; each top-
|
|
|
327
338
|
}
|
|
328
339
|
```
|
|
329
340
|
|
|
341
|
+
Substrate short-form (`"sqlite"` etc.) wires bundled defaults. Object form (`{type, config}`) overrides config. See **[`docs/configuration.md`](docs/configuration.md)** for the full schema + adopter-custom impl path.
|
|
342
|
+
|
|
330
343
|
Two credential shapes:
|
|
331
344
|
|
|
332
345
|
- **Literal**: `"AUTH_HEADER": "Bearer plnt-XXX..."` — the credential lives in the file
|
|
@@ -390,6 +403,10 @@ Each example is annotated with the language pattern it demonstrates. The pre-v0.
|
|
|
390
403
|
## Architecture and deep documentation
|
|
391
404
|
|
|
392
405
|
- **[Language Reference](docs/language-reference.md)** — canonical spec (1600+ lines, 13 sections). The single source of truth on syntax + semantics.
|
|
406
|
+
- **[Configuration](docs/configuration.md)** — `connectors.json` substrate selection + named MCP connector wiring + adopter-custom impl path.
|
|
407
|
+
- **[Adopter Playbook](docs/adopter-playbook.md)** — patterns for adopters embedding skillscript-runtime in their own deployment.
|
|
408
|
+
- **[Connector Contract Reference](docs/connector-contract-reference.md)** — interface contracts for adopters writing their own connector impls.
|
|
409
|
+
- **[SqliteSkillStore](docs/sqlite-skill-store.md)** — the bundled DB-backed SkillStore: schema, semantics, forking checklist.
|
|
393
410
|
- **ROADMAP** — *coming soon to docs/*
|
|
394
411
|
|
|
395
412
|
## Status
|
package/dist/bootstrap.d.ts
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
import { Registry } from "./connectors/registry.js";
|
|
2
|
-
import { FilesystemSkillStore } from "./connectors/skill-store.js";
|
|
3
2
|
import { FilesystemTraceStore } from "./trace.js";
|
|
4
3
|
import { Scheduler, type TriggerRegistration } from "./scheduler.js";
|
|
5
4
|
import type { TraceConfig } from "./trace.js";
|
|
6
5
|
import { McpServer } from "./mcp-server.js";
|
|
6
|
+
import type { SkillStore, MemoryStore, LocalModel } from "./connectors/types.js";
|
|
7
7
|
export interface BootstrapOpts {
|
|
8
8
|
skillsDir: string;
|
|
9
9
|
traceDir: string;
|
|
10
10
|
/** When set + existing, register `SqliteMemoryStore` as primary memory_store. */
|
|
11
11
|
memoryDbPath?: string;
|
|
12
|
-
/** Override
|
|
13
|
-
|
|
12
|
+
/** Override the bundled-default SkillStore. v0.10 — threaded by the CLI when
|
|
13
|
+
* `connectors.json` substrate config selects sqlite / adopter-custom. */
|
|
14
|
+
skillStore?: SkillStore;
|
|
15
|
+
/** Override the conditional Sqlite MemoryStore wiring. */
|
|
16
|
+
memoryStore?: MemoryStore;
|
|
17
|
+
/** Optional LocalModel to register as `"default"`. v0.10 — base config is
|
|
18
|
+
* null; adopters wire explicitly via `connectors.json` or this opt. */
|
|
19
|
+
localModel?: LocalModel;
|
|
14
20
|
/** Scheduler poll interval (default 30s). */
|
|
15
21
|
pollIntervalSeconds?: number;
|
|
16
22
|
/** Forwarded to scheduler/runtime. Default false. */
|
|
@@ -43,7 +49,10 @@ export interface BootstrapResult {
|
|
|
43
49
|
registry: Registry;
|
|
44
50
|
scheduler: Scheduler;
|
|
45
51
|
mcpServer: McpServer;
|
|
46
|
-
|
|
52
|
+
/** v0.10 — generalized from concrete `FilesystemSkillStore` to the
|
|
53
|
+
* `SkillStore` interface since the connector is now configurable via
|
|
54
|
+
* `connectors.json` substrate config. */
|
|
55
|
+
skillStore: SkillStore;
|
|
47
56
|
traceStore: FilesystemTraceStore;
|
|
48
57
|
/** Read back so runtime_capabilities can surface the active mode. */
|
|
49
58
|
enableUnsafeShell: boolean;
|
|
@@ -62,28 +71,58 @@ export interface BootstrapResult {
|
|
|
62
71
|
export interface DefaultRegistryOpts {
|
|
63
72
|
skillsDir: string;
|
|
64
73
|
memoryDbPath?: string;
|
|
65
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Override the bundled-default SkillStore. When supplied, used instead of
|
|
76
|
+
* `new FilesystemSkillStore(skillsDir)`. Threaded through by the CLI when
|
|
77
|
+
* `connectors.json` substrate config selects sqlite or adopter-custom.
|
|
78
|
+
*/
|
|
79
|
+
skillStore?: SkillStore;
|
|
80
|
+
/**
|
|
81
|
+
* Override the conditional-Sqlite MemoryStore wiring. When supplied, used
|
|
82
|
+
* instead of the `memoryDbPath`-conditional `SqliteMemoryStore`.
|
|
83
|
+
*/
|
|
84
|
+
memoryStore?: MemoryStore;
|
|
85
|
+
/**
|
|
86
|
+
* Optional LocalModel to register as `"default"`. **v0.10 — base config:
|
|
87
|
+
* LocalModel is NULL unless explicitly provided.** Adopters wanting Ollama
|
|
88
|
+
* (or any other LocalModel) wire it explicitly via `connectors.json`
|
|
89
|
+
* substrate config or by passing here.
|
|
90
|
+
*/
|
|
91
|
+
localModel?: LocalModel;
|
|
66
92
|
}
|
|
67
93
|
/**
|
|
68
|
-
* Build the default connector registry: primary SkillStore
|
|
69
|
-
* MemoryStore (
|
|
70
|
-
*
|
|
71
|
-
* `skillfile run` one-shot path so both surfaces wire the same
|
|
94
|
+
* Build the default connector registry: primary SkillStore (configurable),
|
|
95
|
+
* primary MemoryStore (configurable / conditional), and optional LocalModel
|
|
96
|
+
* (null by default — v0.10). Used by both `bootstrap()` (long-lived host)
|
|
97
|
+
* and the `skillfile run` one-shot path so both surfaces wire the same
|
|
98
|
+
* defaults.
|
|
99
|
+
*
|
|
100
|
+
* **v0.10 base config**:
|
|
101
|
+
* skill_store → FilesystemSkillStore (override via `opts.skillStore`)
|
|
102
|
+
* memory_store → SqliteMemoryStore (conditional on `memoryDbPath`)
|
|
103
|
+
* local_model → null (override via `opts.localModel`)
|
|
104
|
+
* mcp_connector → null (adopter wires via `connectors.json`)
|
|
105
|
+
* agent_connector → null (adopter wires explicitly)
|
|
72
106
|
*/
|
|
73
107
|
export declare function defaultRegistry(opts: DefaultRegistryOpts): {
|
|
74
108
|
registry: Registry;
|
|
75
|
-
skillStore:
|
|
109
|
+
skillStore: SkillStore;
|
|
76
110
|
};
|
|
77
111
|
/**
|
|
78
|
-
* Construct the runtime surface with
|
|
112
|
+
* Construct the runtime surface with configurable substrate wiring.
|
|
113
|
+
*
|
|
114
|
+
* **Reference deployment, v0.10.** Base config:
|
|
115
|
+
* - `FilesystemSkillStore` (override via `opts.skillStore` or `connectors.json` substrate)
|
|
116
|
+
* - `SqliteMemoryStore` (conditional on `memoryDbPath`; override via `opts.memoryStore`)
|
|
117
|
+
* - LocalModel `null` (provide via `opts.localModel` or `connectors.json` substrate)
|
|
118
|
+
* - v0.7.2 MCP bridges (`llm`, `memory`, `memory_write`) wired when their
|
|
119
|
+
* substrates exist
|
|
120
|
+
* - Any `McpConnector` declared in `connectors.json`
|
|
79
121
|
*
|
|
80
|
-
*
|
|
81
|
-
* `
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* `connectors.json`. Adopters wanting custom substrate wiring should write
|
|
85
|
-
* their own bootstrap that imports the public APIs (Registry, the
|
|
86
|
-
* individual connector classes, `loadConnectorsConfig`, etc.) directly.
|
|
122
|
+
* Adopters wanting custom substrate wiring write `connectors.json` with a
|
|
123
|
+
* `substrate` section (per `docs/sqlite-skill-store.md`) OR write their own
|
|
124
|
+
* bootstrap that imports the public APIs (Registry, individual connector
|
|
125
|
+
* classes, `loadConnectorsConfig`, etc.) directly.
|
|
87
126
|
*
|
|
88
127
|
* Caller is expected to:
|
|
89
128
|
* 1. Optionally call `wireDeclarativeTriggers(result)` to register
|
package/dist/bootstrap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
package/dist/bootstrap.js
CHANGED
|
@@ -21,8 +21,9 @@ import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
|
|
|
21
21
|
import { dirname } from "node:path";
|
|
22
22
|
import { Registry } from "./connectors/registry.js";
|
|
23
23
|
import { FilesystemSkillStore } from "./connectors/skill-store.js";
|
|
24
|
-
import {
|
|
24
|
+
import { SqliteSkillStore } from "./connectors/sqlite-skill-store.js";
|
|
25
25
|
import { SqliteMemoryStore } from "./connectors/memory-store.js";
|
|
26
|
+
import { OllamaLocalModel } from "./connectors/local-model.js";
|
|
26
27
|
import { LocalModelMcpConnector } from "./connectors/local-model-mcp.js";
|
|
27
28
|
import { MemoryStoreMcpConnector } from "./connectors/memory-store-mcp.js";
|
|
28
29
|
import { loadConnectorsConfig, detectGitignoreRisk } from "./connectors/config.js";
|
|
@@ -30,56 +31,70 @@ import { FilesystemTraceStore } from "./trace.js";
|
|
|
30
31
|
import { Scheduler } from "./scheduler.js";
|
|
31
32
|
import { McpServer } from "./mcp-server.js";
|
|
32
33
|
import { parse } from "./parser.js";
|
|
34
|
+
import { join } from "node:path";
|
|
33
35
|
const VALID_TRIGGER_SOURCES = [
|
|
34
36
|
"cron", "session", "event", "agent-event", "file-watch", "sensor",
|
|
35
37
|
];
|
|
36
38
|
/**
|
|
37
|
-
* Build the default connector registry: primary SkillStore
|
|
38
|
-
* MemoryStore (
|
|
39
|
-
*
|
|
40
|
-
* `skillfile run` one-shot path so both surfaces wire the same
|
|
39
|
+
* Build the default connector registry: primary SkillStore (configurable),
|
|
40
|
+
* primary MemoryStore (configurable / conditional), and optional LocalModel
|
|
41
|
+
* (null by default — v0.10). Used by both `bootstrap()` (long-lived host)
|
|
42
|
+
* and the `skillfile run` one-shot path so both surfaces wire the same
|
|
43
|
+
* defaults.
|
|
44
|
+
*
|
|
45
|
+
* **v0.10 base config**:
|
|
46
|
+
* skill_store → FilesystemSkillStore (override via `opts.skillStore`)
|
|
47
|
+
* memory_store → SqliteMemoryStore (conditional on `memoryDbPath`)
|
|
48
|
+
* local_model → null (override via `opts.localModel`)
|
|
49
|
+
* mcp_connector → null (adopter wires via `connectors.json`)
|
|
50
|
+
* agent_connector → null (adopter wires explicitly)
|
|
41
51
|
*/
|
|
42
52
|
export function defaultRegistry(opts) {
|
|
43
53
|
const registry = new Registry();
|
|
44
|
-
const skillStore = new FilesystemSkillStore(opts.skillsDir);
|
|
54
|
+
const skillStore = opts.skillStore ?? new FilesystemSkillStore(opts.skillsDir);
|
|
45
55
|
registry.registerSkillStore("primary", skillStore);
|
|
46
|
-
|
|
47
|
-
|
|
56
|
+
let memoryStore = opts.memoryStore;
|
|
57
|
+
if (memoryStore === undefined && opts.memoryDbPath !== undefined && (existsSync(opts.memoryDbPath) || existsSync(dirname(opts.memoryDbPath)))) {
|
|
58
|
+
memoryStore = new SqliteMemoryStore({ dbPath: opts.memoryDbPath });
|
|
59
|
+
}
|
|
60
|
+
if (memoryStore !== undefined) {
|
|
61
|
+
registry.registerMemoryStore("primary", memoryStore);
|
|
62
|
+
}
|
|
63
|
+
// v0.10 — LocalModel default is null. Only register if explicitly provided.
|
|
64
|
+
if (opts.localModel !== undefined) {
|
|
65
|
+
registry.registerLocalModel("default", opts.localModel);
|
|
66
|
+
}
|
|
67
|
+
// v0.7.2 — auto-wire bridge connectors when their substrate exists.
|
|
68
|
+
// Adopters override by re-registering the bridge name post-bootstrap OR
|
|
69
|
+
// by adding entries to connectors.json (which loads after defaultRegistry).
|
|
70
|
+
if (registry.hasLocalModel("default")) {
|
|
71
|
+
registry.registerMcpConnector("llm", new LocalModelMcpConnector(registry.getLocalModel("default")));
|
|
48
72
|
}
|
|
49
|
-
const ollamaUrl = opts.ollamaBaseUrl ?? process.env["OLLAMA_BASE_URL"] ?? "http://localhost:11434";
|
|
50
|
-
registry.registerLocalModel("default", new OllamaLocalModel({ baseUrl: ollamaUrl, defaultModelTag: "gemma2:9b" }));
|
|
51
|
-
registry.registerLocalModel("gemma2", new OllamaLocalModel({ baseUrl: ollamaUrl, defaultModelTag: "gemma2:9b" }));
|
|
52
|
-
registry.registerLocalModel("qwen", new OllamaLocalModel({ baseUrl: ollamaUrl, defaultModelTag: "qwen2.5:7b" }));
|
|
53
|
-
// v0.7.2 — auto-wire bridge connectors so the canonical `$ llm` and
|
|
54
|
-
// `$ memory` MCP-dispatch paths Just Work in default deployments. The
|
|
55
|
-
// bridges wrap the LocalModel + MemoryStore impls registered above as
|
|
56
|
-
// McpConnector instances. Adopters override by re-registering "llm"
|
|
57
|
-
// or "memory" with their own connector (post-bootstrap) OR by adding
|
|
58
|
-
// entries to connectors.json — connectors.json loading runs AFTER
|
|
59
|
-
// defaultRegistry, so adopter overrides win.
|
|
60
|
-
const defaultLocalModel = registry.getLocalModel("default");
|
|
61
|
-
registry.registerMcpConnector("llm", new LocalModelMcpConnector(defaultLocalModel));
|
|
62
|
-
const memoryStore = registry.listMemoryStores().find((e) => e.name === "primary");
|
|
63
73
|
if (memoryStore !== undefined) {
|
|
64
74
|
// v0.8.0 — register the SAME bridge instance under both names so
|
|
65
75
|
// bare-form `$ memory mode=fts ...` and `$ memory_write content=...`
|
|
66
76
|
// both route to it. The bridge dispatches on toolName internally.
|
|
67
|
-
const bridge = new MemoryStoreMcpConnector(memoryStore
|
|
77
|
+
const bridge = new MemoryStoreMcpConnector(memoryStore);
|
|
68
78
|
registry.registerMcpConnector("memory", bridge);
|
|
69
79
|
registry.registerMcpConnector("memory_write", bridge);
|
|
70
80
|
}
|
|
71
81
|
return { registry, skillStore };
|
|
72
82
|
}
|
|
73
83
|
/**
|
|
74
|
-
* Construct the runtime surface with
|
|
84
|
+
* Construct the runtime surface with configurable substrate wiring.
|
|
75
85
|
*
|
|
76
|
-
* **Reference deployment.**
|
|
77
|
-
* `
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
86
|
+
* **Reference deployment, v0.10.** Base config:
|
|
87
|
+
* - `FilesystemSkillStore` (override via `opts.skillStore` or `connectors.json` substrate)
|
|
88
|
+
* - `SqliteMemoryStore` (conditional on `memoryDbPath`; override via `opts.memoryStore`)
|
|
89
|
+
* - LocalModel `null` (provide via `opts.localModel` or `connectors.json` substrate)
|
|
90
|
+
* - v0.7.2 MCP bridges (`llm`, `memory`, `memory_write`) wired when their
|
|
91
|
+
* substrates exist
|
|
92
|
+
* - Any `McpConnector` declared in `connectors.json`
|
|
93
|
+
*
|
|
94
|
+
* Adopters wanting custom substrate wiring write `connectors.json` with a
|
|
95
|
+
* `substrate` section (per `docs/sqlite-skill-store.md`) OR write their own
|
|
96
|
+
* bootstrap that imports the public APIs (Registry, individual connector
|
|
97
|
+
* classes, `loadConnectorsConfig`, etc.) directly.
|
|
83
98
|
*
|
|
84
99
|
* Caller is expected to:
|
|
85
100
|
* 1. Optionally call `wireDeclarativeTriggers(result)` to register
|
|
@@ -89,26 +104,49 @@ export function defaultRegistry(opts) {
|
|
|
89
104
|
* `result.mcpServer`.
|
|
90
105
|
*/
|
|
91
106
|
export function bootstrap(opts) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
// v0.4.0 — load and register configured MCP connectors from connectors.json.
|
|
97
|
-
// Errors surface via the result; bootstrap doesn't throw (lets the caller
|
|
98
|
-
// decide whether a malformed config should abort startup or warn).
|
|
107
|
+
// v0.10 — pre-load connectors.json (if configured) to extract substrate
|
|
108
|
+
// intent BEFORE defaultRegistry runs. The substrate section selects
|
|
109
|
+
// SkillStore / MemoryStore / LocalModel impls; the MCP-connector entries
|
|
110
|
+
// are registered after defaultRegistry below.
|
|
99
111
|
const configuredConnectorNames = [];
|
|
100
112
|
const connectorConfigErrors = [];
|
|
113
|
+
let loadedConnectors;
|
|
101
114
|
if (opts.connectorsConfigPath !== undefined) {
|
|
102
|
-
|
|
103
|
-
connectorConfigErrors.push(...
|
|
104
|
-
|
|
115
|
+
loadedConnectors = loadConnectorsConfig({ path: opts.connectorsConfigPath });
|
|
116
|
+
connectorConfigErrors.push(...loadedConnectors.errors);
|
|
117
|
+
}
|
|
118
|
+
// Convert substrate intent → instances. Programmatic opts (opts.skillStore
|
|
119
|
+
// etc.) win over connectors.json substrate config — explicit wiring beats
|
|
120
|
+
// declarative. connectors.json beats built-in defaults.
|
|
121
|
+
const substrateResult = buildSubstrateInstances(loadedConnectors?.substrate, opts);
|
|
122
|
+
connectorConfigErrors.push(...substrateResult.errors);
|
|
123
|
+
// Precedence: programmatic opts > substrate config > built-in default.
|
|
124
|
+
// Explicit wiring (`opts.skillStore = ...`) beats declarative substrate;
|
|
125
|
+
// declarative beats the FilesystemSkillStore fallback inside defaultRegistry.
|
|
126
|
+
const skillStoreToUse = opts.skillStore ?? substrateResult.skillStore;
|
|
127
|
+
const memoryStoreToUse = opts.memoryStore ?? substrateResult.memoryStore;
|
|
128
|
+
const localModelToUse = opts.localModel ?? substrateResult.localModel;
|
|
129
|
+
const { registry, skillStore } = defaultRegistry({
|
|
130
|
+
...opts,
|
|
131
|
+
...(skillStoreToUse !== undefined ? { skillStore: skillStoreToUse } : {}),
|
|
132
|
+
...(memoryStoreToUse !== undefined ? { memoryStore: memoryStoreToUse } : {}),
|
|
133
|
+
...(localModelToUse !== undefined ? { localModel: localModelToUse } : {}),
|
|
134
|
+
});
|
|
135
|
+
const traceStore = new FilesystemTraceStore(opts.traceDir);
|
|
136
|
+
const enableUnsafeShell = opts.enableUnsafeShell ?? false;
|
|
137
|
+
const mode = opts.mode ?? "dashboard";
|
|
138
|
+
// v0.4.0 — register the MCP connectors from the pre-loaded connectors.json
|
|
139
|
+
// result. Errors surface via the result; bootstrap doesn't throw (lets the
|
|
140
|
+
// caller decide whether a malformed config should abort startup or warn).
|
|
141
|
+
if (loadedConnectors !== undefined) {
|
|
142
|
+
for (const c of loadedConnectors.connectors) {
|
|
105
143
|
if (c.instance !== undefined) {
|
|
106
144
|
registry.registerMcpConnector(c.name, c.instance, c.allowedTools);
|
|
107
145
|
configuredConnectorNames.push(c.name);
|
|
108
146
|
}
|
|
109
147
|
}
|
|
110
|
-
if (
|
|
111
|
-
for (const err of
|
|
148
|
+
if (loadedConnectors.errors.length > 0) {
|
|
149
|
+
for (const err of loadedConnectors.errors) {
|
|
112
150
|
process.stderr.write(`[bootstrap] ${err}\n`);
|
|
113
151
|
}
|
|
114
152
|
}
|
|
@@ -117,10 +155,11 @@ export function bootstrap(opts) {
|
|
|
117
155
|
}
|
|
118
156
|
// v0.4.1 — credential-discipline backstop. One-time stderr warning if
|
|
119
157
|
// connectors.json is in a git-tracked dir without a .gitignore entry.
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
158
|
+
if (opts.connectorsConfigPath !== undefined) {
|
|
159
|
+
const giWarning = detectGitignoreRisk(opts.connectorsConfigPath);
|
|
160
|
+
if (giWarning !== null) {
|
|
161
|
+
process.stderr.write(`[bootstrap] WARNING: ${giWarning}\n`);
|
|
162
|
+
}
|
|
124
163
|
}
|
|
125
164
|
}
|
|
126
165
|
// v0.2.7 — wire write-through to the persistent registry, then hydrate
|
|
@@ -166,6 +205,91 @@ export function bootstrap(opts) {
|
|
|
166
205
|
...(opts.triggersFilePath !== undefined ? { triggersFilePath: opts.triggersFilePath } : {}),
|
|
167
206
|
};
|
|
168
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* v0.10 — translate parsed substrate intent into concrete connector instances
|
|
210
|
+
* for `defaultRegistry()` to register. Defaults to db paths under the
|
|
211
|
+
* deployment's `skillsDir` so adopters get sensible out-of-box behavior
|
|
212
|
+
* without explicit config.
|
|
213
|
+
*
|
|
214
|
+
* Programmatic opts (`opts.skillStore`, etc.) take precedence over substrate
|
|
215
|
+
* intent. Substrate intent takes precedence over built-in defaults (which
|
|
216
|
+
* `defaultRegistry` applies when nothing is supplied).
|
|
217
|
+
*
|
|
218
|
+
* **Custom substrate impls** (`type: "custom"` in connectors.json) require
|
|
219
|
+
* dynamic import. Today's sync `bootstrap()` doesn't support that — surfaces
|
|
220
|
+
* a clear error and falls back to defaults. Adopters wanting custom impls
|
|
221
|
+
* write their own bootstrap script (existing pattern). Promoting bootstrap()
|
|
222
|
+
* to async + supporting custom-via-connectors.json is future work.
|
|
223
|
+
*/
|
|
224
|
+
function buildSubstrateInstances(substrate, opts) {
|
|
225
|
+
const errors = [];
|
|
226
|
+
const result = { errors };
|
|
227
|
+
if (substrate === undefined)
|
|
228
|
+
return result;
|
|
229
|
+
// skill_store
|
|
230
|
+
if (substrate.skill_store !== undefined && substrate.skill_store !== null) {
|
|
231
|
+
const built = buildSkillStoreFromChoice(substrate.skill_store, opts);
|
|
232
|
+
if (built.error !== undefined)
|
|
233
|
+
errors.push(built.error);
|
|
234
|
+
else if (built.instance !== undefined)
|
|
235
|
+
result.skillStore = built.instance;
|
|
236
|
+
}
|
|
237
|
+
// memory_store
|
|
238
|
+
if (substrate.memory_store !== undefined && substrate.memory_store !== null) {
|
|
239
|
+
const built = buildMemoryStoreFromChoice(substrate.memory_store, opts);
|
|
240
|
+
if (built.error !== undefined)
|
|
241
|
+
errors.push(built.error);
|
|
242
|
+
else if (built.instance !== undefined)
|
|
243
|
+
result.memoryStore = built.instance;
|
|
244
|
+
}
|
|
245
|
+
// local_model (null → explicit "no LocalModel", which is also the v0.10 default)
|
|
246
|
+
if (substrate.local_model !== undefined && substrate.local_model !== null) {
|
|
247
|
+
const built = buildLocalModelFromChoice(substrate.local_model);
|
|
248
|
+
if (built.error !== undefined)
|
|
249
|
+
errors.push(built.error);
|
|
250
|
+
else if (built.instance !== undefined)
|
|
251
|
+
result.localModel = built.instance;
|
|
252
|
+
}
|
|
253
|
+
return result;
|
|
254
|
+
}
|
|
255
|
+
function buildSkillStoreFromChoice(choice, opts) {
|
|
256
|
+
if (choice.type === "filesystem") {
|
|
257
|
+
return { instance: new FilesystemSkillStore(opts.skillsDir) };
|
|
258
|
+
}
|
|
259
|
+
if (choice.type === "sqlite") {
|
|
260
|
+
const dbPath = choice.config?.["dbPath"] ?? join(opts.skillsDir, "skills.db");
|
|
261
|
+
return { instance: new SqliteSkillStore({ dbPath }) };
|
|
262
|
+
}
|
|
263
|
+
if (choice.type === "custom") {
|
|
264
|
+
return { error: `connectors.json: substrate.skill_store — 'custom' type not yet supported via connectors.json (sync bootstrap can't dynamic-import). Wire your custom SkillStore via a programmatic bootstrap script that calls registry.registerSkillStore() directly.` };
|
|
265
|
+
}
|
|
266
|
+
return { error: `connectors.json: substrate.skill_store — unknown type '${choice.type}'.` };
|
|
267
|
+
}
|
|
268
|
+
function buildMemoryStoreFromChoice(choice, opts) {
|
|
269
|
+
if (choice.type === "sqlite") {
|
|
270
|
+
const dbPath = choice.config?.["dbPath"]
|
|
271
|
+
?? opts.memoryDbPath
|
|
272
|
+
?? join(opts.skillsDir, "memories.db");
|
|
273
|
+
return { instance: new SqliteMemoryStore({ dbPath }) };
|
|
274
|
+
}
|
|
275
|
+
if (choice.type === "custom") {
|
|
276
|
+
return { error: `connectors.json: substrate.memory_store — 'custom' type not yet supported via connectors.json (sync bootstrap can't dynamic-import). Wire your custom MemoryStore via a programmatic bootstrap script.` };
|
|
277
|
+
}
|
|
278
|
+
return { error: `connectors.json: substrate.memory_store — unknown type '${choice.type}'.` };
|
|
279
|
+
}
|
|
280
|
+
function buildLocalModelFromChoice(choice) {
|
|
281
|
+
if (choice.type === "ollama") {
|
|
282
|
+
const baseUrl = choice.config?.["baseUrl"]
|
|
283
|
+
?? process.env["OLLAMA_BASE_URL"]
|
|
284
|
+
?? "http://localhost:11434";
|
|
285
|
+
const defaultModelTag = choice.config?.["defaultModelTag"] ?? "gemma2:9b";
|
|
286
|
+
return { instance: new OllamaLocalModel({ baseUrl, defaultModelTag }) };
|
|
287
|
+
}
|
|
288
|
+
if (choice.type === "custom") {
|
|
289
|
+
return { error: `connectors.json: substrate.local_model — 'custom' type not yet supported via connectors.json. Wire via programmatic bootstrap.` };
|
|
290
|
+
}
|
|
291
|
+
return { error: `connectors.json: substrate.local_model — unknown type '${choice.type}'.` };
|
|
292
|
+
}
|
|
169
293
|
/**
|
|
170
294
|
* Read `triggers.json` (if present) and re-register each imperative trigger
|
|
171
295
|
* into the scheduler with its persisted id. Prunes expired rows during the
|
package/dist/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,43 @@
|
|
|
1
1
|
import type { McpConnector, McpConnectorClass } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* v0.10 — substrate config (top-level `substrate` key in connectors.json).
|
|
4
|
+
* Singleton substrates (SkillStore, MemoryStore, LocalModel) declared here
|
|
5
|
+
* are consumed by `bootstrap()` / `defaultRegistry()` BEFORE the
|
|
6
|
+
* per-instance MCP connectors load. Each slot accepts three forms:
|
|
7
|
+
*
|
|
8
|
+
* short form → `"filesystem"` | `"sqlite"` | `null`
|
|
9
|
+
* object form → `{ "type": "sqlite", "config": { "dbPath": "/path/skills.db" } }`
|
|
10
|
+
* custom form → `{ "type": "custom", "module": "./my-store.js", "export": "MyStore", "config": {...} }`
|
|
11
|
+
*
|
|
12
|
+
* Built-in `type` values per slot:
|
|
13
|
+
* skill_store: "filesystem" | "sqlite"
|
|
14
|
+
* memory_store: "sqlite"
|
|
15
|
+
* local_model: "ollama"
|
|
16
|
+
*
|
|
17
|
+
* Adopter-custom (`type: "custom"`) loads the named module + exported class
|
|
18
|
+
* via dynamic import at bootstrap time. Class must implement the relevant
|
|
19
|
+
* contract; `config` is passed to the class constructor verbatim.
|
|
20
|
+
*/
|
|
21
|
+
export type SubstrateChoice = {
|
|
22
|
+
type: "filesystem";
|
|
23
|
+
config?: Record<string, unknown>;
|
|
24
|
+
} | {
|
|
25
|
+
type: "sqlite";
|
|
26
|
+
config?: Record<string, unknown>;
|
|
27
|
+
} | {
|
|
28
|
+
type: "ollama";
|
|
29
|
+
config?: Record<string, unknown>;
|
|
30
|
+
} | {
|
|
31
|
+
type: "custom";
|
|
32
|
+
module: string;
|
|
33
|
+
export?: string;
|
|
34
|
+
config?: Record<string, unknown>;
|
|
35
|
+
};
|
|
36
|
+
export interface SubstrateConfig {
|
|
37
|
+
skill_store?: SubstrateChoice | null;
|
|
38
|
+
memory_store?: SubstrateChoice | null;
|
|
39
|
+
local_model?: SubstrateChoice | null;
|
|
40
|
+
}
|
|
2
41
|
/**
|
|
3
42
|
* Closed-set class registry. v0.4.0 ships with `CallbackMcpConnector`
|
|
4
43
|
* registered for type-tracking + the lookup mechanism — but without a
|
|
@@ -70,6 +109,13 @@ export interface LoadConnectorsConfigResult {
|
|
|
70
109
|
connectors: ConfiguredConnector[];
|
|
71
110
|
/** Hard errors from parsing/validation/instantiation. Surfaced at startup. */
|
|
72
111
|
errors: string[];
|
|
112
|
+
/**
|
|
113
|
+
* v0.10 — parsed substrate intent (skill_store / memory_store / local_model)
|
|
114
|
+
* from the top-level `substrate` key. `undefined` when the key is absent.
|
|
115
|
+
* Consumer (`bootstrap()`) translates intent → instances + threads them
|
|
116
|
+
* into `defaultRegistry()`.
|
|
117
|
+
*/
|
|
118
|
+
substrate?: SubstrateConfig;
|
|
73
119
|
}
|
|
74
120
|
export interface LoadConnectorsConfigOpts {
|
|
75
121
|
/** Path to `connectors.json`. Missing file → graceful empty result. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/connectors/config.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,YAAY,CAAC;CAChE;AAED,eAAO,MAAM,uBAAuB,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAiB3E,CAAC;AASH;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAGrF;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAE3D;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAE/E;AAED,uFAAuF;AACvF,wBAAgB,yBAAyB,IAAI,MAAM,EAAE,CAGpD;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,2IAA2I;IAC3I,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC;IACnC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,2CAA2C;IAC3C,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,8EAA8E;IAC9E,MAAM,EAAE,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/connectors/config.ts"],"names":[],"mappings":"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"}
|