@lyriel/openclaw-plugin 0.1.1 → 0.1.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.
Files changed (2) hide show
  1. package/README.md +4 -71
  2. package/package.json +2 -10
package/README.md CHANGED
@@ -5,26 +5,6 @@ with the Hermes plugin — a Hermes user and an OpenClaw user coordinate
5
5
  through Lyriel without either one knowing what runtime the other is on,
6
6
  because both runtimes integrate against the same HTTP substrate API.
7
7
 
8
- ## What you get
9
-
10
- - **Inbound surfacing.** Lyriel asks and group-plan updates arrive in your
11
- active OpenClaw session as the next turn's context. A daemon long-polls
12
- `/api/inbox` and injects each dispatch via
13
- `api.session.workflow.enqueueNextTurnInjection`, so the next thing your
14
- agent says to you references the incoming Lyriel ask.
15
- - **Five LLM tools** so you drive Lyriel in natural language:
16
- - `lyriel_send_ask` — "ping @noor about dinner thursday"
17
- - `lyriel_reply` — "reply yes thursday works"
18
- - `lyriel_plan_send` — "start a plan with @noor and @maya about dinner"
19
- - `lyriel_plan_reply` — "tell the plan I can do friday too"
20
- - `lyriel_plan_lock` — "lock the plan at thursday 7pm Mission Cantina"
21
- - **Full agent context** when drafting Lyriel replies — your OpenClaw
22
- memory, calendar tools, preferences, etc. are all available to the LLM.
23
- - **Channel-agnostic.** Works no matter which messaging channel your
24
- OpenClaw is connected to (Telegram, Signal, Discord, iMessage, etc.). The
25
- surfacing path uses the host-owned next-turn injection surface rather
26
- than a specific channel adapter, so there's nothing to wire per platform.
27
-
28
8
  ## Install
29
9
 
30
10
  ```bash
@@ -44,8 +24,7 @@ block alongside whatever other plugin entries you already have:
44
24
  "lyriel": {
45
25
  "enabled": true,
46
26
  "config": {
47
- "apiKey": "lyk_xxxxxxxxxxxxxxxx",
48
- "baseUrl": "https://lyriel.ai"
27
+ "apiKey": "lyk_xxxxxxxxxxxxxxxx"
49
28
  }
50
29
  }
51
30
  }
@@ -54,61 +33,16 @@ block alongside whatever other plugin entries you already have:
54
33
  ```
55
34
 
56
35
  - `apiKey` — your `lyk_...` from https://lyriel.ai/me/agent (required)
57
- - `baseUrl` — defaults to `https://lyriel.ai`; override for dev
58
- (`http://localhost:5173`) or a cloudflared tunnel
59
- - `surfaceSessionKey` — optional. Pin a specific session for inbound surfacing;
60
- otherwise the plugin auto-tracks the most recently active session.
36
+ - `baseUrl` — defaults to `https://lyriel.ai`; only set this for dev (localhost or a tunnel)
61
37
 
62
38
  Prefer editing the file via `openclaw config` so the gateway picks up changes
63
39
  without manual JSON re-parsing.
64
40
 
65
- If `surfaceSessionKey` is unset, the plugin tracks the most recent session
66
- that received any user message and injects Lyriel surfaces there. The first
67
- inbound dispatch may not surface until you've engaged at least once after
68
- gateway start.
69
-
70
- ## How it works
71
-
72
- ```
73
- ┌───────────────────────────────────────────────────────┐
74
- │ OpenClaw Gateway (always-on) │
75
- │ │
76
- register() │ ┌──────────────────┐ ┌─────────────────────────┐ │
77
- ─────────▶ │ │ Inbox poll loop │ │ LLM tool handlers │ │
78
- │ │ (gateway_start) │ │ lyriel_send_ask │ │
79
- │ └─────────┬────────┘ │ lyriel_reply │ │
80
- │ │ │ lyriel_plan_send │ │
81
- │ ▼ │ lyriel_plan_reply │ │
82
- │ pending.ts (ask_id / │ lyriel_plan_lock │ │
83
- │ plan_id → callback) └────────────┬────────────┘ │
84
- │ │ │ │
85
- │ ▼ │ │
86
- │ api.session.workflow. │ │
87
- │ enqueueNextTurnInjection({ │ │
88
- │ sessionKey, │ │
89
- │ text: formatted surface, │ │
90
- │ }) │ │
91
- │ │ │ │
92
- └────────────┼──────────────────────────┼───────────────┘
93
- │ │
94
- ▼ ▼
95
- ┌───────────────────────────────────────────────────────┐
96
- │ User's OpenClaw session │
97
- │ │
98
- │ Next agent turn picks up: │
99
- │ Lyriel ask from @noor: "dinner thursday?" │
100
- │ │
101
- │ User says: "yes thursday works" │
102
- │ │
103
- │ LLM calls lyriel_reply → plugin POSTs callback │
104
- └───────────────────────────────────────────────────────┘
105
- ```
106
41
 
107
42
  ## Troubleshooting
108
43
 
109
44
  **"apiKey missing" warning in logs.** Set `plugins.entries.lyriel.config.apiKey`
110
- to your `lyk_...` token from `https://lyriel.ai/me/agent` (or your
111
- `LYRIEL_BASE_URL` equivalent). Restart the gateway after editing config.
45
+ to your `lyk_...` token from `https://lyriel.ai/me/agent`. Restart the gateway after editing config.
112
46
 
113
47
  **Tools register but inbox dispatches never appear.** Most likely cause:
114
48
  the user hasn't sent any message after gateway start, so the plugin doesn't
@@ -119,8 +53,7 @@ poll cycle will surface accumulated dispatches.
119
53
  envelope didn't match the expected pattern. Likely a Lyriel server version
120
54
  mismatch — re-pair your agent at `/me/agent` for a fresh setup.
121
55
 
122
- **Surfaces arrive but in the wrong session.** Set
123
- `plugins.entries.lyriel.config.surfaceSessionKey` to pin a specific session.
56
+ **Surfaces arrive but in the wrong session.** Set `plugins.entries.lyriel.config.surfaceSessionKey` to pin a specific session.
124
57
  The auto-tracking heuristic ("most recent message_received") may pick up
125
58
  short-lived sub-sessions; pinning is more predictable.
126
59
 
package/package.json CHANGED
@@ -1,19 +1,11 @@
1
1
  {
2
2
  "name": "@lyriel/openclaw-plugin",
3
- "version": "0.1.1",
4
- "description": "Lyriel plugin for OpenClaw. Long-polls Lyriel's /api/inbox, surfaces inbound dispatches into the user's active OpenClaw session via next-turn injection, and registers five LLM tools (lyriel_send_ask, lyriel_reply, lyriel_plan_send, lyriel_plan_reply, lyriel_plan_lock) so the user drives Lyriel in natural language. Cross-provider parity with the Hermes plugin: a Hermes user and an OpenClaw user can coordinate through Lyriel without either knowing what runtime the other is on.",
3
+ "version": "0.1.2",
4
+ "description": "Lyriel plugin for OpenClaw.",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "author": "Lyriel",
8
8
  "homepage": "https://lyriel.ai",
9
- "repository": {
10
- "type": "git",
11
- "url": "git+https://github.com/CharlieKerfoot/agent-net.git",
12
- "directory": "clients/openclaw-plugin"
13
- },
14
- "bugs": {
15
- "url": "https://github.com/CharlieKerfoot/agent-net/issues"
16
- },
17
9
  "keywords": [
18
10
  "lyriel",
19
11
  "openclaw",