mnemospark 0.1.22 → 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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "mnemospark",
3
3
  "name": "mnemospark",
4
- "version": "0.1.22",
4
+ "version": "0.2.0",
5
5
  "description": "mnemospark is an OpenClaw plugin that gives agentic systems instant, secure access to cloud storage, compute, and proprietary datasets paid via x402 with USDC on Base. Wallet and go.",
6
6
  "configSchema": {
7
7
  "type": "object",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mnemospark",
3
- "version": "0.1.22",
3
+ "version": "0.2.0",
4
4
  "description": "mnemospark is an OpenClaw plugin that gives agentic systems instant, secure access to cloud storage, compute, and proprietary datasets paid via x402 with USDC on Base. Wallet and go.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -9,26 +9,44 @@ Use this skill for mnemospark cloud backup/storage workflows, async operation tr
9
9
  - User intent: backup, price-storage, upload, ls, download, delete, op-status
10
10
  - Wallet context (`--wallet-address`) where required
11
11
  - Optional selector context (`--object-key` or `--name`, plus `--latest` / `--at`)
12
+ - Optional async orchestration context for long-running work:
13
+ - `--async`
14
+ - `--orchestrator <inline|subagent>` (default async mode: `inline`)
15
+ - `--timeout-seconds <n>` (valid only with `--async --orchestrator subagent`)
12
16
 
13
17
  ## Execution rules
14
18
 
15
19
  1. Validate required args before execution.
16
- 2. Prefer `--async` for long-running `upload` and `download`.
17
- 3. Return `operation-id` immediately for async commands.
18
- 4. Poll with `/mnemospark-cloud op-status --operation-id <id>` until terminal status.
19
- 5. Use SQLite (`state.db`) as source of truth; use JSONL streams for correlation and audit context.
20
- 6. On ambiguity with `--name`, require `--latest` or `--at`.
21
- 7. On SQLite unavailability, report graceful fallback and continue with JSONL + legacy logs.
20
+ 2. For long-running `backup`/`upload`/`download`, prefer `--async`.
21
+ 3. Use `--orchestrator subagent` when explicit subagent session tracking/cancel support is required.
22
+ 4. If timeout control is needed, require `--timeout-seconds <n>` with `--orchestrator subagent`.
23
+ 5. Return `operation-id` immediately for async commands.
24
+ 6. Poll with `/mnemospark_cloud op-status --operation-id <id>` until terminal status.
25
+ 7. Use `/mnemospark_cloud op-status --operation-id <id> --cancel` for subagent cancellation.
26
+ 8. Use SQLite (`state.db`) as source of truth; use JSONL streams for correlation and audit context.
27
+ 9. On ambiguity with `--name`, require `--latest` or `--at`.
28
+ 10. On SQLite unavailability, report graceful fallback and continue with JSONL + legacy logs.
22
29
 
23
30
  ## Command catalog
24
31
 
25
- - `/mnemospark-cloud backup <file|directory> [--name <friendly-name>]`
26
- - `/mnemospark-cloud price-storage --wallet-address <addr> --object-id <id> --object-id-hash <hash> --gb <gb> --provider <provider> --region <region>`
27
- - `/mnemospark-cloud upload --quote-id <quote-id> --wallet-address <addr> --object-id <id> --object-id-hash <hash> [--name <friendly-name>] [--async]`
28
- - `/mnemospark-cloud ls --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>]`
29
- - `/mnemospark-cloud download --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>] [--async]`
30
- - `/mnemospark-cloud delete --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>]`
31
- - `/mnemospark-cloud op-status --operation-id <id>`
32
+ - `/mnemospark_cloud backup <file|directory> [--name <friendly-name>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
33
+ - `/mnemospark_cloud price-storage --wallet-address <addr> --object-id <id> --object-id-hash <hash> --gb <gb> --provider <provider> --region <region>`
34
+ - `/mnemospark_cloud upload --quote-id <quote-id> --wallet-address <addr> --object-id <id> --object-id-hash <hash> [--name <friendly-name>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
35
+ - `/mnemospark_cloud ls --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>]`
36
+ - `/mnemospark_cloud download --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
37
+ - `/mnemospark_cloud delete --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>]`
38
+ - `/mnemospark_cloud op-status --operation-id <id> [--cancel]`
39
+
40
+ ## Async quick examples
41
+
42
+ - Start async with subagent orchestration:
43
+ - `/mnemospark_cloud upload ... --async --orchestrator subagent`
44
+ - Start async with timeout:
45
+ - `/mnemospark_cloud download ... --async --orchestrator subagent --timeout-seconds 900`
46
+ - Check status:
47
+ - `/mnemospark_cloud op-status --operation-id <id>`
48
+ - Cancel subagent operation:
49
+ - `/mnemospark_cloud op-status --operation-id <id> --cancel`
32
50
 
33
51
  ## References
34
52
 
@@ -1,10 +1,13 @@
1
1
  # mnemospark Commands Reference
2
2
 
3
- ## `/mnemospark-cloud`
3
+ ## `/mnemospark_cloud`
4
4
 
5
5
  ### Backup
6
6
 
7
- `backup <file|directory> [--name <friendly-name>]`
7
+ `backup <file|directory> [--name <friendly-name>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
8
+
9
+ - Purpose: create a local tar+gzip backup artifact and index metadata.
10
+ - `--timeout-seconds <n>` only applies when `--async --orchestrator subagent`.
8
11
 
9
12
  ### Price storage quote
10
13
 
@@ -12,7 +15,10 @@
12
15
 
13
16
  ### Upload
14
17
 
15
- `upload --quote-id <quote-id> --wallet-address <addr> --object-id <id> --object-id-hash <hash> [--name <friendly-name>] [--async]`
18
+ `upload --quote-id <quote-id> --wallet-address <addr> --object-id <id> --object-id-hash <hash> [--name <friendly-name>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
19
+
20
+ - Purpose: upload encrypted object for a valid quote.
21
+ - `--timeout-seconds <n>` only applies when `--async --orchestrator subagent`.
16
22
 
17
23
  ### List
18
24
 
@@ -20,7 +26,10 @@
20
26
 
21
27
  ### Download
22
28
 
23
- `download --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>] [--async]`
29
+ `download --wallet-address <addr> [--object-key <object-key> | --name <friendly-name>] [--latest|--at <timestamp>] [--async] [--orchestrator <inline|subagent>] [--timeout-seconds <n>]`
30
+
31
+ - Purpose: download object content to local filesystem.
32
+ - `--timeout-seconds <n>` only applies when `--async --orchestrator subagent`.
24
33
 
25
34
  ### Delete
26
35
 
@@ -28,7 +37,31 @@
28
37
 
29
38
  ### Operation status
30
39
 
31
- `op-status --operation-id <id>`
40
+ `op-status --operation-id <id> [--cancel]`
41
+
42
+ - `--cancel` requests cancellation for subagent-orchestrated operations.
43
+ - Cancellation is idempotent and safe to call repeatedly.
44
+
45
+ ## Async orchestration flags (long-running commands only)
46
+
47
+ Applies to `backup`, `upload`, `download`.
48
+
49
+ - `--async`
50
+ - Run in background and return immediately with `operation-id`.
51
+ - `--orchestrator <inline|subagent>`
52
+ - Select async execution mode.
53
+ - Current default when omitted with `--async`: `inline`.
54
+ - Use `subagent` for explicit subagent session metadata and cancel controls.
55
+ - `--timeout-seconds <n>`
56
+ - Positive integer timeout in seconds.
57
+ - Valid only with `--async --orchestrator subagent`.
58
+
59
+ ## Async examples
60
+
61
+ - `/mnemospark_cloud upload ... --async --orchestrator subagent`
62
+ - `/mnemospark_cloud download ... --async --orchestrator subagent --timeout-seconds 900`
63
+ - `/mnemospark_cloud op-status --operation-id <id>`
64
+ - `/mnemospark_cloud op-status --operation-id <id> --cancel`
32
65
 
33
66
  ## Name selector rules
34
67
 
@@ -33,6 +33,46 @@ Cross-stream troubleshooting should correlate by:
33
33
  - `object_id`
34
34
  - `object_key`
35
35
 
36
+ ## Operation lifecycle status values
37
+
38
+ `operations.status` values used by async orchestration:
39
+
40
+ - `started`
41
+ - `running`
42
+ - `succeeded`
43
+ - `failed`
44
+ - `cancelled`
45
+ - `timed_out`
46
+
47
+ Common async terminal error codes:
48
+
49
+ - `ASYNC_FAILED`
50
+ - `ASYNC_EXCEPTION`
51
+ - `ASYNC_CANCELLED`
52
+ - `ASYNC_TIMEOUT`
53
+ - `ASYNC_DISPATCH_FAILED`
54
+
55
+ ## Orchestration metadata in operations
56
+
57
+ For async runs, `operations` may include:
58
+
59
+ - `trace_id`
60
+ - `orchestrator` (`inline` or `subagent`)
61
+ - `subagent_session_id`
62
+ - `timeout_seconds`
63
+ - `cancel_requested_at`
64
+
65
+ ## Operation lifecycle JSONL events
66
+
67
+ Operation lifecycle events emitted to `events.jsonl` and `proxy-events.jsonl`:
68
+
69
+ - `operation.dispatched`
70
+ - `operation.progress`
71
+ - `operation.cancel.requested`
72
+ - `operation.cancelled`
73
+ - `operation.timed_out`
74
+ - `operation.completed`
75
+
36
76
  ## Quick correlation command
37
77
 
38
78
  ```bash
@@ -2,10 +2,13 @@
2
2
 
3
3
  ## Async workflow checks
4
4
 
5
- 1. Start with `--async` for upload/download.
6
- 2. Capture `operation-id`.
7
- 3. Query: `/mnemospark-cloud op-status --operation-id <id>`.
8
- 4. Correlate with `events.jsonl` and `proxy-events.jsonl`.
5
+ 1. Start with `--async` for backup/upload/download.
6
+ 2. If explicit session lifecycle control is needed, add `--orchestrator subagent`.
7
+ 3. If timeout control is needed, add `--timeout-seconds <n>` with `--orchestrator subagent`.
8
+ 4. Capture `operation-id`.
9
+ 5. Query: `/mnemospark_cloud op-status --operation-id <id>`.
10
+ 6. If needed, request cancel: `/mnemospark_cloud op-status --operation-id <id> --cancel`.
11
+ 7. Correlate with `events.jsonl` and `proxy-events.jsonl`.
9
12
 
10
13
  ## One-step correlation debugger
11
14
 
@@ -25,6 +28,15 @@ If you omit `<operation-id>`, the latest operation from SQLite is used:
25
28
 
26
29
  - `Operation not found: <id>`
27
30
  - Check SQLite health or `MNEMOSPARK_DISABLE_SQLITE`.
31
+ - `Cannot build storage object: invalid async flags`
32
+ - `--orchestrator`/`--timeout-seconds` require `--async`.
33
+ - `--timeout-seconds` requires `--orchestrator subagent`.
34
+ - `error-code: ASYNC_DISPATCH_FAILED`
35
+ - Subagent dispatch could not start; inspect recent operation events.
36
+ - `error-code: ASYNC_TIMEOUT`
37
+ - Operation exceeded timeout; increase `--timeout-seconds` or retry without timeout.
38
+ - `error-code: ASYNC_CANCELLED`
39
+ - Operation was cancelled through `op-status --cancel`.
28
40
  - Name ambiguity for `--name`
29
41
  - Re-run with `--latest` or `--at <timestamp>`.
30
42
  - Repeated settle/upload mismatch