inline in `server.js`
- **CLI safety:** All commands use `execFile` (no shell) + `SafeSegment` input validation
- **Frontend:** Vanilla JS in `js/`, components render via innerHTML, global state in `js/state.js`
- **Real-time:** WebSocket
even for `.ts` sources.
- **Backend**: Express 5, better-sqlite3, run via `tsx` in dev.
- **Frontend**: vanilla TS + Vite. No framework, no CSS library. Keep it that way - the small dependency
Windows 用 `win_start.bat` / `win_stop.bat`。
- 端口契约固定:Redis 16379 / 后端 18000 / 前端 15173。
### 前端
```bash
cd frontend
pnpm i # 安装依赖
pnpm run dev # 开发服务器
pnpm run build # 类型检查 + 构建
pnpm run test
docs/](./docs/) for the design.
## Two runtimes
This is a polyglot monorepo. **The frontend and the backend are separate processes and
separate package managers.** Getting this wrong is the most
should follow these guidelines.
## 🏗️ Project Structure
### Core Components
- **Backend** (`/backend/src/`) - Express.js server with TypeScript
- **Frontend** (`/frontend/src/`) - React.js with TypeScript
- **MCP Server** (`/mcp-server/src/`) - TypeScript MCP server for agent communication
- **CLI** (`/cli/src
codenib/code_chunking/CLAUDE.md`](../codenib/code_chunking/CLAUDE.md).
- **`.c` files** use the `cpp` chunker (not a separate C chunker).
## Frontend / web demo
The DeepWiki-style web demo (FastAPI backend `codenib/web/` + Next.js frontend
`web/` + `codenib/wiki
file. Copy `CLAUDE.local.md.example` to `CLAUDE.local.md` and fill it in for
> your environment.
## Tech Stack
- **Frontend**: React 18, Vite, Tailwind CSS, CodeMirror
- **Backend**: Node.js, Express, WebSocket (ws)
- **Database**: SQLite (better-sqlite3
base folders without approval.
- Do not change the application's dependencies without approval.
## Frontend Bundling
- If the user doesn't see a frontend change reflected in the UI, it could
code in this repository.
## Project Overview
This is a Tauri application with a TypeScript/Vite frontend. The project combines a Rust backend (Tauri) with a web frontend built using Vite
minute rule, collect the available process/thread/log evidence before stopping it; the absence of a
frontend screenshot is expected here. Read `docs/headless-agent-guidance.md` for the measured Claude/Codex
iterations and `docs/devrig-remote-development-backend-e2e.md
A file Claude Code reads at the start of every session. It holds the commands, conventions and warnings the agent needs for this project.
Where does it go?
At the repository root. Claude Code also reads CLAUDE.md files in subdirectories when it works there.
What should it contain?
Build and test commands, the project's layout, conventions that aren't obvious from the code, and mistakes to avoid. Short files tend to work better than long ones.
CLAUDE.md or AGENTS.md?
Claude Code reads CLAUDE.md; most other agents read AGENTS.md. Many projects keep one and point the other at it.