osborn 0.9.104 → 0.9.105
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/dist/claude-llm.js +11 -0
- package/package.json +1 -1
package/dist/claude-llm.js
CHANGED
|
@@ -990,6 +990,17 @@ class ClaudeLLMStream extends llm.LLMStream {
|
|
|
990
990
|
loadAllSkills(this.#opts.sessionBaseDir || this.#opts.workingDirectory || process.cwd()),
|
|
991
991
|
].filter(Boolean).join('\n\n'),
|
|
992
992
|
canUseTool: async (toolName, input, _options) => {
|
|
993
|
+
// Auto-approve Bash calls to the agent's OWN local API (/canvas,
|
|
994
|
+
// /tts) — how the agent SPEAKS into a meeting. A spoken reply must
|
|
995
|
+
// never wait on a permission dialog. Localhost-only, own endpoints
|
|
996
|
+
// only, no shell chaining — not a general curl allowance.
|
|
997
|
+
if (toolName === 'Bash') {
|
|
998
|
+
const cmd = String(input?.command || '');
|
|
999
|
+
if (/^\s*curl\b[^;&|]*https?:\/\/(localhost|127\.0\.0\.1):\d+\/(canvas|tts)\b/.test(cmd) && !/[;&|]/.test(cmd)) {
|
|
1000
|
+
console.log(`✅ Auto-approved Bash → own API (canvas/tts speak path)`);
|
|
1001
|
+
return { behavior: 'allow', updatedInput: input };
|
|
1002
|
+
}
|
|
1003
|
+
}
|
|
993
1004
|
// Auto-approve writes to session workspace (but block spec.md and library/ — fast brain manages those)
|
|
994
1005
|
if (toolName === 'Write' || toolName === 'Edit') {
|
|
995
1006
|
const filePath = String(input?.file_path || '');
|