@2en/clawly-plugins 1.24.3 → 1.24.5

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/config-setup.ts CHANGED
@@ -40,6 +40,8 @@ function toPC(api: PluginApi): ConfigPluginConfig {
40
40
  return (api.pluginConfig ?? {}) as ConfigPluginConfig
41
41
  }
42
42
 
43
+ const DEFAULT_MODEL = `${PROVIDER_NAME}/anthropic/claude-sonnet-4.6`
44
+
43
45
  // ---------------------------------------------------------------------------
44
46
  // Domain helpers — each returns true when config was mutated
45
47
  // ---------------------------------------------------------------------------
@@ -79,8 +81,8 @@ export function patchAgent(config: Record<string, unknown>, pc: ConfigPluginConf
79
81
  }
80
82
 
81
83
  // model: set-if-missing
82
- if (pc.defaultModel && !defaults.model) {
83
- defaults.model = {primary: `${PROVIDER_NAME}/${pc.defaultModel}`}
84
+ if (!defaults.model) {
85
+ defaults.model = {primary: DEFAULT_MODEL}
84
86
  dirty = true
85
87
  }
86
88
 
@@ -136,9 +138,11 @@ export function patchGateway(config: Record<string, unknown>): boolean {
136
138
  dirty = true
137
139
  }
138
140
 
139
- const desiredProxies = ['0.0.0.0/0']
140
- if (JSON.stringify(gateway.trustedProxies) !== JSON.stringify(desiredProxies)) {
141
- gateway.trustedProxies = desiredProxies
141
+ // trustedProxies: remove if present.
142
+ // OpenClaw v2026.2.19 hardened resolveClientIp to fail-closed, making
143
+ // trustedProxies: ['0.0.0.0/0'] actively break CLI auto-pair.
144
+ if (gateway.trustedProxies != null) {
145
+ delete gateway.trustedProxies
142
146
  dirty = true
143
147
  }
144
148
 
@@ -233,8 +237,8 @@ export function patchTts(config: Record<string, unknown>, pc: ConfigPluginConfig
233
237
  tts.provider = 'elevenlabs'
234
238
  dirty = true
235
239
  }
236
- if (tts.summaryModel === undefined && pc.defaultModel) {
237
- tts.summaryModel = `${PROVIDER_NAME}/${pc.defaultModel}`
240
+ if (tts.summaryModel === undefined) {
241
+ tts.summaryModel = DEFAULT_MODEL
238
242
  dirty = true
239
243
  }
240
244
  if (tts.modelOverrides === undefined) {
package/outbound.ts CHANGED
@@ -85,6 +85,17 @@ export function registerOutboundMethods(api: PluginApi) {
85
85
  const dest = outboundFilePath(rawPath)
86
86
 
87
87
  if (!(await fileExists(dest))) {
88
+ // Fallback: TTS writes directly to /tmp/openclaw/ and the tool_result_persist hook
89
+ // only fires for agent tool calls, not tts.convert RPC calls. Read the source file
90
+ // directly if it lives in the known-safe TTS temp directory.
91
+ if (rawPath.startsWith('/tmp/openclaw/') && (await fileExists(rawPath))) {
92
+ const buffer = await fsp.readFile(rawPath)
93
+ api.logger.info(
94
+ `clawly.file.getOutbound: served from source ${rawPath} (${buffer.length} bytes)`,
95
+ )
96
+ respond(true, {base64: buffer.toString('base64')})
97
+ return
98
+ }
88
99
  api.logger.warn(`outbound: file not found: ${rawPath} ${dest}`)
89
100
  respond(false, undefined, {code: 'not_found', message: 'outbound file not found'})
90
101
  return
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@2en/clawly-plugins",
3
- "version": "1.24.3",
3
+ "version": "1.24.5",
4
4
  "module": "index.ts",
5
5
  "type": "module",
6
6
  "repository": {