openclaw-quiubo 2.6.46 → 2.6.47

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/README.md CHANGED
@@ -95,6 +95,19 @@ channels:
95
95
  | `apiUrl` | No | `https://api.quiubo.io` | API base URL |
96
96
  | `pollIntervalMs` | No | `5000` | Polling fallback interval in ms |
97
97
 
98
+ ### Group context injection
99
+
100
+ The plugin injects group metadata (name, members, E2EE status, scopes) into agent prompts via the `before_prompt_build` hook. This lets agents know who's in the conversation without being told.
101
+
102
+ **Required config** — OpenClaw classifies `before_prompt_build` as a prompt injection hook and blocks it by default. You must explicitly allow it:
103
+
104
+ ```bash
105
+ openclaw config set plugins.entries.openclaw-quiubo.hooks.allowPromptInjection true
106
+ openclaw gateway restart
107
+ ```
108
+
109
+ Without this, the hook silently doesn't register — no error, no warning.
110
+
98
111
  ### Multiple accounts
99
112
 
100
113
  Run the setup wizard again and enter a different Account ID when prompted (e.g., `support-bot`, `sales-bot`). Each account gets its own gateway instance, cursor file, and bot config cache. For full multi-agent isolation (separate workspaces, models, cron jobs), see the **[Multi-Agent Setup guide](./MULTI_AGENT.md)**.
package/dist/index.js CHANGED
@@ -14853,7 +14853,6 @@ function resolveAccountId2(config, agentId) {
14853
14853
  );
14854
14854
  return matched?.match?.accountId ?? "default";
14855
14855
  }
14856
- var DEFAULT_API_URL3 = "https://api.quiubo.chat/v1";
14857
14856
  async function fetchGroupContext(config, sessionKey) {
14858
14857
  const groupId = extractGroupIdFromSessionKey2(sessionKey);
14859
14858
  if (!groupId) return void 0;
@@ -14861,13 +14860,9 @@ async function fetchGroupContext(config, sessionKey) {
14861
14860
  if (cached) return cached;
14862
14861
  const agentId = extractAgentIdFromSessionKey2(sessionKey);
14863
14862
  const accountId = resolveAccountId2(config, agentId);
14864
- const quiuboConfig = config?.channels?.quiubo;
14865
- const accountCfg = quiuboConfig?.accounts?.[accountId];
14866
- if (!accountCfg?.apiKey) return void 0;
14867
- const client = new QuiuboApiClient(
14868
- accountCfg.apiUrl ?? DEFAULT_API_URL3,
14869
- accountCfg.apiKey
14870
- );
14863
+ const client = clients.get(accountId);
14864
+ const accountCfg = accounts.get(accountId);
14865
+ if (!client || !accountCfg) return void 0;
14871
14866
  const [group, { members }, { agents }] = await Promise.all([
14872
14867
  client.getGroup(groupId),
14873
14868
  client.listGroupMembers(groupId),