claudetool: replace timeout parameter with slow_ok boolean

Empirically, the agent doesn't set timeouts long enough,
and doesn't retry on failure.

Give it only one decision to make: Is this maybe a slow command?

If, horror of horrors, your project can't accomplish tasks within the
default timeouts, there's a new command line flag to adjust them.

Co-Authored-By: sketch <hello@sketch.dev>
Change-ID: sc26e3516f28c22d4k
diff --git a/webui/src/web-components/sketch-tool-card.ts b/webui/src/web-components/sketch-tool-card.ts
index 34e9020..33fa050 100644
--- a/webui/src/web-components/sketch-tool-card.ts
+++ b/webui/src/web-components/sketch-tool-card.ts
@@ -385,7 +385,9 @@
   render() {
     const inputData = JSON.parse(this.toolCall?.input || "{}");
     const isBackground = inputData?.background === true;
-    const backgroundIcon = isBackground ? "🔄 " : "";
+    const isSlowOk = inputData?.slow_ok === true;
+    const backgroundIcon = isBackground ? "🥷 " : "";
+    const slowIcon = isSlowOk ? "🐢 " : "";
 
     // Truncate the command if it's too long to display nicely
     const command = inputData?.command || "";
@@ -405,12 +407,12 @@
           class="command-wrapper"
           style="max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"
         >
-          ${backgroundIcon}${displayCommand}
+          ${backgroundIcon}${slowIcon}${displayCommand}
         </div>
       </span>
       <div slot="input" class="input">
         <div class="tool-call-result-container">
-          <pre>${backgroundIcon}${inputData?.command}</pre>
+          <pre>${backgroundIcon}${slowIcon}${inputData?.command}</pre>
         </div>
       </div>
       ${this.toolCall?.result_message?.tool_result