Skip to content

docs: correct the contributor setup instructions - #2584

Closed
Avinash Gola (avinashgola) wants to merge 1 commit into
browseros-ai:mainfrom
avinashgola:docs/refresh-contributing-setup
Closed

Avinash Gola (avinashgola) wants to merge 1 commit into
browseros-ai:mainfrom
avinashgola:docs/refresh-contributing-setup

Conversation

@avinashgola

Copy link
Copy Markdown
Contributor

A new contributor following CONTRIBUTING.md cannot reach a working build today — every command in the agent setup path is wrong for the current repo.

CONTRIBUTING.md

The doc says What the repo does
yarn install packages/browseros-agent/package.json pins bun@1.3.6 and sets engines to "yarn": "please-use-bun" (same for npm and pnpm). There is no yarn.lock, only bun.lock.
cp .env.example .env No .env.example exists. The tracked templates are .env.development.example and .env.production.example; the old per-app env files were merged into root ones.
yarn build:dev There is no build:dev script at the workspace root. Setup is bun run dev:setup then bun run dev:watch.
Load unpacked from packages/browseros-agent/dist/ apps/app/wxt.config.ts sets outDir: 'dist' and WXT suffixes the mode, so a dev build lands in apps/app/dist/chrome-mv3-dev.
Links to packages/browseros-agent/CONTRIBUTING.md That file does not exist. Now points at the package README.md and CLAUDE.md.
"Node.js 18+, ~500MB disk, 10 minutes" Bun, plus Gotools/dev/run.sh exits with an install prompt when Go is missing, so dev:setup and dev:watch both fail without it — plus Rust for crates/.
"Testing: Vitest (not Jest)" Tests run under bun test (apps/app test script shells out to scripts/run-bun-test.ts, and the agent CLAUDE.md says bun test).
Structure tree with src/lib, src/sidepanel, src/newtab, src/background The agent workspace is apps/, crates/ and packages/. Also packages/browseros/build/ is really bos_build/.

Two further changes:

  • Code standards now link to the per-package CLAUDE.md files instead of restating them. The hand-copied copy had drifted (Vitest, and Zod/alias rules that aren't in the ground rules) while the real rules — extensionless imports, kebab-case, @browseros/shared constants — were missing entirely. Restating them here is what let them rot; the highlights that remain are corrected against the source.
  • Browser setup gained the uv sync and cp .env.example .env steps that bos_build/README.md documents, plus --show-plan. The existing browseros build invocations were correct and are unchanged.

docs/contributing.mdx

The published page carries the same class of errors:

  • apps/controller-ext does not exist — apps/ is app, app-onboard, claw-app, claw-onboard, claw-server-rust, cli, server. Listed apps/cli instead.
  • Same per-app .env.example copies, same bare dist/ load-unpacked path.
  • bun run build:ext is not a script; row removed.
  • Vitest → bun test.

Verification

I ran the documented paths rather than only reading them:

  • bun installbun run codegen:agentbun run build:agent:dev produces apps/app/dist/chrome-mv3-dev. Worth noting: build:agent:dev alone fails on a fresh clone (Could not load apps/app/generated/graphql/gql), so the doc names the codegen step explicitly.
  • uv sync then uv run browseros build --list and --help both work, confirming the browser commands and the --chromium-src / --provision / --show-plan flags.
  • Every relative link and every repo path referenced in the rewritten file resolves.
  • git diff --check is clean.

No code changes; docs only.

🤖 Generated with Claude Code

Every command in the agent setup path was wrong for the current repo, so a new
contributor following CONTRIBUTING.md could not reach a working build.

CONTRIBUTING.md:

- `yarn install` -> `bun install`. The agent workspace pins `bun@1.3.6` and
  marks npm/yarn/pnpm as `please-use-bun` in `engines`; there is no yarn.lock.
- `cp .env.example .env` -> `cp .env.development.example .env.development`.
  No `.env.example` exists; the per-app env files were merged into root ones.
- `yarn build:dev` -> `bun run dev:setup` and `bun run dev:watch`. There is no
  `build:dev` script at the workspace root.
- The unpacked extension is at `apps/app/dist/chrome-mv3-dev`, not
  `packages/browseros-agent/dist/`. WXT sets `outDir: 'dist'` and suffixes the
  mode.
- Dropped the link to `packages/browseros-agent/CONTRIBUTING.md`, which does not
  exist, in favour of the package README and the CLAUDE.md ground rules.
- Prerequisites now name Bun, Go (required by `tools/dev/run.sh`, so `dev:setup`
  and `dev:watch` fail without it) and Rust, instead of "Node.js 18+".
- Code standards pointed at the per-package CLAUDE.md files rather than
  restating them, and the test runner is `bun test`, not Vitest.
- Project structure redrawn from the tree as it is: apps/, crates/ and
  packages/ under browseros-agent, and `bos_build/` rather than `build/`.
- Browser setup gained the `uv sync` and `cp .env.example .env` steps the build
  README documents, plus `--show-plan`.

docs/contributing.mdx carried the same class of errors:

- `apps/controller-ext` does not exist; listed `apps/cli` instead.
- Same per-app env copy, same `dist/` load-unpacked path.
- Removed `bun run build:ext`, which is not a script.
- Vitest -> `bun test`.

Verified by running the documented paths: `bun install`, `bun run codegen:agent`
and `bun run build:agent:dev` produce `apps/app/dist/chrome-mv3-dev`, and
`uv run browseros build --list` works after `uv sync`. Every relative link and
path referenced now resolves.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@greptile-apps

greptile-apps Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

PR author is not in the allowed authors list.

@DaniAkash

Copy link
Copy Markdown
Contributor

already fixed in #2666

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.

2 participants