@efengx/openclaw-channel-dragon 0.5.24 → 0.5.25

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.
@@ -262,16 +262,27 @@ export class ChannelComponent {
262
262
  logger?.error?.(`[Dragon Plugin] Failed to read real error from session file: ${fsErr}`);
263
263
  }
264
264
  }
265
+ // Check for insufficient spending cap/quota error and provide a friendly Chinese message
266
+ const lowerError = resolvedErrorMessage.toLowerCase();
267
+ const isSpendCapExceeded = lowerError.includes("spending cap") ||
268
+ lowerError.includes("spend cap") ||
269
+ lowerError.includes("resource_exhausted") ||
270
+ lowerError.includes("quota exceeded") ||
271
+ lowerError.includes("exceeded its monthly spending cap");
272
+ let friendlyMessage = `⚠️ OpenClaw Error: ${resolvedErrorMessage}`;
273
+ if (isSpendCapExceeded) {
274
+ friendlyMessage = "⚠️ 您的 Google Gemini API Key 已达到月度限额(Spending Cap)或余额不足,请前往 AI Studio (https://aistudio.google.com/) 调整限制或更新支付信息。";
275
+ }
265
276
  // Report the actual failure via progress and reply
266
277
  await progress({
267
278
  kind: 'assistant',
268
279
  phase: 'error',
269
280
  status: 'failed',
270
281
  title: '生成回复失败',
271
- detail: resolvedErrorMessage,
282
+ detail: isSpendCapExceeded ? "大模型账户额度或余额不足" : resolvedErrorMessage,
272
283
  });
273
284
  await this.telemetry.reportReply({
274
- content: `⚠️ OpenClaw Error: ${resolvedErrorMessage}`,
285
+ content: friendlyMessage,
275
286
  sessionId,
276
287
  source: "telemetry_deliver",
277
288
  msgId: replyMsgId,
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const dragonChannelPluginVersion = "0.5.24";
1
+ export declare const dragonChannelPluginVersion = "0.5.25";
package/dist/version.js CHANGED
@@ -1 +1 @@
1
- export const dragonChannelPluginVersion = "0.5.24";
1
+ export const dragonChannelPluginVersion = "0.5.25";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@efengx/openclaw-channel-dragon",
3
- "version": "0.5.24",
3
+ "version": "0.5.25",
4
4
  "description": "Dragon workbench channel for OpenClaw",
5
5
  "author": "feng xiang <ofengx@gmail.com>",
6
6
  "type": "module",