@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 +11 -7
- package/outbound.ts +11 -0
- package/package.json +1 -1
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 (
|
|
83
|
-
defaults.model = {primary:
|
|
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
|
-
|
|
140
|
-
|
|
141
|
-
|
|
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
|
|
237
|
-
tts.summaryModel =
|
|
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
|