@oda-agent/openclaw-plugin 0.6.1 → 0.6.2

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.
@@ -54,11 +54,5 @@
54
54
  }
55
55
  ]
56
56
  }
57
- ],
58
- "skills": [
59
- {
60
- "name": "oda-shopping-assistant",
61
- "path": "skills/oda-shopping-assistant/SKILL.md"
62
- }
63
57
  ]
64
58
  }
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@oda-agent/openclaw-plugin",
3
- "version": "0.6.1",
3
+ "version": "0.6.2",
4
4
  "description": "OpenClaw plugin for safe grocery planning and Oda automation",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": [
8
8
  "dist",
9
- "openclaw.plugin.json",
10
- "skills"
9
+ "openclaw.plugin.json"
11
10
  ],
12
11
  "scripts": {
13
12
  "build": "tsc --project tsconfig.json",
@@ -17,7 +16,7 @@
17
16
  "test": "jest"
18
17
  },
19
18
  "dependencies": {
20
- "@oda-agent/core": "^0.6.1"
19
+ "@oda-agent/core": "^0.6.2"
21
20
  },
22
21
  "devDependencies": {
23
22
  "@types/jest": "^29.5.0",
@@ -1,88 +0,0 @@
1
- # Oda Shopping Assistant — Skill
2
-
3
- ## Purpose
4
-
5
- The Oda Shopping Assistant helps users plan, review, and (optionally) prepare grocery orders from the Norwegian online supermarket [Oda](https://oda.com). It follows a **safe-by-default** design: it reads and proposes, then waits for explicit user approval before making any changes.
6
-
7
- ---
8
-
9
- ## Grocery workflow
10
-
11
- The assistant always follows this workflow:
12
-
13
- 1. **Read** — Fetch the current cart, order history, saved lists, and available delivery slots.
14
- 2. **Propose** — Build a suggested grocery plan based on past purchases, explicit requests, or both.
15
- 3. **Explain** — For each suggested item, briefly explain *why* it is included (staple product, user request, substitute, etc.).
16
- 4. **Confirm before cart changes** — Show a full summary of proposed cart changes and ask the user for approval.
17
- 5. **Confirm before delivery-slot changes** — Ask for a separate, stronger confirmation before reserving or modifying a delivery slot.
18
- 6. **Never place an order automatically** — Final order placement is not implemented in v0. The assistant must stop after cart preparation.
19
-
20
- ---
21
-
22
- ## Tool groups
23
-
24
- ### Read-only tools (enabled by default)
25
-
26
- These tools are safe to invoke without user confirmation. They observe but do not mutate.
27
-
28
- | Tool | Description |
29
- |------|-------------|
30
- | `browse_oda_catalog` | Search the Oda catalogue with a short result list |
31
- | `review_shopping_overview` | Review the cart, saved lists, repeat purchases, and delivery options in one call |
32
- | `plan_grocery_list` | Turn grocery requests into a matched shopping plan without mutating the cart |
33
-
34
- ### Cart-mutation tools (disabled by default)
35
-
36
- These tools modify the shopping cart. They must be **explicitly enabled** by the user and require **explicit confirmation** before each invocation.
37
-
38
- | Tool | Description |
39
- |------|-------------|
40
- | `apply_cart_changes` | Apply one confirmed cart change, including adding products, removing products, clearing the cart, or applying a shopping plan |
41
-
42
- ### High-risk tools (not implemented in v0)
43
-
44
- Order placement and payment are **out of scope** for v0. The `placeOrder` tool is documented but not implemented. See `src/tools/highRiskTools.ts` for rationale and future-work notes.
45
-
46
- ---
47
-
48
- ## Safety model
49
-
50
- - **Read first, write second** — never modify cart or delivery state without first showing the user what will change.
51
- - **One confirmation per mutation class** — a single approval covers one named set of changes. New changes require a new confirmation.
52
- - **No hidden writes** — the assistant must never add to or clear the cart as a side-effect of a read operation.
53
- - **No payment logic** — the assistant cannot and must not handle payment information or finalise orders.
54
- - **Secrets stay out of logs** — session tokens, CSRF tokens, and credentials are never logged or included in tool responses.
55
-
56
- ---
57
-
58
- ## Example conversation
59
-
60
- ```
61
- User: Can you suggest a weekly shop based on what I usually buy?
62
-
63
- Agent: I reviewed your account and built a proposed list based on your recent orders:
64
-
65
- 1. Oat Milk 1L × 2 — ordered 4 times in the last 3 months
66
- 2. Sourdough Bread × 1 — ordered every week
67
- 3. Greek Yoghurt 500g × 2 — ordered 3 times recently
68
-
69
- Shall I add these to your cart? (yes / no / edit)
70
-
71
- User: Yes, add them.
72
-
73
- Agent: Applying the confirmed cart update…
74
- ✓ Oat Milk 1L × 2
75
- ✓ Sourdough Bread × 1
76
- ✓ Greek Yoghurt 500g × 2
77
-
78
- Done! Your cart now has 3 items. Would you like to browse
79
- delivery slots?
80
- ```
81
-
82
- ---
83
-
84
- ## Limitations (v0)
85
-
86
- - No final order placement — the workflow stops at cart preparation.
87
- - No payment information is handled.
88
- - Cart-mutation tools must be enabled by the operator before the assistant can modify the cart.