Manuel Jiménez Torres
7200dabfb2
feat(android): open app when tapping foreground service notification
...
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 18:05:26 +01:00
Peter Steinberger
246adaa119
chore: rename project to clawdbot
2026-01-04 14:38:51 +00:00
Peter Steinberger
71fdf46f18
fix(android): refresh hello on sms permission grant
2026-01-04 13:59:05 +01:00
Peter Steinberger
0d56a73118
fix(android): add sms permission flow and tests
2026-01-04 13:59:05 +01:00
Vasanth Rao Naik Sabavat
1318276105
feat(android): add SMS sending capability to Android node
...
Add sms.send command to allow sending text messages via the paired Android device.
Changes:
- Add SmsManager class to handle SMS sending via Android SmsManager API
- Add ClawdisSmsCommand enum and Sms capability to protocol constants
- Wire sms.send command into NodeRuntime invoke handler
- Add SEND_SMS permission to AndroidManifest.xml
- Advertise sms capability when SEND_SMS permission is granted
The SMS capability is only advertised when the user has granted SEND_SMS
permission. Messages longer than 160 chars are automatically split into
multipart messages.
2026-01-04 13:58:05 +01:00
Cash Williams
12186e14a9
fix(android): handle unreachable gateway gracefully
...
Previously, if the gateway was unreachable (wrong IP, offline, etc.),
the Android app would crash with an unhandled socket exception.
Changes:
- Wrap socket.connect() in try/catch to handle connection failures
- Return PairResult with error message instead of crashing
- Display actual error message in status text instead of generic 'pairing required'
This gives users useful feedback like 'Connection refused' or
'Network is unreachable' instead of a crash.
2026-01-04 01:44:43 +01:00
Peter Steinberger
e1dd764504
feat: add node location support
2026-01-04 00:54:44 +01:00
Peter Steinberger
be3da5b856
fix: update protocol models and android parsing
2026-01-03 15:04:24 +00:00
Peter Steinberger
6e16c0699a
feat: centralize tool display metadata
2026-01-03 13:18:27 +01:00
Peter Steinberger
7165c8a7e5
refactor: rename bundle identifiers to com.clawdis
2026-01-03 12:26:22 +01:00
Peter Steinberger
b417fe5727
fix: show rich session names in chat UIs
2026-01-03 05:07:13 +01:00
Peter Steinberger
9adbf47773
refactor: normalize group session keys
2026-01-02 10:14:58 +01:00
Peter Steinberger
7c0379ce05
feat: add recent session switchers
2026-01-01 23:50:26 +01:00
Manuel Jiménez Torres
f831ccfc63
fix(android): wrong text color in user chat bubbles
2025-12-31 12:48:59 +01:00
Peter Steinberger
cf903be4a7
fix: avoid duplicate gateway reconnecting pill
2025-12-30 14:37:59 +01:00
Peter Steinberger
3bf8b9ccf4
fix: default android talk pcm_24000
2025-12-30 12:52:56 +01:00
Peter Steinberger
27adfb76fa
fix: stream elevenlabs tts playback
2025-12-30 12:17:40 +01:00
Peter Steinberger
2814815312
feat: add talk voice alias map
2025-12-30 11:35:29 +01:00
Peter Steinberger
f86772f26c
fix(talk): harden TTS + add system fallback
2025-12-30 07:40:02 +01:00
Peter Steinberger
a7617e4d79
fix(ui): refine talk overlays
2025-12-30 06:47:35 +01:00
Peter Steinberger
7612a83fa2
fix(talk): align sessions and chat UI
2025-12-30 06:47:19 +01:00
Peter Steinberger
fb8f72d5a9
feat(ui): add centered talk orb
2025-12-30 05:27:29 +01:00
Peter Steinberger
b5ae2ccc3c
fix(voice): sync talk mode chat events
2025-12-30 05:27:11 +01:00
Peter Steinberger
c0c6782a17
fix(android): stabilize BridgeSession shutdown
2025-12-30 04:42:02 +01:00
Peter Steinberger
d2ac672f47
feat: add ui.seamColor accent
2025-12-30 04:14:36 +01:00
Peter Steinberger
9846c46434
fix: tag A2UI platform and boost Android canvas
2025-12-30 03:49:24 +01:00
Peter Steinberger
5c7c1af44e
fix: android talk timestamp parsing
2025-12-30 02:05:14 +01:00
Peter Steinberger
e119a82334
feat: talk mode key distribution and tts polling
2025-12-30 01:57:58 +01:00
Peter Steinberger
c56292a6ec
feat: move talk mode to overlay button
2025-12-30 00:01:21 +01:00
Peter Steinberger
857cd6a28a
fix: align ios lint and android build
2025-12-29 23:45:58 +01:00
Peter Steinberger
303954ae8c
feat: extend status activity indicators
2025-12-29 23:42:22 +01:00
Peter Steinberger
3c338d1858
fix: adjust android talk parser for kotlin json
2025-12-29 23:26:38 +01:00
Peter Steinberger
20d7882033
feat: add talk mode across nodes
2025-12-29 23:21:05 +01:00
Peter Steinberger
6927b0fb8d
fix: align camera payload caps
2025-12-29 23:20:55 +01:00
Peter Steinberger
8f0c8a6561
fix: cap camera snap payload size
2025-12-29 23:12:20 +01:00
Peter Steinberger
a61b7056d5
feat: surface camera activity in status pill
2025-12-29 23:12:03 +01:00
Peter Steinberger
b0396e196f
fix: refresh bridge tokens and enrich node settings
2025-12-29 22:11:12 +01:00
Peter Steinberger
cf42fabfd8
test: add ios swift testing + android kotest
2025-12-29 21:10:44 +01:00
Peter Steinberger
ebfe55f909
fix: enable canvas webview scrolling on mobile nodes
2025-12-29 17:13:31 +01:00
Peter Steinberger
8826170635
fix: resolve CI lint and android build
2025-12-27 01:41:43 +01:00
Peter Steinberger
a13db82d28
fix(nodes): improve version reporting
2025-12-26 21:45:00 +01:00
Peter Steinberger
a808cdce13
fix(android): drop duplicate scaffold asset
2025-12-21 14:50:28 +01:00
Peter Steinberger
7932e966db
feat(android): toggle debug canvas status
2025-12-21 14:21:06 +01:00
Peter Steinberger
20630b8744
chore: bump Peekaboo + menu cleanup
2025-12-21 13:59:41 +01:00
Peter Steinberger
5adec0eae0
fix: align canvas defaults and A2UI auto-nav
2025-12-21 12:32:36 +01:00
Peter Steinberger
2b2f13ca79
fix: restore canvas action bridge
2025-12-21 01:07:35 +01:00
Peter Steinberger
878f074494
chore(android): update kotlin compiler settings
2025-12-20 23:43:28 +01:00
Peter Steinberger
c1050da852
chore(android): update icons and platform config
2025-12-20 23:43:28 +01:00
Peter Steinberger
65329496a7
refactor: serve canvas host on gateway port
2025-12-20 17:13:36 +01:00
Peter Steinberger
ed001a5f55
refactor(canvas): host A2UI via gateway
2025-12-20 12:17:27 +00:00
Peter Steinberger
0ac7a93c28
fix: decode bonjour escaped utf8
2025-12-19 23:21:07 +01:00
Peter Steinberger
beefda7f60
refactor: replace canvas.show with canvas.present
2025-12-19 03:35:33 +01:00
Peter Steinberger
74cdc1cf3e
feat: route mac control via nodes
2025-12-19 03:16:25 +01:00
Peter Steinberger
7f3be083c1
feat: add node screen recording across apps
2025-12-19 02:57:00 +01:00
Peter Steinberger
b8012a2281
fix(canvas): load A2UI resources across platforms
2025-12-19 01:53:55 +00:00
Peter Steinberger
1fbd84da39
feat(nodes): add mac node mode + permission UX
2025-12-19 01:48:19 +01:00
Peter Steinberger
06f71d883c
Android: JPEG canvas snapshots + camera permission prompts
2025-12-18 23:32:07 +01:00
Peter Steinberger
801e44f4eb
feat(node): show camera capture HUD
2025-12-18 14:49:07 +01:00
Peter Steinberger
d182f7e4b2
chore(naming): remove Iris codename
2025-12-18 13:18:33 +01:00
Peter Steinberger
790079c3b6
feat(canvas): remove setMode; host A2UI in scaffold
2025-12-18 13:18:24 +01:00
Peter Steinberger
e1f320276e
Android: hide Disconnect without remote
2025-12-18 11:39:23 +01:00
Peter Steinberger
c61bd6c84d
A2UI: share web UI and action bridge
2025-12-18 11:38:32 +01:00
Peter Steinberger
cfb36525ab
Android: add canvas.a2ui push/reset
2025-12-18 10:44:50 +01:00
Peter Steinberger
4a68b4add4
fix(android): show backdrop behind WebView
2025-12-18 09:46:32 +01:00
Peter Steinberger
fceab511b3
Android: run canvas WebView loads on main
2025-12-18 08:31:56 +00:00
Peter Steinberger
97ec5d52c3
fix(android): allow cleartext for tailnet web
2025-12-18 09:12:06 +01:00
Peter Steinberger
6f1ae147da
ui: improve idle background blend mode fallback
2025-12-18 08:32:06 +01:00
Peter Steinberger
f2d503ad04
Android: drop screen.* invoke aliases
2025-12-18 02:17:35 +00:00
Peter Steinberger
efed2ae30f
Nodes: advertise canvas invoke commands
2025-12-18 02:06:35 +00:00
Peter Steinberger
ce1a8d70d9
Android: hide connected bridge from discovery list
2025-12-18 02:37:37 +01:00
Peter Steinberger
cd719a8c85
Android: centralize canvas protocol strings
2025-12-18 02:32:34 +01:00
Peter Steinberger
3df53836ca
fix(ui): harden idle background animation
2025-12-18 02:27:11 +01:00
Peter Steinberger
21a27e3b65
Nodes: handle canvas.* commands on iOS/Android
2025-12-18 01:20:20 +00:00
Peter Steinberger
ea53f1bec7
Android: test bridge auto-reconnect
2025-12-18 02:18:19 +01:00
Peter Steinberger
60321352aa
Android: add Voice Wake (foreground/always)
2025-12-18 02:08:57 +01:00
Peter Steinberger
6d60224c93
fix(android): improve webview compatibility
2025-12-18 02:08:53 +01:00
Peter Steinberger
2b2434d239
fix(android): decode UTF-8 TXT records
2025-12-18 01:58:16 +01:00
Peter Steinberger
86225d0eb6
fix(android): improve wide-area bridge discovery
2025-12-18 01:40:08 +01:00
Peter Steinberger
3351c972e7
refactor(android): drop legacy theme fallback
2025-12-18 01:39:57 +01:00
Peter Steinberger
f4b186a9d3
ui(nodes): unify idle background animation
2025-12-18 01:22:26 +01:00
Peter Steinberger
99310a5bbb
style(android): respect system theme and clamp overlays
2025-12-18 01:15:50 +01:00
Peter Steinberger
1673bf2d44
fix(android): use system DNS for wide-area discovery
2025-12-18 01:04:13 +01:00
Peter Steinberger
4c656ea22f
Android: reorder settings sections
2025-12-18 01:00:50 +01:00
Peter Steinberger
ba204d0330
fix(android): show idle background under WebView
2025-12-18 00:53:31 +01:00
Peter Steinberger
14fa2f47f5
style(android): improve idle background
2025-12-18 00:41:21 +01:00
Peter Steinberger
579da8cc9b
style(android): use tonal surfaces for overlays
2025-12-18 00:34:11 +01:00
Peter Steinberger
abbe237cc0
style(android): use Offline bridge status
2025-12-18 00:20:28 +01:00
Peter Steinberger
ac4a65ddfd
refactor(android): unify chat status label
2025-12-18 00:20:19 +01:00
Peter Steinberger
693215723a
Android: enable immersive fullscreen
2025-12-18 00:07:58 +01:00
Peter Steinberger
5f0e474be1
Android: polish settings UI
2025-12-18 00:07:52 +01:00
Peter Steinberger
0e201c4c18
style(android): make chat more Material
2025-12-17 23:57:14 +01:00
Peter Steinberger
d12ca22b19
feat(android): chat parity + wide-area discovery
2025-12-17 23:49:29 +01:00
Peter Steinberger
b3e466ccb6
nodes: better default display names
2025-12-17 23:15:15 +01:00
Peter Steinberger
76ddfc4a9e
fix(android): canvas idle background + tailscale DNS
2025-12-17 22:27:16 +01:00
Peter Steinberger
fe6bf6966b
style(android): format bridge hello
2025-12-17 22:04:51 +01:00
Peter Steinberger
fce487669b
feat(android): iOS canvas background
2025-12-17 22:03:11 +01:00
Peter Steinberger
e6ba373d08
feat(android): add status pill overlay
2025-12-17 22:00:12 +01:00
Peter Steinberger
d4b3d504e4
fix(android): dedupe hello fields
2025-12-17 21:53:38 +01:00
Peter Steinberger
51bdf01e2e
Presence: add device identity fields
2025-12-17 21:51:36 +01:00
Peter Steinberger
df4e4534f4
Android: advertise device model to bridge
2025-12-17 20:10:58 +00:00