Skip to content

Latest commit

 

History

History
61 lines (46 loc) · 2.68 KB

File metadata and controls

61 lines (46 loc) · 2.68 KB

Contributing to Rakazo

Thanks for helping improve Rakazo. Keep changes focused and testable.

Run locally

See README.md for full details. Quick start from the repo root:

cp .env.example .env
# Set BETTER_AUTH_SECRET and ENCRYPTION_KEY to long random strings.
docker compose --env-file .env -f infra/compose/docker-compose.yml up postgres -d
pnpm install
pnpm db:generate
pnpm db:migrate
pnpm sandbox:build
pnpm dev

Checks before you open a PR

Command When to run
pnpm test Default. Units, properties, and in-process contracts. Scripted runtime, fake sandbox, in-memory wakeup — no live connector or model-provider calls.
pnpm test:integration Postgres via Testcontainers: product journeys, authorization, executor lifecycle, Graphile / LISTEN/NOTIFY. Needs Docker.
pnpm test:e2e Playwright against the emulated API. Needs Docker.
pnpm test:topology Local product-path smoke: Docker computer + Graphile worker recovery. Needs Docker. Not PR CI.
pnpm test:canary Live OpenRouter / E2B canaries. Needs keys. Not PR CI.
pnpm test:computer Real vision model + E2B desktop. Needs keys; see README. Not PR CI.
pnpm check TypeScript (tsc) across the monorepo.
pnpm lint Biome lint and format check.

CI runs pnpm lint, pnpm check, production builds (including Electron preload smoke), pnpm test, pnpm test:integration, and pnpm test:e2e on every PR.

Secrets and configuration

  • Never commit .env files or secrets.
  • Never paste API keys, tokens, or passwords in issues or PRs.
  • Use placeholders in examples (your-openrouter-key, etc.).

The product path is Pi + Docker + Graphile. Emulator settings (AGENT_RUNTIME=scripted, SANDBOX_PROVIDER=fake, WAKEUP_DRIVER=memory) are for tests only.

Integrations can use Composio or Pipedream Connect as optional managed app catalogs. Users can also install HTTPS MCP servers (including Treg) and bounded OpenAPI tool sources. Connector tests must stay deterministic and offline. Never put connector credentials in capability config, fixtures, logs, or snapshots; use the encrypted secret store and fake placeholders.

Pull requests

  • Keep PRs small and easy to review.
  • Target the main branch.
  • Describe what changed and how you tested (e.g. pnpm test, manual steps).
  • Link related issues when applicable.

Contact

Address Use for
security@rakazo.com Vulnerabilities only — see SECURITY.md
support@rakazo.com User and support questions
elie@rakazo.com Maintainer