{"id":47622221,"url":"https://github.com/chrisjcthomas/wsa-manager","last_synced_at":"2026-04-01T22:21:22.420Z","repository":{"id":346021260,"uuid":"1188269516","full_name":"chrisjcthomas/wsa-manager","owner":"chrisjcthomas","description":"Windows utility for installing, removing, and cleaning up Android apps in Windows Subsystem for Android","archived":false,"fork":false,"pushed_at":"2026-03-22T01:44:29.000Z","size":5026,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-22T10:27:39.684Z","etag":null,"topics":["android","electron","windows","wsa"],"latest_commit_sha":null,"homepage":"https://github.com/chrisjcthomas/wsa-manager/releases","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chrisjcthomas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-03-21T21:04:41.000Z","updated_at":"2026-03-22T01:44:31.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/chrisjcthomas/wsa-manager","commit_stats":null,"previous_names":["chrisjcthomas/wsa-manager"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/chrisjcthomas/wsa-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisjcthomas%2Fwsa-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisjcthomas%2Fwsa-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisjcthomas%2Fwsa-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisjcthomas%2Fwsa-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chrisjcthomas","download_url":"https://codeload.github.com/chrisjcthomas/wsa-manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chrisjcthomas%2Fwsa-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31292639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","electron","windows","wsa"],"created_at":"2026-04-01T22:21:21.812Z","updated_at":"2026-04-01T22:21:22.410Z","avatar_url":"https://github.com/chrisjcthomas.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WSA Manager\n\nWindows utility for installing, removing, and cleaning up Android apps in Windows Subsystem for Android.\n\n![WSA Manager screenshot](docs/screen.png)\n\n## Install\n\n### End users\n\n1. Open the [Releases](https://github.com/chrisjcthomas/wsa-manager/releases) page.\n2. Download the latest `WSA.Manager.Setup.\u003cversion\u003e.exe`.\n3. Run the installer.\n4. Launch `WSA Manager` from the Start menu.\n\nThis is currently an unsigned beta app. Windows SmartScreen may show a warning the first time you run the installer. If that happens, choose `More info` and then `Run anyway`.\n\n### Portable test build\n\nEach GitHub release also includes a portable package named `WSA.Manager.portable.\u003ctag\u003e.zip`.\nFor example: `WSA.Manager.portable.v0.1.0.zip`.\n\nUse that build when you want to smoke-test the app without installing it into `AppData\\Local\\Programs`.\n\n## Requirements\n\n- Windows 11\n- Windows Subsystem for Android installed\n- `adb.exe` available either from Android platform-tools or a manually selected path\n\n## First run\n\nOn first launch, WSA Manager opens the setup wizard automatically when readiness is incomplete.\n\nTypical first-run flow:\n\n1. Confirm WSA is installed.\n2. Point the app at `adb.exe` if auto-detection does not find it.\n3. Wake WSA if the subsystem is sleeping.\n4. Run the setup check until the app reports ready.\n\nCleanup and diagnostics stay available even when setup is incomplete.\n\n## Development\n\n```bash\nnpm ci\nnpm run dev\n```\n\n### Core commands\n\n```bash\nnpm run validate\nnpm run test:ui\nnpm run smoke:packaged\nnpm run test:visual\nnpm run release:build\n```\n\nPackaged commands are not safe to run in parallel. `npm run smoke:packaged`, `npm run test:visual`, `npm run package:unpacked`, and `npm run release:build` all clean or rewrite `release/`.\n\n### Canonical app targets\n\n- Local dev: `npm run dev`\n- Packaged smoke target: `release/win-unpacked/WSA Manager.exe`\n- Installer acceptance target: `release/WSA.Manager.Setup.\u003cversion\u003e.exe`\n\nDo not validate UI work against the installed `Program Files` copy during development, and never hot-swap `app.asar`.\n\n## UI workflow\n\n- Use `docs/code.html` and `docs/screen.png` as the approved visual reference.\n- Run packaged smoke checks instead of relying on stale local installs.\n- Review screenshot baseline changes intentionally in PRs.\n- Treat screenshot failures as determinism issues first. Check time-sensitive labels, build metadata, diagnostics timestamps, and other dynamic text before refreshing a baseline.\n- Prefer targeted masks and narrow tolerances for dynamic regions over broad snapshot churn.\n\n## Project docs\n\n- Active workflow docs:\n  - `AGENTS.md`\n  - `README.md`\n  - `docs/README.md`\n  - `.github/pull_request_template.md`\n- Historical planning and troubleshooting notes now live under `docs/archive/`.\n\n## Codex Review\n\nCodex review in GitHub is set up in two layers:\n\n1. In Codex settings, turn on `Code review` for `chrisjcthomas/wsa-manager`.\n2. In a pull request comment, write `@codex review`.\n\nOptional:\n\n- Turn on `automatic reviews` in Codex settings if you want every PR reviewed without a comment.\n- Add one-off focus in the comment when needed, for example `@codex review for packaging regressions` or `@codex review for security regressions`.\n\nThis repository uses [AGENTS.md](AGENTS.md) to tell Codex what to prioritize during review.\n\n## Releases\n\nTagged builds publish GitHub releases automatically.\n\nRelease tags use the format:\n\n```text\nv0.1.0\n```\n\nEach release publishes:\n\n- `WSA.Manager.Setup.\u003cversion\u003e.exe`\n- `WSA.Manager.Setup.\u003cversion\u003e.exe.blockmap`\n- `WSA.Manager.portable.\u003ctag\u003e.zip`\n- `build-manifest.json`\n\n## Repository workflow\n\n- Work from short-lived branches named `codex/\u003ctask\u003e`.\n- Open a PR for every non-trivial change.\n- Run `npm run validate` before every PR.\n- For UI and packaging work, also run `npm run smoke:packaged` and `npm run test:visual`.\n- Request `@codex review` on PRs unless automatic reviews are enabled in Codex settings.\n- Resolve review threads and check branch-policy blockers before assuming a green PR is mergeable.\n- Project-specific workflow skills live under `.codex/skills/` and version with this repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisjcthomas%2Fwsa-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchrisjcthomas%2Fwsa-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchrisjcthomas%2Fwsa-manager/lists"}