This is a public MIT-licensed repository. Assume every commit is world-readable forever.
- Scope: Android-only CDP bridge. Nothing else belongs in this repo.
- Never reference or import any private sibling project, private directory, private product codename, or internal tooling by name. The only acceptable mention of iOS is a one-liner saying iOS support is part of the broader VulpineOS commercial offering.
- Push only to
VulpineOS/mobilebridge. Never toCloverLabsAIor any unrelated remote. Verify withgh repo viewif unsure. - Commits: one-line messages, no co-authors, no
Co-Authored-Bytrailers, noGenerated with Claude Codefooters. Commit and push after each cohesive change. - License: MIT. Any new file that needs a license header should match.
When running unattended:
- Don't ask for permission. Act, commit, push, document in the commit message.
- After every change:
go build ./...,go vet ./...,go test ./.... Fix before moving on. - Keep the README accurate — it's the entire public docs surface.
- If a task requires pulling in a private detail to do it well, skip the task rather than leak anything.
- Linear is the shared execution tracker for the VulpineOS ecosystem. Use the
VulpineOSworkspace, product/type/source labels, and link commits in issue comments when closing work. - Codex has a persistent local Playwright MCP at
http://localhost:8931/mcpfor browser navigation, snapshots, console/network inspection, and screenshots. It writes artifacts to~/.codex/mcp-output/playwrightand omits inline image payloads to reduce token usage. - Keep public issue comments and docs generic for this repo: Android bridge details are fine; private implementation details are not.
cmd/mobilebridge/— CLI entry point.pkg/mobilebridge/— library: ADB wrapper, CDP proxy, gesture helpers, device watcher, HTTP/WS server.- Tests must run without a real
adbbinary or a real device. Use fixture strings and injectable command runners.
Prefer the standard library. The only third-party dependency right now is github.com/gorilla/websocket. Add new dependencies only with good reason.
Keep these docs current as the public integration story evolves:
README.mddocs/integration.mddocs/device-farm.md