> ## Documentation Index
> Fetch the complete documentation index at: https://docs.webrayn.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Contributing

> Build, test, and commit conventions.

# Contributing

Webrain is an open-source MCP server. The workspace is a Cargo workspace with
three crates: `webrain-core`, `webrain-mcp`, and `webrain-cli`.

## Build & test

```bash theme={null}
git clone https://github.com/prokopis3/webrain
cd webrain
cargo build --release --bin webrain
cargo test
```

Rust edition 2024, MSRV 1.85.

## Commit conventions

This project uses **Semantic Versioning** and **Conventional Commits**:

```text theme={null}
<type>(<scope>): <description>
```

* Types: `feat`, `fix`, `docs`, `style`, `refactor`, `perf`, `test`, `build`,
  `ci`, `chore`, `revert`
* Scopes: `core`, `api`, `cli`, `handlers`, `tools`, `plugin`, `memory`,
  `cache`, `pipeline`, `extraction`, `login`, `navigation`, `antibot`, `llm`,
  `token`, `browser`, `serp`, `search`, `config`, `deps`, `docs`, `tests`, `ci`
* See `commitlint.config.js` for the full rules

When source code changes, update `CHANGELOG.md` under `[Unreleased]`.

## Design notes

* **One binary, subcommands via match** — no clap dependency (`webrain-cli`).
* **No unrequested abstractions** — the codebase favors stdlib and native
  platform features; deliberate simplifications are marked with `ponytail:`
  comments naming their ceiling and upgrade path.
* Every engine speaks CDP — a change to `CdpBackend` (`webrain-core`) benefits
  Chrome, lightpanda, and obscura at once.

## Where to help

* `docs/FEATURE_GAPS.md` — known gaps and priorities
* `docs/INTEGRATION_PLAN.md` — integration roadmap
* `docs/ARCHITECTURE.md` — deep-dive architecture
