agentleFS
bex-cobex-co/bex/mobile/AGENTS.md

bex / mobile

AGENTS.md576 starsChanged 15 days agoApache-2.0View on GitHub

Expo Router native client for the ADR048 supervision and agent mission-control experience. - Mobile is supervision-first. Do not add service creation, desktop settings, blueprint/topology/admin flows, bulk secret management, or Web Shell as a primary workflow. - Environment-variable viewing and editing belong to the dashboard. Mobile service details must not render an environment card or request keys or values. - Never add delete, PITR, failover, workspace deletion, or dangerous permission modes. src/__tests__/mobile-scope-policy.test.ts enforces the route/action vocabulary. - Authentication must use the…

  • Reads credentials

The file

We split this AGENTS.md into the rules it gives an agent

3 rules. About 0 are common, 0 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Never add delete, PITR, failover, workspace deletion, or dangerous permission modes.

    line 13
  2. Very specific:

    Every user-visible string goes through useTranslations() and is present in both English and Chinese.

    line 19
  3. Very specific:

    Use theme tokens and useWindowDimensions.

    line 21

≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

bex mobile

Expo Router native client for the ADR048 supervision and agent mission-control experience.

Boundaries

  • Mobile is supervision-first. Do not add service creation, desktop settings, blueprint/topology/admin flows, bulk secret management, or Web Shell as a primary workflow.
  • Environment-variable viewing and editing belong to the dashboard. Mobile service details must not render an environment card or request keys or values.
  • Never add delete, PITR, failover, workspace deletion, or dangerous permission modes. src/__tests__/mobile-scope-policy.test.ts enforces the route/action vocabulary.
  • Authentication must use the reviewed w11/m2 contract. Never persist OAuth, Kratos, or API credentials in AsyncStorage, source code, logs, analytics, or crash reports; never use a WebView login.
  • Every user-visible string goes through useTranslations() and is present in both English and Chinese.
  • Use theme tokens and useWindowDimensions; do not cache a fixed screen width.
  • Generated GraphQL belongs to codegen once m2 lands and is never hand-edited.

Structure

app/                 Expo Router routes
src/common/          providers, hooks, theme, generic utilities and charts
src/components/      reusable controls
src/translations/    en/zh resources
src/__tests__/       cross-cutting policy and utility tests

Required checks

yarn format:check
yarn typecheck
yarn lint
yarn test:unit
yarn expo:check
yarn bundle:ios
yarn bundle:android

yarn lint runs ESLint plus framework-aware unused file/dependency analysis.

yarn expo:check validates native package versions offline, against the list bundled in the installed expo package, so the gate depends only on yarn.lock. The online list moves whenever Expo publishes a patch, and gating on it turned CI red three times with no change in this repository. Run yarn expo:outdated to see newer patches and npx expo install --fix to take them.

Release

The app version lives in app.json and package.json; yarn bump [patch|minor|major|X.Y.Z] moves both, and store.config.js reads the App Store listing version from app.json. Build numbers are not in Git: eas.json uses the remote version source, so EAS owns ios.buildNumber and android.versionCode and increments them on every production build. The values left in app.json are ignored.

A release is the tag bex-mobile/vX.Y.Z on a main commit whose app.json already carries that version (ADR058 mechanics; mobile versions independently of the platform). .github/workflows/mobile-release.yml then runs yarn test, builds both platforms on EAS with --auto-submit (iOS to TestFlight, Android to the Play internal track), waits for every build and submission, and only then publishes the GitHub release. It needs EXPO_TOKEN plus the App Store Connect API key (EXPO_ASC_API_KEY_P8, EXPO_ASC_KEY_ID, EXPO_ASC_ISSUER_ID) on the production-release environment. Without the ASC key a non-interactive build cannot regenerate an expired or outgrown provisioning profile.

The same build runs from a logged-in checkout:

npx eas-cli@24.11.0 build --platform all --profile production --auto-submit --non-interactive

EAS archives a fresh clone of the whole repository and honors only committed ignore rules, so anything large and untracked must be in .gitignore, not just .git/info/exclude.

TestFlight and the Play internal track are tester channels. Promoting a build to App Store review or a public Play track is a separate, deliberate step: it needs screenshots, the ASC_* reviewer contact and demo account from .env.template (eas metadata:push), and the physical-device qualification in e2e/m2-real-device.md and the push runbook. Apple release notes describe only the iPhone and iPad experience; never mention Android or Google Play in them (App Review 2.3.10).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.