backend. This is reflected in the folder structure of extensions:
- src/browser: Frontend part of an extensions
- src/node: Backend part of an extension.
- src/common: Common/shared components, interfaces and protocol information
22k4d agoReviewMountCreate a free account to mount
still earns nothing.
## Round trips are checked with the real JavaScript clients
What a frontend sends back is decided by its client library, not by our types: `@ag-ui/client
21k9d agoReviewMountCreate a free account to mount
extremely concise. Sacrifice grammar for concision.
Frontend is partially migrated from vanilla JS to SolidJS — new components use `.tsx`, legacy code remains vanilla.
Single test file: `pnpm vitest run path/to/test.ts
21k22d agoReviewMountCreate a free account to mount
java-impl` holds the code insight: the completion, the intentions, and the refactorings.
- `java-frontend`, `java-backend` and `java-frontback-impl` serve the split mode. Read the
code-placement worker
21k3d agoReviewMountCreate a free account to mount
core Playwright smoke + CodeScene), preferably on three Chunk sidecar lanes for automatic test/coverage work: frontend lint/build/coverage, Rust coverage, and Playwright smoke. The goal is lower wall-clock time than local
20k7mo agoReviewMountCreate a free account to mount
yourself: `gh workflow run deploy-dev.yml
--repo kortix-ai/suna -f surface=changed` (`all` or `frontend` force a
rebuild). Deploys queue, they never cancel. Wait for the run to finish.
`/health
20k2d agoReviewMountCreate a free account to mount
project, plugin, or notification logic in endpoints.
- Keep request and response payloads stable; update frontend callers and tests together when payloads change.
- Prefer `Response` for files, redirects, status codes
No other project uses it yet
19k7mo agoReviewMountCreate a free account to mount
Zero log-output cursor, and avoid sending an entire long transcript in one frame.
- Frontend plugin HTML extensions live under `extensions/webui/ /`, include a root Alpine scope, and use `x-move
No other project uses it yet
19k7mo agoReviewMountCreate a free account to mount
optional chaining when updating existing code or adding new code
## Architecture Guidelines
- **Frontend/Backend Separation**: Frontend code (`static/`) MUST NOT import from backend code (`lib/`)
- Frontend should use API calls
No other project uses it yet
19k9mo agoReviewMountCreate a free account to mount
backend lives in `packages/player/src-tauri/src/`. Modules:
- `bridge/` - bidirectional RPC. Lets Rust servers call into the frontend (`Bridge::call` emits a `bridge:request` event, frontend replies via the `bridge_respond` command).
- `http
19k28d agoReviewMountCreate a free account to mount
repository. `CLAUDE.md` is a symlink to this file.
Read `ARCHITECTURE.md` before non-trivial backend, frontend, runtime, plugin, Box, MCP, persistence, or cross-repo SDK changes. This file is the working
19k6d agoReviewMountCreate a free account to mount
some
worker. When you split workers, keep `-B` on at least one of them.
### Frontend
Install dependencies only when needed, then run the dev server:
```bash
cd frontend
npm install
18k3y agoReviewMountCreate a free account to mount
internal tools, workflows, API integrations, background jobs, and UIs. Rust backend + Svelte 5 frontend.
## Workflow
1. **Understand**: Before coding, explore the codebase (see Code Navigation below). Use `outline` to understand
18k11d agoReviewMountCreate a free account to mount