Peter Steinberger
3772a29557
macOS: add screen record + safer camera defaults
2025-12-19 00:29:38 +01:00
Peter Steinberger
7831e0040e
feat(macos): delay hover HUD
2025-12-19 00:25:46 +01:00
Peter Steinberger
3780f3152c
macOS: auto-fill Anthropic OAuth from clipboard
2025-12-18 23:15:08 +00:00
Peter Steinberger
3146f8bdbc
CanvasA2UI: refresh bundled renderer
2025-12-18 23:08:07 +00:00
Peter Steinberger
47510e2912
feat(macos): hover HUD for activity
2025-12-19 00:04:45 +01:00
Peter Steinberger
06f71d883c
Android: JPEG canvas snapshots + camera permission prompts
2025-12-18 23:32:07 +01:00
Peter Steinberger
9ace6af3df
iOS: allow A2UI actions from local canvas host
2025-12-18 23:31:49 +01:00
Peter Steinberger
9062f60e3d
ClawdisKit: accept jpg for canvas.snapshot
2025-12-18 23:31:34 +01:00
Peter Steinberger
2307756892
iOS: allow HTTP loads in WKWebView
2025-12-18 19:59:43 +01:00
Peter Steinberger
b5a89e8907
iOS: support jpeg canvas snapshots
2025-12-18 19:48:29 +01:00
Peter Steinberger
801e44f4eb
feat(node): show camera capture HUD
2025-12-18 14:49:07 +01:00
Peter Steinberger
16e2193911
fix(ios): restore ScreenController.mode
2025-12-18 13:56:40 +01:00
Peter Steinberger
982f85bf90
chore(naming): remove remaining iris references
2025-12-18 13:30:22 +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
dda6d7f9e1
ci: fix swiftformat
2025-12-18 12:50:59 +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
6f58a9d643
iOS: support canvas.a2ui push/reset
2025-12-18 10:44:32 +01:00
Peter Steinberger
0913329b03
A2UI: share bundle via ClawdisKit
2025-12-18 10:44:06 +01:00
Peter Steinberger
402b04a68c
ci: raise iOS coverage
2025-12-18 10:34:09 +01:00
Peter Steinberger
4a68b4add4
fix(android): show backdrop behind WebView
2025-12-18 09:46:32 +01:00
Peter Steinberger
98a745b3df
macOS: hide node pairing alert host window
2025-12-18 09:37:17 +01:00
Peter Steinberger
24009ed00f
macOS: move instance update info to third row
2025-12-18 09:36:07 +01:00
Peter Steinberger
fceab511b3
Android: run canvas WebView loads on main
2025-12-18 08:31:56 +00:00
Peter Steinberger
2f8b75d86e
macOS: add leading device icons in Instances
2025-12-18 09:15:50 +01:00
Peter Steinberger
97ec5d52c3
fix(android): allow cleartext for tailnet web
2025-12-18 09:12:06 +01:00
Peter Steinberger
5c705ab675
ci: fix swiftformat and bun CI
2025-12-18 08:55:47 +01:00
Peter Steinberger
2f21b94a76
iOS: fix BridgeClient SwiftFormat indent
2025-12-18 08:40:59 +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
82d8526732
macOS: add clawdis-mac node describe and verbose list
2025-12-18 02:06:36 +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
33bf5cf42a
iOS: centralize canvas commands and capabilities
2025-12-18 02:16:31 +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
f8bea661fc
iOS: alias canvas.* invoke commands
2025-12-18 01:57:31 +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
99325040f8
gateway: persist and surface node capabilities
2025-12-18 01:36:38 +01:00
Peter Steinberger
568fcbda54
iOS: allow settings light mode
2025-12-18 01:29:45 +01:00
Peter Steinberger
f4b186a9d3
ui(nodes): unify idle background animation
2025-12-18 01:22:26 +01:00
Peter Steinberger
d862ae17eb
clawdis-mac: fetch node list via gateway
2025-12-18 00:16:36 +00: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
7707e3d887
iOS: reorder settings sections
2025-12-18 01:00:36 +01:00
Peter Steinberger
ba204d0330
fix(android): show idle background under WebView
2025-12-18 00:53:31 +01:00
Peter Steinberger
cbb327227a
macOS: unify device + OS chip
2025-12-18 00:43:58 +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
5693d7d733
macOS: remove Instances row duplication
2025-12-18 00:28:45 +01:00
Peter Steinberger
07c8fdffd1
macOS: compact Instances row
2025-12-18 00:24:10 +01:00
Peter Steinberger
d3f4db649f
style(ios): use Offline bridge status
2025-12-18 00:20:37 +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
c7b80c28a1
macOS: remove stale WebChat exclude
2025-12-17 23:31:46 +01:00
Peter Steinberger
3ed33c5856
chore(webchat): remove legacy bundled web assets
2025-12-17 23:27:27 +01:00
Peter Steinberger
b3e466ccb6
nodes: better default display names
2025-12-17 23:15:15 +01:00
Peter Steinberger
875cf9a054
refactor(webchat): SwiftUI-only WebChat UI
...
# Conflicts:
# apps/macos/Package.swift
2025-12-17 23:05:28 +01:00
Peter Steinberger
ca85d217ec
ChatUI: swiftformat fixes
2025-12-17 23:01:31 +01:00
Peter Steinberger
6652b1f4f3
ui(chat): reduce padding
2025-12-17 23:01:31 +01:00
Peter Steinberger
9fe04f5659
ui(chat): align status pill with send
2025-12-17 23:01:31 +01:00
Peter Steinberger
5b9e51bfaa
ui(chat): tighten padding + keep status in composer
2025-12-17 23:01:31 +01:00
Peter Steinberger
cdea744725
ui(chat): move connection pill into composer
2025-12-17 23:01:30 +01:00
Peter Steinberger
44365f2e27
test(chat): harden abort/stream + hide session switching
2025-12-17 23:01:30 +01:00
Peter Steinberger
888dbd7d11
macOS: load device model names from dataset
2025-12-17 22:55:50 +01:00
Peter Steinberger
76ddfc4a9e
fix(android): canvas idle background + tailscale DNS
2025-12-17 22:27:16 +01:00
Peter Steinberger
7950a646c3
macOS: show friendly device names in Instances
2025-12-17 22:23:57 +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
2b2376d4c0
style(swift): fix lint
2025-12-17 21:51:36 +01:00
Peter Steinberger
51bdf01e2e
Presence: add device identity fields
2025-12-17 21:51:36 +01:00
Peter Steinberger
9d29fbbf80
Docs/tests: node list hardware fields
2025-12-17 20:11:13 +00:00
Peter Steinberger
a40fc50e5e
clawdis-mac: show hardware model in node list
2025-12-17 20:11:05 +00:00
Peter Steinberger
df4e4534f4
Android: advertise device model to bridge
2025-12-17 20:10:58 +00:00
Peter Steinberger
fca6e466b1
macOS: include node hardware identifiers
2025-12-17 20:10:50 +00:00
Peter Steinberger
0321174519
Tests: cover clawdis-mac node list
2025-12-17 20:03:56 +00:00
Peter Steinberger
c452f8c430
clawdis-mac: enrich node list output
2025-12-17 20:03:56 +00:00
Peter Steinberger
079c1d8786
Bridge: advertise node capabilities
2025-12-17 20:03:56 +00:00
Peter Steinberger
0677567cdd
macOS: fix InstanceInfo device fields
2025-12-17 20:03:56 +00:00
Peter Steinberger
7fe7c30b17
Mobile: prevent sleep setting
2025-12-17 21:01:47 +01:00
Peter Steinberger
cc1d8060c4
fix(android): bonjour discovery parity
2025-12-17 20:57:04 +01:00
Peter Steinberger
428a82e734
feat(chat): Swift chat parity (abort/sessions/stream)
2025-12-17 20:51:27 +01:00
Peter Steinberger
249f97d1ed
tools: add blucli
2025-12-17 20:39:34 +01:00
Peter Steinberger
9051c5891e
Canvas: click progress + context-rich actions
2025-12-17 20:34:54 +01:00
Peter Steinberger
e6a96bea47
fix(macos): improve canvas A2UI forwarding
2025-12-17 20:31:21 +01:00
Peter Steinberger
cf82e37c36
Menu: reopen canvas without reload
2025-12-17 20:31:21 +01:00
Peter Steinberger
4fb3e0500a
Canvas: fix A2UI click actions
2025-12-17 20:31:21 +01:00
Peter Steinberger
9c7d51429e
macOS: auto-start gateway for Canvas actions
2025-12-17 20:31:21 +01:00
Peter Steinberger
c1985443fd
macOS: fix gateway strict-concurrency issues
2025-12-17 20:31:21 +01:00
Peter Steinberger
17a27fd312
macOS: fold agent control into GatewayConnection
2025-12-17 20:31:21 +01:00
Peter Steinberger
557ffdbe35
Discovery: wide-area bridge DNS-SD
...
# Conflicts:
# apps/ios/Sources/Bridge/BridgeDiscoveryModel.swift
# src/cli/dns-cli.ts
2025-12-17 20:31:02 +01:00
Peter Steinberger
e9bfe34850
chore(canvas): rebuild CanvasA2UI bundle
2025-12-17 19:15:19 +00:00
Peter Steinberger
1a4540d386
feat(macos): show Anthropic auth mode + OAuth connect
2025-12-17 19:15:19 +00:00
Peter Steinberger
db7eeee07b
fix(macos): sync node pairing approvals
2025-12-17 19:15:19 +00:00
Peter Steinberger
0a32610b37
iOS: satisfy SwiftFormat in bridge discovery
2025-12-17 18:01:01 +01:00
Peter Steinberger
2ce24fdbf8
Nodes: auto-discover clawdis.internal
2025-12-17 17:01:30 +01:00
Peter Steinberger
a1940418fb
GatewayConnection: validate agent message
2025-12-17 16:09:22 +01:00
Peter Steinberger
6fdc62c008
macOS: fold AgentRPC into GatewayConnection
2025-12-17 16:07:37 +01:00
Peter Steinberger
5e5cb7a292
Canvas: forward A2UI actions
2025-12-17 15:41:04 +01:00
Peter Steinberger
f5ab3e41c5
Android: fix unicast discovery address resolution
2025-12-17 15:32:07 +01:00
Peter Steinberger
036bdde764
Android: add unicast discovery domain + app icon
2025-12-17 15:29:45 +01:00
Peter Steinberger
691bf85d7e
Canvas: shrink close button
2025-12-17 14:52:32 +01:00
Peter Steinberger
4482965d80
Canvas: add vibrancy close pill
2025-12-17 14:50:29 +01:00
Peter Steinberger
fdca8fb592
Canvas: fix A2UI push rendering
2025-12-17 14:36:42 +01:00
Peter Steinberger
316a04f606
iOS: allow unicast DNS-SD discovery domain
2025-12-17 14:14:17 +01:00
Peter Steinberger
9eaa45a291
Canvas: fix A2UI v0.8 rendering
2025-12-17 13:20:27 +01:00
Peter Steinberger
81a9439eb2
feat(macos): add menu Canvas open/close
2025-12-17 11:53:57 +01:00
Peter Steinberger
6653813cb9
fix(macos): avoid treating '/' as file target
2025-12-17 11:36:51 +01:00
Peter Steinberger
cf1278295d
macOS: update config settings copy
2025-12-17 11:36:21 +01:00
Peter Steinberger
cdb5ddb2da
feat(macos): add Canvas A2UI renderer
2025-12-17 11:35:06 +01:00
Peter Steinberger
c5867b2876
Canvas: simplify show + report status
2025-12-17 10:37:35 +01:00
Peter Steinberger
9dcdeb15ec
fix(macos): anchor canvas panel to active screen
2025-12-17 09:28:53 +01:00
Peter Steinberger
e1e3da946f
fix(chat): reduce system spam and cap history
2025-12-16 20:35:03 +01:00
Peter Steinberger
49a9f74753
fix(chat-ui): improve typing dots and composer
2025-12-16 20:13:23 +01:00
Peter Steinberger
66a0813e44
test(macos): guard FileHandle read APIs
2025-12-16 10:41:47 +01:00
Peter Steinberger
64d6d25d65
fix(macos): use safe FileHandle reads
2025-12-16 10:41:47 +01:00
Tu Nombre Real
5e8c8367f3
fix(macos): lazy-init AVAudioEngine to prevent Bluetooth audio ducking
...
Creating AVAudioEngine at singleton init time causes macOS to switch
Bluetooth headphones from A2DP (high quality) to HFP (headset) profile,
resulting in degraded audio quality even when Voice Wake is disabled.
This change makes audioEngine optional and only creates it when voice
recognition actually starts, preventing the profile switch for users
who don't use Voice Wake.
Fixes #30
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 09:35:02 +00:00
Peter Steinberger
7948d071e0
ui(macos): remove Claude auth skip button
2025-12-14 19:23:49 +00:00
Peter Steinberger
fb23717102
ui(macos): polish onboarding wording
2025-12-14 19:22:31 +00:00
Peter Steinberger
3d959c46d0
fix(macos): hide skipped onboarding panes
2025-12-14 19:14:05 +00:00
Peter Steinberger
4cdd61eb78
ui(macos): recommend Opus on Claude step
2025-12-14 19:13:55 +00:00
Peter Steinberger
6d08d84011
ui(macos): tweak Claude sign-in copy
2025-12-14 19:12:52 +00:00
Peter Steinberger
f6cafd1a15
fix(macos): clarify OAuth detection
2025-12-14 19:10:48 +00:00
Peter Steinberger
5792887883
docs(macos): critter-first onboarding copy
2025-12-14 06:26:51 +00:00
Peter Steinberger
e82ee731bf
test(ios): bump app coverage
2025-12-14 06:09:28 +00:00
Peter Steinberger
5e09aae4ca
test(ios): cover RootCanvas bridge states
2025-12-14 05:51:48 +00:00
Peter Steinberger
740f7b0fb6
test(ios): exercise ScreenController eval
2025-12-14 05:51:12 +00:00
Peter Steinberger
7510a6f66a
test(ios): cover ScreenController webview setup
2025-12-14 05:42:39 +00:00
Peter Steinberger
1ff7d458a5
fix(android): avoid non-exhaustive sheet switch
2025-12-14 05:42:39 +00:00
Peter Steinberger
3f5dff35f8
Merge remote-tracking branch 'origin/main'
2025-12-14 05:32:24 +00:00
Peter Steinberger
08bfe2b263
Merge remote-tracking branch 'origin/main'
2025-12-14 05:31:06 +00:00
Peter Steinberger
42645a7e0a
test(macos): cover control/camera disabled paths
2025-12-14 05:30:39 +00:00
Peter Steinberger
7d4c8ef6b2
fix(camera): harden capture pipeline
2025-12-14 05:30:34 +00:00
Peter Steinberger
a1d7b8db6f
refactor(macos): tidy gateway discovery naming
2025-12-14 05:30:07 +00:00
Peter Steinberger
4a3a4558e2
fix(android): respect insets and enable settings scroll
2025-12-14 05:30:07 +00:00
Peter Steinberger
1b83fc85cd
fix(ios): update observation env in smoke tests
2025-12-14 05:27:19 +00:00
Peter Steinberger
841a9b4c8a
fix(macos): fix oauth base64 helper visibility
2025-12-14 05:19:49 +00:00
Peter Steinberger
f3db02018f
fix(chat-ui): reflect gateway connection
2025-12-14 05:19:01 +00:00
Peter Steinberger
4cbaee59cd
style(ios): swiftformat
2025-12-14 05:17:59 +00:00
Peter Steinberger
0d10aa4098
ui(ios): animate idle background
2025-12-14 05:17:59 +00:00
Peter Steinberger
f3f8aa5397
fix(ios): use Observation environment in settings
2025-12-14 05:17:59 +00:00
Peter Steinberger
4970af6bb9
fix(macos): satisfy swiftformat
2025-12-14 05:16:03 +00:00
Peter Steinberger
a48aebc78c
iOS: Fix canvas touch events and auto-hide status bubble
...
- Disable scroll on WKWebView to allow touch events to reach canvas
- Add WKNavigationDelegate to intercept clawdis:// deep links from canvas
- Wire up onDeepLink callback to handle taps on canvas buttons
- Auto-hide status bubble after 3 seconds
2025-12-14 05:14:26 +00:00
Peter Steinberger
26bbddde8f
style(macos): swiftformat
2025-12-14 05:09:48 +00:00
Peter Steinberger
b48a556de5
refactor(observation): migrate SwiftUI state
2025-12-14 05:06:34 +00:00
Peter Steinberger
aab5c490dc
refactor(chat-ui): compact layout
2025-12-14 05:06:34 +00:00
Peter Steinberger
d54cc49d66
feat(android): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
0cef22ef83
feat(ios): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
7b2f712e20
feat(macos): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
26a05292b9
fix(macos): live-check Pi oauth.json
2025-12-14 04:48:03 +00:00
Peter Steinberger
caaa79bb76
style(ios): swiftformat
2025-12-14 04:47:15 +00:00
Peter Steinberger
b80c0d85e0
style(macos): swiftformat
2025-12-14 04:42:04 +00:00
Peter Steinberger
0641281cfe
chore(protocol): sync generated artifacts
2025-12-14 04:42:04 +00:00
Peter Steinberger
9e80764c2b
feat(ios): add discovery debug logs
2025-12-14 04:36:00 +00:00
Peter Steinberger
ce915d3438
fix(android): safe area + settings scroll
2025-12-14 04:35:06 +00:00
Peter Steinberger
3ef910d23e
test(macos): boost Clawdis coverage to 40%
2025-12-14 04:31:04 +00:00
Peter Steinberger
845b26a73b
fix(camera): retain capture delegates
2025-12-14 04:31:04 +00:00
Peter Steinberger
e0545e2f94
fix(chat): improve history + polish SwiftUI panel
2025-12-14 04:31:04 +00:00
Peter Steinberger
01341d983c
fix(macos): sane chat window placement
2025-12-14 04:31:04 +00:00
Peter Steinberger
0d68e10dd7
chore(tools): match repo emojis
2025-12-14 04:31:04 +00:00
Peter Steinberger
e6a60c0dc5
chore(tools): add emoji tool names
2025-12-14 04:31:04 +00:00
Peter Steinberger
7dbd5acbb1
fix(webchat): reconnect gateway ws
2025-12-14 04:31:04 +00:00
Peter Steinberger
7a87f3cfb8
fix(macos): suggest critter emojis only
2025-12-14 04:29:07 +00:00
Peter Steinberger
a097c848bb
feat(macos): onboard Claude OAuth + identity
2025-12-14 04:22:38 +00:00
Peter Steinberger
a47d3e3e35
ui(macos): skip whatsapp onboarding in remote mode
2025-12-14 04:20:16 +00:00
Peter Steinberger
97fe3972c8
chore(macos): silence onboarding type length lint
2025-12-14 04:09:20 +00:00
Peter Steinberger
7c91ce2fa7
refactor(macos): simplify bridge frame handling
2025-12-14 04:09:20 +00:00
Peter Steinberger
951993db17
ui(macos): always enable deep links
2025-12-14 04:06:34 +00:00
Peter Steinberger
357a1a982b
style: satisfy formatters
2025-12-14 04:03:32 +00:00
Peter Steinberger
f6f69b408f
ui(macos): remove duplicate canvas toggle
2025-12-14 04:00:57 +00:00
Peter Steinberger
e9e2e5026c
ui(macos): fix security notice wrapping
2025-12-14 03:57:32 +00:00
Peter Steinberger
8649de6199
ui(macos): make master discovery selectable
2025-12-14 03:53:45 +00:00
Peter Steinberger
dde9fddae4
style(swift): fix lint and formatting warnings
2025-12-14 03:49:34 +00:00
Peter Steinberger
3a08e6df9d
ui(macos): skip local onboarding steps in remote mode
2025-12-14 03:49:17 +00:00
Peter Steinberger
67e0739bec
ui(macos): lower onboarding welcome content
2025-12-14 03:45:27 +00:00
Peter Steinberger
d0134722af
test(ios): cover bridge client + more views
2025-12-14 03:39:33 +00:00
Peter Steinberger
efc7181aa0
fix(macos): hide session store path in remote mode
2025-12-14 03:38:47 +00:00
Peter Steinberger
3729d269d0
feat(macos): move camera setting to General
2025-12-14 03:33:24 +00:00
Peter Steinberger
eec6212cdf
test(ios): add smoke coverage tests
2025-12-14 03:29:08 +00:00
Peter Steinberger
a5b3b8743a
docs: recommend git repo for workspace backups
2025-12-14 03:19:02 +00:00
Peter Steinberger
073285409b
feat: bootstrap agent workspace and AGENTS.md
2025-12-14 03:14:58 +00:00
Peter Steinberger
41da61dd6a
fix(android): make settings sheet scrollable
2025-12-14 03:13:36 +00:00
Peter Steinberger
35e8dae939
fix(android): inset top buttons for status bar
2025-12-14 03:10:46 +00:00
Peter Steinberger
745eefe0be
test(macos): cover settings + activity models
2025-12-14 03:06:12 +00:00
Peter Steinberger
d7165b4720
feat(ios): add always-on status overlay
2025-12-14 03:00:55 +00:00