# Desktop coverage Generated by `bun tools/gen-desktop-coverage.ts` from `cli/lib/desktop-coverage.ts`; do not edit by hand. Every CLI command (cli/commands.ts) and the desktop place that runs it. "covered" means each method listed exists (serve.ts, or a host command `host:`) and the window calls it; tests/desktop-coverage.test.ts fails on a gap. Owner-only parts are owner actions in the window or owner steps with their terminal command (More tools). **96 commands:** 91 covered, 0 gaps, 5 not for the desktop. | command | status | where in the window | methods | owner step | |---|---|---|---|---| | `init` | covered | App folders: Start an app folder | `host:project_init` | | | `import` | covered | App folders / first-run guide: Import from fastlane | `host:project_import_fastlane` | | | `install` | covered | More tools: Install for an AI tool | `agent.install` | | | `mcp` | not-for-desktop | the stdio server for AI tools; the window itself is the GUI over the same commands | | | | `serve` | not-for-desktop | the JSON-RPC sidecar the window runs on; nothing to click | | | | `apps` | covered | Accounts (store apps per account, key check) and App folders (list, add, remove) | `host:store_apps_refresh`, `host:account_check`, `host:projects_list`, `host:project_add`, `host:project_remove` | | | `desktop` | not-for-desktop | opens or installs this window from a terminal | | | | `accounts` | covered | Accounts screen (profiles shared with the CLI) | `host:accounts_list`, `host:account_add_play`, `host:account_add_apple`, `host:account_update` | | | `settings` | not-for-desktop | per-machine switch for AI agents (bypass mode); in the window the owner presses owner actions in a native dialog anyway | | | | `doctor` | covered | Dependencies screen | `system.tools`, `host:tools_info` | | | `scan` | covered | Checks tab: Scan, Fix | `scan`, `scan.write` | | | `api` | not-for-desktop | raw API calls by operation id: every task has its own screen, and raw writes stay a terminal step the owner types | | | | `privacy-manifest` | covered | More tools: Quality | `privacy.manifest` | | | `ws` | covered | Portfolio, studios and Settings (the workspace of this machine) | `host:workspace_get`, `host:portfolio_status` | | | `release` | covered | Portfolio release trains and the Releases tab | `host:portfolio_status`, `apple.status`, `play.status` | | | `flow` | covered | More tools: Workflows (plans; owner steps never run) | `flow.list`, `flow.run` | | | `ads` | covered | More tools: Quality (AdAttributionKit / SKAdNetwork scan) | `ads.scan` | | | `edit` | covered | Editors on every tab (Save edits) | `project.editable`, `project.edit` | | | `inspect` | covered | App card, App info, Listings, Store art (offline reads) | `host:portfolio_status`, `project.declarations`, `project.listings`, `project.listing_text`, `project.icon`, `project.render` | | | `check` | covered | Checks tab | `check` | | | `validate` | covered | Checks tab | `validate` | | | `report` | covered | Checks tab: readiness report | `report` | | | `analytics` | covered | Growth tab: chart, snapshot, setup | `analytics.compare`, `analytics.snapshot`, `analytics.setup` | | | `health` | covered | Health tab; weekly report in More tools | `health`, `health.issue`, `health.report` | | | `art` | covered | Store art tab: live art, pull, replace | `art.live`, `art.thumb`, `art.pull`, `art.replace` | | | `onboard` | covered | More tools: Store features | `onboard` | | | `catalog` | covered | Catalog tab (parity); pull in More tools | `catalog.diff`, `catalog.pull` | | | `reports` | covered | Growth tab: sales and finance reports | `reports` | | | `triage` | covered | More tools: Quality | `triage` | | | `aso` | covered | Growth tab: ASO audit; rank, competitors, suggest in More tools | `aso.audit`, `aso.rank`, `aso.competitors`, `aso.suggest` | | | `prices` | covered | Prices tab (export, compare, apply = owner action); PPP sheet in More tools | `prices.current`, `prices.export`, `prices.diff`, `owner.prices_import`, `prices.ppp` | | | `ads apple` | covered | More tools: Apple Ads (status, campaigns, report) | `ads.apple_status`, `ads.apple_campaigns`, `ads.apple_report` | bid, budget, pause | | `web` | covered | More tools: Quality (init, check) | `web.init`, `web.check` | | | `revenuecat` | covered | More tools: Store features (diff) | `revenuecat.diff` | sync | | `console plan` | covered | App info: Console steps without an API | `console.plan` | | | `console verify` | covered | App info: Console steps, Check | `console.verify` | | | `console fill` | covered | App info: Fill in console | `console.fill` | | | `reviews` | covered | Reviews tab (list, draft, reply, approve; Send = owner action) | `reviews.list`, `reviews.draft`, `reviews.drafts`, `reviews.reply`, `reviews.approve`, `owner.reply_send` | | | `originality` | covered | More tools: Quality | `originality` | | | `listing` | covered | Listings tab (live texts, store edits); translate and check in More tools | `listing.live`, `listing.set`, `listing.translate`, `listing.check` | | | `whats-new` | covered | More tools: Text and ASO | `whats.new`, `whats.new_languages`, `whats.new_check`, `whats.new_apply` | | | `play products` | covered | Catalog tab | `play.products`, `owner.prices_play_products` | | | `play subscriptions` | covered | Catalog tab | `play.subscriptions`, `owner.prices_play_subscriptions` | | | `play listing` | covered | Listings tab (push, pull) | `play.listing`, `play.listing_pull` | | | `play images` | covered | Listings tab: Play graphics | `play.images` | | | `play data-safety` | covered | App info tab: Data safety upload | `play.data_safety` | | | `play release` | covered | Releases tab: Send to production (owner action); testing tracks via play upload in More tools | `owner.play_production`, `play.upload` | | | `play build` | covered | More tools: Build and upload | `play.build` | | | `play upload` | covered | More tools: Build and upload | `play.upload` | | | `play status` | covered | Releases tab: Google Play card | `play.status` | | | `play rollout` | covered | Releases tab: rollout (owner action) | `owner.play_rollout` | | | `play share` | covered | More tools: Build and upload | `play.share` | | | `play app-id` | covered | More tools: Build and upload | `play.app_id` | | | `games status` | covered | App info tab: Game services card | `games.status` | | | `play games` | covered | App info tab: Game services card (Sync Play Games, Setup plan) | `play.games`, `games.status` | | | `play next-version-code` | covered | More tools: Build and upload | `play.next_version_code` | | | `apple bundle` | covered | More tools: Build and upload | `apple.bundle` | | | `apple iap` | covered | Catalog tab | `apple.iap` | | | `apple subscriptions` | covered | Catalog tab | `apple.subscriptions`, `owner.prices_apple_subscriptions` | | | `apple iap-review` | covered | More tools: Store features | `apple.iap_review` | | | `apple iap-submit` | covered | Releases tab: Submit in-app purchases (owner action); plan in More tools | `owner.apple_iap_submit`, `apple.iap_review_plan` | | | `apple submit` | covered | Releases tab: Submit for review (owner action) | `owner.apple_submit` | | | `apple resubmit` | covered | Releases tab: Resubmit (owner action) | `owner.apple_resubmit` | | | `apple offer-codes` | covered | More tools: owner steps (terminal command) | | creating campaigns and codes | | `apple win-back` | covered | More tools: owner steps (terminal command) | | win-back offers go live on their start date | | `apple promoted` | covered | More tools: owner steps (terminal command) | | promoted purchases on the product page | | `apple preorder` | covered | More tools: Store features (status); enable / end as owner steps | `apple.preorder_status` | enable, end | | `apple cpp` | covered | More tools: Store features (list, create, upload) | `apple.cpp_list`, `apple.cpp_create`, `apple.cpp_upload` | submit, visible | | `apple events` | covered | More tools: Store features (list, create, upload) | `apple.events_list`, `apple.events_create`, `apple.events_upload` | submit | | `apple listing` | covered | Listings tab (push, pull) | `apple.listing`, `apple.listing_pull` | | | `apple screenshots` | covered | Listings tab: App Store screenshots | `apple.screenshots` | | | `apple appinfo` | covered | App info tab: Push | `apple.appinfo` | | | `apple review-details` | covered | App info tab: App Review details | `apple.review_details` | | | `apple status` | covered | Releases tab: Send for review, App Store card | `apple.status` | | | `apple creative-assets` | covered | More tools: Store features | `apple.creative_assets`, `apple.creative_assets_verify` | | | `apple previews` | covered | Listings tab: App Store previews | `apple.previews` | | | `apple release` | covered | Releases tab: phased release (owner action) | `owner.ios_phased` | | | `apple signing` | covered | More tools: Build and upload (status, ensure) | `apple.signing_status`, `apple.signing_ensure` | | | `apple build` | covered | More tools: Build and upload | `apple.build` | | | `apple upload` | covered | More tools: Build and upload | `apple.upload` | | | `apple adhoc` | covered | More tools: Ad-hoc devices (devices, register, options, export) | `apple.adhoc_devices`, `apple.adhoc_register`, `apple.adhoc_options`, `apple.adhoc_export` | | | `apple next-build` | covered | More tools: Build and upload | `apple.next_build` | | | `apple game-center` | covered | App info tab: Game services card (Sync Game Center) | `apple.game_center`, `games.status` | | | `apple encryption` | covered | App info tab: export compliance | `apple.encryption` | | | `apple ppo` | covered | Growth tab: PPO tests (start / stop = owner actions) | `apple.ppo_status`, `apple.ppo_create`, `apple.ppo_upload`, `owner.ppo_start`, `owner.ppo_stop` | | | `apple testflight` | covered | TestFlight tab (status, groups, What to Test, distribute, testers = owner action); info and wait in More tools | `apple.testflight_status`, `apple.testflight_groups`, `apple.testflight_what_to_test`, `apple.testflight_distribute`, `owner.testflight_testers`, `apple.testflight_info`, `apple.testflight_wait` | expire | | `icons` | covered | Store art tab: icons | `icons` | | | `shots capture` | covered | More tools: Captures | `shots.capture` | | | `shots login` | covered | More tools: owner steps (terminal command) | | signing in to a demo account by hand in a visible browser | | `shots fonts` | covered | More tools: Captures | `shots.fonts` | | | `shots render` | covered | Store art tab: Render | `shots.render` | | | `shots jpeg` | covered | More tools: Captures | `shots.jpeg` | | | `shots check` | covered | More tools: Captures | `shots.check` | | | `shots record` | covered | More tools: Captures | `shots.record` | | | `shots video` | covered | Store art tab: previews | `shots.video` | | | `shots gallery` | covered | Store art tab: gallery, review page | `shots.gallery`, `project.renders` | |