The iOS app currently identifies as clientId=clawdbot-ios when
connecting in node mode. Add this ID to the allowed gateway client
IDs so the handshake schema accepts it.
Also fixes a TS strictness issue in auto-reply status formatting
(parts filter) that caused
> clawdbot@2026.1.20 build /Users/vignesh/clawd/clawdbot-upstream
> tsc -p tsconfig.json && node --import tsx scripts/canvas-a2ui-copy.ts && node --import tsx scripts/copy-hook-metadata.ts && node --import tsx scripts/write-build-info.ts
[copy-hook-metadata] Copied boot-md/HOOK.md
[copy-hook-metadata] Copied command-logger/HOOK.md
[copy-hook-metadata] Copied session-memory/HOOK.md
[copy-hook-metadata] Copied soul-evil/HOOK.md
[copy-hook-metadata] Done to fail.
- Disable Talk mode start on iOS simulator (no audio input)
- Validate audio input format before installing tap to avoid
AVFAudio assertion crashes on misconfigured devices.
Tested:
- Launched app on iOS simulator and tapping Talk no longer crashes
(shows error path instead).
Use the timeout provided on node invoke requests to ensure node
clients always respond with a result.
This prevents gateway-side node.invoke calls from hanging until the
gateway timeout when a node command stalls.
Tests:
- swift test --filter GatewayNodeSessionTests
Record submitted inputs in the editor history so up/down arrow
can recall previous messages.
Adds a small helper to wire submit handling and unit tests for
routing/recording behavior.
No PR yet (per request).
Improve validation error formatting for strict schemas.
In particular, additionalProperties errors now surface the
unexpected property name and where it occurred, which makes
handshake/connect failures easier to debug.
Use SearchableSelectList for /sessions and /agents pickers,
matching the /models picker behavior.
- Session picker: search by session key, display name, or date
- Agent picker: search by agent ID or name
🤖 AI-assisted (Claude)
Tests now verify structure and content preservation rather than
checking for specific ANSI escape codes, which may not be present
in CI environments without TTY/color support.
- Add SearchableSelectList component with fuzzy filtering
- Integrate with /models command for quick model search
- Support up/down navigation while typing
- Uses pi-tui's fuzzyFilter for intelligent matching