Skip to content

feat: add settings appearance command#119

Merged
thymikee merged 3 commits into
callstack:mainfrom
Nils-Fischer:codex/settings-appearance-command
Feb 24, 2026
Merged

feat: add settings appearance command#119
thymikee merged 3 commits into
callstack:mainfrom
Nils-Fischer:codex/settings-appearance-command

Conversation

@Nils-Fischer
Copy link
Copy Markdown
Contributor

@Nils-Fischer Nils-Fischer commented Feb 24, 2026

Summary

  • add settings appearance <light|dark|toggle> support to the settings command family
  • implement appearance handling on iOS simulators via simctl ui ... appearance with toggle behavior
  • implement appearance handling on Android via adb shell cmd uimode night with toggle behavior
  • update CLI usage/help, docs, and skill guidance for the new settings variant
  • add unit coverage for parser/help output plus iOS/Android platform handlers

Validation

  • pnpm -C /Users/nilsfischer/Code/agent-device typecheck
  • pnpm -C /Users/nilsfischer/Code/agent-device test:unit
  • pnpm -C /Users/nilsfischer/Code/agent-device test:smoke
  • manually tested

- add appearance light|dark|toggle support to settings command

- implement iOS simulator and Android night mode handlers

- cover parser/handler/platform behavior with unit tests

- update README, docs, and agent-device skill guidance
- expect split settings usage lines for wifi/location and appearance
Copilot AI review requested due to automatic review settings February 24, 2026 12:33
@Nils-Fischer Nils-Fischer marked this pull request as draft February 24, 2026 12:38
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for controlling device appearance/dark mode through the settings command family. The implementation provides a consistent API (settings appearance <light|dark|toggle>) that works across both iOS simulators (using simctl ui appearance) and Android devices (using cmd uimode night).

Changes:

  • Added settings appearance command with light, dark, and toggle options
  • Implemented iOS simulator appearance control via xcrun simctl ui commands
  • Implemented Android night mode control via adb shell cmd uimode night commands
  • Updated CLI help text, documentation, and skill guidance across the codebase

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
website/docs/docs/quick-start.md Added example usage of settings appearance toggle to quick start guide
website/docs/docs/commands.md Documented all appearance command variants and clarified iOS/Android mapping
src/utils/command-schema.ts Updated settings command schema to include appearance options
src/utils/tests/args.test.ts Added test assertions for appearance in help text output
src/platforms/ios/apps.ts Implemented iOS appearance handling with toggle support and current state detection
src/platforms/ios/tests/index.test.ts Added unit tests for iOS appearance dark and toggle functionality
src/platforms/android/index.ts Implemented Android night mode handling with toggle support and current state detection
src/platforms/android/tests/index.test.ts Added unit tests for Android appearance dark and toggle functionality
src/daemon/handlers/snapshot.ts Updated error message to include appearance command options
src/daemon/handlers/tests/snapshot-handler.test.ts Added test assertion for appearance in error message
skills/agent-device/SKILL.md Updated skill guidance to document appearance command
README.md Added appearance command to features list and settings helpers section

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@thymikee
Copy link
Copy Markdown
Member

Looks good!

@Nils-Fischer Nils-Fischer marked this pull request as ready for review February 24, 2026 14:11
@thymikee thymikee merged commit 8660b04 into callstack:main Feb 24, 2026
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants