openclaw-workflowskill 0.1.1 → 0.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/lib/adapters.ts +11 -11
- package/package.json +2 -2
package/lib/adapters.ts
CHANGED
|
@@ -10,17 +10,17 @@ import { join } from 'node:path';
|
|
|
10
10
|
import type { LLMAdapter, ToolAdapter, ToolDescriptor, ToolResult } from 'workflowskill';
|
|
11
11
|
import { AnthropicLLMAdapter, BuiltinToolAdapter } from 'workflowskill';
|
|
12
12
|
|
|
13
|
-
// Tools served locally by BuiltinToolAdapter (
|
|
13
|
+
// Tools served locally by BuiltinToolAdapter (web.scrape, etc.)
|
|
14
14
|
// These bypass the gateway and run in-process.
|
|
15
|
-
const
|
|
15
|
+
const BUILTIN_TOOL_NAMES = new Set(['web.scrape']);
|
|
16
16
|
|
|
17
17
|
// Lazy singleton — BuiltinToolAdapter.create() is async so we initialize on first use.
|
|
18
|
-
let
|
|
19
|
-
function
|
|
20
|
-
if (!
|
|
21
|
-
|
|
18
|
+
let _builtinToolsPromise: Promise<BuiltinToolAdapter> | null = null;
|
|
19
|
+
function getBuiltinTools(): Promise<BuiltinToolAdapter> {
|
|
20
|
+
if (!_builtinToolsPromise) {
|
|
21
|
+
_builtinToolsPromise = BuiltinToolAdapter.create();
|
|
22
22
|
}
|
|
23
|
-
return
|
|
23
|
+
return _builtinToolsPromise as Promise<BuiltinToolAdapter>;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export interface GatewayConfig {
|
|
@@ -166,7 +166,7 @@ export function createAdapters(gatewayConfig: GatewayConfig): AdapterSet {
|
|
|
166
166
|
const toolAdapter: ToolAdapter = {
|
|
167
167
|
has(toolName: string): boolean {
|
|
168
168
|
if (toolName === LLM_COMPLETE) return true;
|
|
169
|
-
if (
|
|
169
|
+
if (BUILTIN_TOOL_NAMES.has(toolName)) return true;
|
|
170
170
|
return hostTools.has(toolName);
|
|
171
171
|
},
|
|
172
172
|
async invoke(toolName: string, args: Record<string, unknown>): Promise<ToolResult> {
|
|
@@ -177,9 +177,9 @@ export function createAdapters(gatewayConfig: GatewayConfig): AdapterSet {
|
|
|
177
177
|
);
|
|
178
178
|
return { output: { text: result.text } };
|
|
179
179
|
}
|
|
180
|
-
if (
|
|
181
|
-
const
|
|
182
|
-
return
|
|
180
|
+
if (BUILTIN_TOOL_NAMES.has(toolName)) {
|
|
181
|
+
const builtinTools = await getBuiltinTools();
|
|
182
|
+
return builtinTools.invoke(toolName, args);
|
|
183
183
|
}
|
|
184
184
|
return hostTools.invoke(toolName, args);
|
|
185
185
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openclaw-workflowskill",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "WorkflowSkill plugin for OpenClaw — author, validate, run, and review YAML workflows",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.ts",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
]
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"workflowskill": "^0.
|
|
38
|
+
"workflowskill": "^0.2.0"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@types/node": "^25.3.0",
|