1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import { homedir } from "node:os";
import type { Extension, HostAPI } from "@dispatch/kernel";
import { toolsFilter } from "@dispatch/session-orchestrator";
import { createLoadSkillTool } from "./load-skill.js";
import { makeSkillsToolFilter } from "./tools-filter.js";
export const extension: Extension = {
manifest: {
id: "skills",
name: "Skills",
version: "0.0.0",
apiVersion: "^0.1.0",
trust: "bundled",
activation: "eager",
dependsOn: ["session-orchestrator"],
capabilities: { fs: true },
contributes: { tools: ["load_skill"] },
},
activate(host: HostAPI) {
const homeDir = homedir();
const workdir = process.cwd();
host.defineTool(createLoadSkillTool({ homeDir, workdir }));
host.addFilter(toolsFilter, makeSkillsToolFilter({ homeDir, workdir }));
},
};
|