@wowok/skills 1.1.4 → 1.1.6

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.
@@ -19,12 +19,35 @@ always: true
19
19
 
20
20
  ## 1. Core Principles
21
21
 
22
- ### 1.1 Security & Safety
22
+ ### 1.1 Object Reuse Principle (General Best Practice)
23
+
24
+ **ALWAYS prefer reusing existing objects over creating new ones** — this enables centralized permission control and reduces management overhead.
25
+
26
+ | Object Type | Reuse Strategy | Why |
27
+ |-------------|----------------|-----|
28
+ | **Permission** | **Strongly recommended** — ask user for existing Permission name/ID | Centralized permission control across all services |
29
+ | Machine | Reuse if workflow fits | Save design time for similar processes |
30
+ | Guards | Reuse if validation logic matches | Avoid redundant rules |
31
+ | Contact | Reuse existing customer service Contact | Single point of management |
32
+ | Arbitration | Always reuse existing Arbitration services | Customers choose from established arbiters |
33
+
34
+ **How to Reuse**:
35
+ - Ask user: *"Do you have an existing object you'd like to reuse? Provide the name or ID."*
36
+ - Use string value `"<name_or_id>"` to reference existing objects
37
+ - Use object shape `{ name?, ... }` only when creating new
38
+
39
+ **CREATE vs MODIFY Pattern**:
40
+ | Format | Meaning | Use When |
41
+ |--------|---------|----------|
42
+ | String `"<name>"` or `"<0x...>"` | **REUSE** existing | Object already exists |
43
+ | Object `{ name?, ... }` | **CREATE** new | Need new object |
44
+
45
+ ### 1.2 Security & Safety
23
46
 
24
47
  - **Hot Wallet Usage**: WoWok never exposes private keys. Treat it as a spending account for transfers, receipts, and commerce. Flag large transactions for explicit user confirmation.
25
48
  - **Amount-Sensitive Operations**: Any token transfer, payment, or reward distribution MUST be verbally confirmed with the user before execution. Use `Payment` objects for commercial transfers when possible (they offer Guard validation and purpose tracking).
26
49
 
27
- ### 1.2 LOCAL vs ON-CHAIN
50
+ ### 1.3 LOCAL vs ON-CHAIN
28
51
 
29
52
  | Type | Tools | Gas | Confirmation |
30
53
  |------|-------|-----|--------------|
@@ -33,7 +56,7 @@ always: true
33
56
  | **QUERY** | `query_toolkit`, `onchain_table_data`, `onchain_events`, `guard2file`, `machineNode2file` | Read-only | Not needed |
34
57
  | **ENCRYPTED** | `messenger_operation` (watch/send messages) | Local encryption | Not needed |
35
58
 
36
- ### 1.3 Default Account
59
+ ### 1.4 Default Account
37
60
 
38
61
  Empty string `""` means the default account. Always use `""` when the user does not specify an account.
39
62
 
@@ -188,7 +211,7 @@ Use `Payment` objects for commercial transfers when possible — they offer Guar
188
211
 
189
212
  **Tool**: `wowok_buildin_info` with `info: "permissions"`, `info: "guard_instructions"`, or `info: "value types"`.
190
213
 
191
- ### 9.1 Value Types — Built-in Type Annotation System
214
+ ### 8.1 Value Types — Built-in Type Annotation System
192
215
 
193
216
  WoWok's value type system is the foundation for type-safe data declarations used across Guards, records, and query instructions. Every data field in a Guard table or Guard submission carries a `value_type` annotation, ensuring the protocol can validate and process data correctly.
194
217
 
@@ -239,4 +262,4 @@ For complex objects with many fields (Service, Machine), use **incremental build
239
262
 
240
263
  **Query Schema**: `schema_query({ action: "get", name: "<schema_name>" })`
241
264
 
242
- **Related Skills**: [wowok-tools](../wowok-tools/SKILL.md) | [wowok-guard](../wowok-guard/SKILL.md) | [wowok-machine](../wowok-machine/SKILL.md)
265
+ **Related Skills**: [wowok-tools](../wowok-tools/SKILL.md) | [wowok-guard](../wowok-guard/SKILL.md) | [wowok-machine](../wowok-machine/SKILL.md) | [wowok-order](../wowok-order/SKILL.md) | [wowok-provider](../wowok-provider/SKILL.md) | [wowok-arbitrator](../wowok-arbitrator/SKILL.md) | [wowok-messenger](../wowok-messenger/SKILL.md)
@@ -18,7 +18,7 @@ always: true
18
18
 
19
19
  Quick reference for WoWok MCP tools — patterns, pitfalls, and troubleshooting.
20
20
 
21
- > **Domain Skills**: [wowok-guard](../wowok-guard/SKILL.md) (validation logic), [wowok-messenger](../wowok-messenger/SKILL.md) (encrypted messaging), [wowok-machine](../wowok-machine/SKILL.md) (workflows)
21
+ > **Domain Skills**: [wowok-guard](../wowok-guard/SKILL.md) (validation logic), [wowok-messenger](../wowok-messenger/SKILL.md) (encrypted messaging), [wowok-machine](../wowok-machine/SKILL.md) (workflows), [wowok-safety](../wowok-safety/SKILL.md) (safety & naming)
22
22
  > **Business Skills**: [wowok-order](../wowok-order/SKILL.md) (customer), [wowok-provider](../wowok-provider/SKILL.md) (merchant), [wowok-arbitrator](../wowok-arbitrator/SKILL.md) (dispute resolution)
23
23
 
24
24
  ---
@@ -42,9 +42,11 @@ Quick reference for WoWok MCP tools — patterns, pitfalls, and troubleshooting.
42
42
 
43
43
  ### CREATE vs MODIFY Pattern
44
44
 
45
+ See [wowok-safety](../wowok-safety/SKILL.md) for complete object reuse principles.
46
+
45
47
  | Format | Meaning | Example |
46
48
  |--------|---------|---------|
47
- | **String** | Reference EXISTING | `"my-service"` or `"0x1234..."` |
49
+ | **String** | Reference EXISTING (reuse) | `"my-service"` or `"0x1234..."` |
48
50
  | **Object** | CREATE NEW | `{ name: "my-service", permission: "..." }` |
49
51
 
50
52
  ---