@oda-agent/openclaw-plugin 0.1.9 → 0.2.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/dist/entry.d.ts +12 -2
- package/dist/entry.d.ts.map +1 -1
- package/dist/entry.js +138 -12
- package/dist/entry.js.map +1 -1
- package/package.json +1 -1
package/dist/entry.d.ts
CHANGED
|
@@ -16,11 +16,21 @@
|
|
|
16
16
|
* members used by this plugin are declared here.
|
|
17
17
|
*/
|
|
18
18
|
export interface OpenClawApi {
|
|
19
|
-
/** Register a
|
|
20
|
-
registerTool(
|
|
19
|
+
/** Register a tool with the plugin runtime. */
|
|
20
|
+
registerTool(tool: OpenClawToolDefinition): void;
|
|
21
21
|
/** Return the plugin configuration provided by the user or environment. */
|
|
22
22
|
getConfig(): Record<string, unknown>;
|
|
23
23
|
}
|
|
24
|
+
export interface OpenClawToolDefinition {
|
|
25
|
+
name: string;
|
|
26
|
+
description: string;
|
|
27
|
+
parameters: {
|
|
28
|
+
type: 'object';
|
|
29
|
+
properties: Record<string, unknown>;
|
|
30
|
+
required?: string[];
|
|
31
|
+
};
|
|
32
|
+
execute(toolCallId: string, params: unknown): Promise<unknown>;
|
|
33
|
+
}
|
|
24
34
|
/** Shape of an OpenClaw native plugin entry. */
|
|
25
35
|
export interface OpenClawPluginEntry {
|
|
26
36
|
/** Unique identifier for the plugin (must match `openclaw.plugin.json` id). */
|
package/dist/entry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAcH;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B
|
|
1
|
+
{"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAcH;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,YAAY,CAAC,IAAI,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACjD,2EAA2E;IAC3E,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AAED,gDAAgD;AAChD,MAAM,WAAW,mBAAmB;IAClC,+EAA+E;IAC/E,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,wEAAwE;IACxE,QAAQ,IAAI,IAAI,CAAC;CAClB;AAgCD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CA0S/C;AAED,wBAAgB,QAAQ,IAAI,IAAI,CAG/B;AAMD,QAAA,MAAM,WAAW,qBAOf,CAAC;AAEH,eAAe,WAAW,CAAC"}
|
package/dist/entry.js
CHANGED
|
@@ -48,6 +48,16 @@ const plugin_js_1 = require("./plugin.js");
|
|
|
48
48
|
function definePluginEntry(entry) {
|
|
49
49
|
return entry;
|
|
50
50
|
}
|
|
51
|
+
function registerTool(api, name, description, parameters, handler) {
|
|
52
|
+
api.registerTool({
|
|
53
|
+
name,
|
|
54
|
+
description,
|
|
55
|
+
parameters,
|
|
56
|
+
async execute(_toolCallId, params) {
|
|
57
|
+
return handler(params);
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
}
|
|
51
61
|
function register(api) {
|
|
52
62
|
let runtimePromise = null;
|
|
53
63
|
let authenticatedRuntimePromise = null;
|
|
@@ -84,57 +94,173 @@ function register(api) {
|
|
|
84
94
|
return authenticatedRuntimePromise;
|
|
85
95
|
}
|
|
86
96
|
// ── Read-only tools ─────────────────────────────────────────────────────
|
|
87
|
-
|
|
97
|
+
registerTool(api, 'searchProducts', 'Search for products in the Oda catalogue by keyword.', {
|
|
98
|
+
type: 'object',
|
|
99
|
+
properties: {
|
|
100
|
+
query: {
|
|
101
|
+
type: 'string',
|
|
102
|
+
description: 'Search query for catalogue lookup.',
|
|
103
|
+
},
|
|
104
|
+
},
|
|
105
|
+
required: ['query'],
|
|
106
|
+
}, async (params) => {
|
|
88
107
|
const { client } = await ensureLoggedIn();
|
|
89
108
|
return readOnlyTools.searchProducts(client, params);
|
|
90
109
|
});
|
|
91
|
-
|
|
110
|
+
registerTool(api, 'getCart', 'Retrieve the current shopping cart.', {
|
|
111
|
+
type: 'object',
|
|
112
|
+
properties: {},
|
|
113
|
+
}, async () => {
|
|
92
114
|
const { client } = await ensureLoggedIn();
|
|
93
115
|
return readOnlyTools.getCart(client);
|
|
94
116
|
});
|
|
95
|
-
|
|
117
|
+
registerTool(api, 'getOrders', 'Fetch paginated order history.', {
|
|
118
|
+
type: 'object',
|
|
119
|
+
properties: {
|
|
120
|
+
page: {
|
|
121
|
+
type: 'number',
|
|
122
|
+
description: 'Page number to fetch. Defaults to 1.',
|
|
123
|
+
},
|
|
124
|
+
},
|
|
125
|
+
}, async (params) => {
|
|
96
126
|
const { client } = await ensureLoggedIn();
|
|
97
127
|
return readOnlyTools.getOrders(client, params);
|
|
98
128
|
});
|
|
99
|
-
|
|
129
|
+
registerTool(api, 'getDeliverySlots', 'List available delivery time slots.', {
|
|
130
|
+
type: 'object',
|
|
131
|
+
properties: {},
|
|
132
|
+
}, async () => {
|
|
100
133
|
const { client } = await ensureLoggedIn();
|
|
101
134
|
return readOnlyTools.getDeliverySlots(client);
|
|
102
135
|
});
|
|
103
|
-
|
|
136
|
+
registerTool(api, 'getShoppingLists', "List the user's saved shopping lists.", {
|
|
137
|
+
type: 'object',
|
|
138
|
+
properties: {},
|
|
139
|
+
}, async () => {
|
|
104
140
|
const { client } = await ensureLoggedIn();
|
|
105
141
|
return readOnlyTools.getShoppingLists(client);
|
|
106
142
|
});
|
|
107
143
|
// ── Higher-level read-only helpers ──────────────────────────────────────
|
|
108
|
-
|
|
144
|
+
registerTool(api, 'analyseOrderHistory', 'Analyse past orders and return a summary of frequently ordered products.', {
|
|
145
|
+
type: 'object',
|
|
146
|
+
properties: {
|
|
147
|
+
maxPages: {
|
|
148
|
+
type: 'number',
|
|
149
|
+
description: 'Maximum number of order-history pages to inspect.',
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
}, async (params) => {
|
|
109
153
|
const { plugin } = await ensureLoggedIn();
|
|
110
154
|
const p = params;
|
|
111
155
|
return plugin.analyseOrderHistory(p?.maxPages);
|
|
112
156
|
});
|
|
113
|
-
|
|
157
|
+
registerTool(api, 'buildShoppingList', 'Resolve plain-text queries into a structured shopping list without mutating the cart.', {
|
|
158
|
+
type: 'object',
|
|
159
|
+
properties: {
|
|
160
|
+
name: {
|
|
161
|
+
type: 'string',
|
|
162
|
+
description: 'Shopping-list name.',
|
|
163
|
+
},
|
|
164
|
+
items: {
|
|
165
|
+
type: 'array',
|
|
166
|
+
description: 'Requested items to resolve into Oda products.',
|
|
167
|
+
items: {
|
|
168
|
+
type: 'object',
|
|
169
|
+
properties: {
|
|
170
|
+
query: {
|
|
171
|
+
type: 'string',
|
|
172
|
+
description: 'Free-text item query.',
|
|
173
|
+
},
|
|
174
|
+
quantity: {
|
|
175
|
+
type: 'number',
|
|
176
|
+
description: 'Requested quantity.',
|
|
177
|
+
},
|
|
178
|
+
},
|
|
179
|
+
required: ['query', 'quantity'],
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
},
|
|
183
|
+
required: ['name', 'items'],
|
|
184
|
+
}, async (params) => {
|
|
114
185
|
const { plugin } = await ensureLoggedIn();
|
|
115
186
|
const p = params;
|
|
116
187
|
return plugin.buildShoppingList(p.name, p.items);
|
|
117
188
|
});
|
|
118
|
-
|
|
189
|
+
registerTool(api, 'findCheapestDeliverySlot', 'Return the cheapest available delivery slot without booking it.', {
|
|
190
|
+
type: 'object',
|
|
191
|
+
properties: {},
|
|
192
|
+
}, async () => {
|
|
119
193
|
const { plugin } = await ensureLoggedIn();
|
|
120
194
|
return plugin.findCheapestDeliverySlot();
|
|
121
195
|
});
|
|
122
196
|
// ── Cart-mutation tools (disabled by default in manifest) ───────────────
|
|
123
|
-
|
|
197
|
+
registerTool(api, 'addToCart', 'Add a single product to the cart. Requires explicit user confirmation before use.', {
|
|
198
|
+
type: 'object',
|
|
199
|
+
properties: {
|
|
200
|
+
productId: {
|
|
201
|
+
type: 'number',
|
|
202
|
+
description: 'Oda product ID.',
|
|
203
|
+
},
|
|
204
|
+
quantity: {
|
|
205
|
+
type: 'number',
|
|
206
|
+
description: 'Quantity to add.',
|
|
207
|
+
},
|
|
208
|
+
},
|
|
209
|
+
required: ['productId', 'quantity'],
|
|
210
|
+
}, async (params) => {
|
|
124
211
|
const { client } = await ensureLoggedIn();
|
|
125
212
|
const p = params;
|
|
126
213
|
return cartMutationTools.addToCart(client, p.productId, p.quantity);
|
|
127
214
|
});
|
|
128
|
-
|
|
215
|
+
registerTool(api, 'removeFromCart', 'Remove an item from the cart by product ID. Requires explicit user confirmation before use.', {
|
|
216
|
+
type: 'object',
|
|
217
|
+
properties: {
|
|
218
|
+
productId: {
|
|
219
|
+
type: 'number',
|
|
220
|
+
description: 'Oda product ID to remove.',
|
|
221
|
+
},
|
|
222
|
+
},
|
|
223
|
+
required: ['productId'],
|
|
224
|
+
}, async (params) => {
|
|
129
225
|
const { client } = await ensureLoggedIn();
|
|
130
226
|
const p = params;
|
|
131
227
|
return cartMutationTools.removeFromCart(client, p.productId);
|
|
132
228
|
});
|
|
133
|
-
|
|
229
|
+
registerTool(api, 'clearCart', 'Remove all items from the cart. Requires explicit user confirmation before use.', {
|
|
230
|
+
type: 'object',
|
|
231
|
+
properties: {},
|
|
232
|
+
}, async () => {
|
|
134
233
|
const { client } = await ensureLoggedIn();
|
|
135
234
|
return cartMutationTools.clearCart(client);
|
|
136
235
|
});
|
|
137
|
-
|
|
236
|
+
registerTool(api, 'prepareCart', 'Add all items from a shopping list to the cart. Requires explicit user confirmation before use.', {
|
|
237
|
+
type: 'object',
|
|
238
|
+
properties: {
|
|
239
|
+
name: {
|
|
240
|
+
type: 'string',
|
|
241
|
+
description: 'Shopping-list name.',
|
|
242
|
+
},
|
|
243
|
+
items: {
|
|
244
|
+
type: 'array',
|
|
245
|
+
description: 'Resolved products to add to the cart.',
|
|
246
|
+
items: {
|
|
247
|
+
type: 'object',
|
|
248
|
+
properties: {
|
|
249
|
+
productId: {
|
|
250
|
+
type: 'number',
|
|
251
|
+
description: 'Oda product ID.',
|
|
252
|
+
},
|
|
253
|
+
quantity: {
|
|
254
|
+
type: 'number',
|
|
255
|
+
description: 'Quantity to add.',
|
|
256
|
+
},
|
|
257
|
+
},
|
|
258
|
+
required: ['productId', 'quantity'],
|
|
259
|
+
},
|
|
260
|
+
},
|
|
261
|
+
},
|
|
262
|
+
required: ['name', 'items'],
|
|
263
|
+
}, async (params) => {
|
|
138
264
|
const { client } = await ensureLoggedIn();
|
|
139
265
|
return cartMutationTools.prepareCart(client, params);
|
|
140
266
|
});
|
package/dist/entry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.js","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,0CAA4C;AAE5C,wEAA0D;AAC1D,gFAAkE;AAClE,qDAA8D;AAC9D,2CAAmD;
|
|
1
|
+
{"version":3,"file":"entry.js","sourceRoot":"","sources":["../src/entry.ts"],"names":[],"mappings":"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"}
|