Skip to content

Commit 9baf2b6

Browse files
author
Dingjie Song
committed
docs: tighten README onboarding and FAQ
1 parent 495a591 commit 9baf2b6

4 files changed

Lines changed: 203 additions & 128 deletions

File tree

README.md

Lines changed: 79 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,19 @@
2626
<a href="./README.md">English</a> | <a href="./README.zh-CN.md">中文</a>
2727
</p>
2828

29+
## Table of Contents
30+
31+
- [Overview](#overview)
32+
- [Highlights](#highlights)
33+
- [Quick Start](#quick-start)
34+
- [Configuration](#configuration)
35+
- [Research Lab - Quick Example](#research-lab-quick-example)
36+
- [Usage Guide](#usage-guide)
37+
- [FAQ](./docs/faq.md)
38+
- [License](#license)
39+
- [Acknowledgments](#acknowledgments)
40+
- [Support & Community](#support--community)
41+
2942
## Overview
3043

3144
VibeLab is a general-purpose AI research assistant designed to help researchers and builders execute end-to-end projects across different domains. From shaping an initial idea to running experiments and preparing publication-ready outputs, VibeLab keeps the full workflow in one place so teams can focus on research quality and iteration speed.
@@ -35,8 +48,7 @@ VibeLab is a general-purpose AI research assistant designed to help researchers
3548
- **🔬 Research Lab** — Structured dashboard for end-to-end research: define your brief, generate a pipeline of tasks, track progress across Survey → Ideation → Experiment → Publication → Promotion, and inspect source papers, ideas (rendered with LaTeX math), and cache artifacts — all at a glance
3649
- **📚 100+ Research Skills** — A curated library spanning idea generation, code survey, experiment development & analysis, paper writing, review response, and delivery — automatically discovered by agents and applied as task-level assistance
3750
- **🗂️ Chat-Driven Pipeline** — Describe your research idea in Chat; the agent uses the `inno-pipeline-planner` skill to interactively generate a structured research brief and task list — no manual templates needed
38-
- **🤖 Multi-Agent Backend** — Seamlessly switch between Claude Code as your execution engine; compatible with Claude Sonnet 4.5, Opus 4.5
39-
<!-- - Cursor CLI and Codex support coming soon; compatible with GPT-5.2 -->
51+
- **🤖 Multi-Agent Backend** — Seamlessly switch between Claude Code, Gemini CLI, and Codex as your execution engines
4052

4153
<details>
4254
<summary><span style="font-size: 1.17em; font-weight: 600;">More Features</span></summary>
@@ -56,8 +68,11 @@ VibeLab is a general-purpose AI research assistant designed to help researchers
5668
- [Node.js](https://nodejs.org/) v20 or higher (**v22 LTS recommended**, see `.nvmrc`)
5769
- At least one of the following CLI tools installed and configured:
5870
- [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code)
59-
<!-- - [Cursor CLI](https://cursor.com/cli) -->
60-
<!-- - [Codex](https://developers.openai.com/codex/cli/) -->
71+
- [Gemini CLI](https://geminicli.com/docs/get-started/installation/)
72+
- [Codex CLI](https://developers.openai.com/codex/cli/)
73+
- Some systems need native build tools for dependencies like `node-pty` and `better-sqlite3`. If `npm install` fails, see [FAQ](docs/faq.md).
74+
75+
Cursor agent support is in progress and coming soon.
6176

6277
### Installation
6378

@@ -78,48 +93,42 @@ cp .env.example .env
7893
# Edit .env with your preferred settings (port, etc.)
7994
```
8095

81-
4. **Check runtime network lock (important for web search):**
82-
```bash
83-
echo "${CODEX_SANDBOX_NETWORK_DISABLED:-0}"
84-
```
85-
86-
If the output is `1`, network requests can remain blocked even if Settings permissions are opened.
87-
Remove or override this variable in your deployment/startup layer (shell profile, systemd, Docker, PM2), then restart VibeLab.
96+
Need custom ports, auth, or workspace settings? See [docs/configuration.md](docs/configuration.md).
8897

89-
5. **Start the application:**
98+
4. **Start the application:**
9099
```bash
91100
# Development mode (with hot reload)
92101
npm run dev
93102
```
94103

95-
6. **Open your browser** at `http://localhost:5173` (or the port you configured in `.env`)
96-
97-
## Research Lab — Quick Example
98-
99-
The core feature of VibeLab is the **Research Lab**.
104+
5. **Open your browser** at `http://localhost:5173` (or the port you configured in `.env`)
100105

101-
### Step 0 — Configure Any One Agent in Settings First
106+
If agent web search does not work later, see **Troubleshooting Web Search** below.
102107

103-
Before generating a pipeline, open **Settings** (gear icon) and configure at least one agent:
108+
## Configuration
104109

105-
- **Claude Code**: complete CLI login and verify the tool is available. If you need web search, allow `WebSearch` and `WebFetch` in Permissions.
106-
<!-- - **Cursor CLI**: complete CLI login and verify the tool is available. If you need web search, allow network-capable shell commands (for example `Shell(curl)`, `Shell(wget)`, `Shell(python)`). -->
107-
<!-- - **Codex**: complete CLI login and choose a suitable permission mode. -->
110+
VibeLab reads local settings from `.env`. For most users, the only required step is copying `.env.example` to `.env`, but these are the settings you are most likely to adjust early:
108111

109-
You only need **one** agent configured to continue. For webpage search, you can use Claude as long as network-related permissions are enabled.
110-
<!-- For webpage search, you can use Claude, Cursor, or Codex as long as network-related permissions are enabled for the selected agent. -->
112+
- `PORT`: backend server port
113+
- `VITE_PORT`: frontend dev server port
114+
- `HOST`: bind address for the frontend and backend
115+
- `JWT_SECRET`: required before exposing VibeLab beyond localhost
116+
- `WORKSPACES_ROOT`: default root for new project workspaces
111117

112-
### Step 1 — Open Chat and Describe Your Research Idea
118+
For the full environment reference and deployment notes, see [docs/configuration.md](docs/configuration.md).
113119

114-
VibeLab opens **Chat** by default. If no research pipeline exists, an onboarding banner guides you to get started. Click **Use in Chat** to inject a template prompt, or simply describe your research idea in your own words.
120+
<a id="research-lab-quick-example"></a>
115121

116-
### Step 2Agent Generates Your Pipeline
122+
## Research LabQuick Example
117123

118-
The agent runs the `inno-pipeline-planner` skill, asking you a few rounds of questions to understand your topic, scope, and goals. Once enough context is gathered, it generates `.pipeline/docs/research_brief.json` and `.pipeline/tasks/tasks.json` automatically.
124+
The core feature of VibeLab is the **Research Lab**.
119125

120-
### Step 3 — Review Tasks and Execute
126+
The typical flow is:
121127

122-
Switch to **Research Lab** to review the generated task list and research brief. Click **Go to Chat** or **Use in Chat** on any task to send it to the agent for execution.
128+
1. Configure one supported agent in **Settings**.
129+
2. Describe your research idea in **Chat**.
130+
3. Let the agent generate `.pipeline/docs/research_brief.json` and `.pipeline/tasks/tasks.json`.
131+
4. Review the pipeline in **Research Lab** and send tasks back to **Chat** for execution.
123132

124133
For full step-by-step operations, see **Usage Guide** below.
125134

@@ -131,9 +140,8 @@ After starting VibeLab, open your browser and follow the steps below.
131140

132141
When you first open VibeLab you will see the **Projects** sidebar. You have two options:
133142

134-
- **Open an existing project** — VibeLab auto-discovers projects from Claude Code sessions. Click any listed project to open it.
135-
<!-- VibeLab also supports Cursor and Codex sessions. -->
136-
- **Create a new project** — Click the **"+"** button, choose a directory on your machine, and VibeLab will set up the workspace: `.claude/`, `.agents/`, `.cursor/` (with `skills/` symlinked from the app), preset dirs (`Survey/references`, `Survey/reports`, `Ideation/ideas`, `Ideation/references`, `Experiment/code_references`, `Experiment/datasets`, `Experiment/core_code`, `Experiment/analysis`, `Publication/paper`, `Publication/homepage`, `Publication/slide`), and **instance.json** at the project root with absolute paths for those directories.
143+
- **Open an existing project** — VibeLab auto-discovers registered projects and linked sessions from Claude Code, Codex, and Gemini.
144+
- **Create a new project** — Click the **"+"** button, choose a directory on your machine, and VibeLab will set up the workspace: agent folders such as `.claude/`, `.agents/`, `.gemini/`, standard workspace metadata, linked `skills/` directories, preset research dirs (`Survey/references`, `Survey/reports`, `Ideation/ideas`, `Ideation/references`, `Experiment/code_references`, `Experiment/datasets`, `Experiment/core_code`, `Experiment/analysis`, `Publication/paper`, `Publication/homepage`, `Publication/slide`), and **instance.json** at the project root with absolute paths for those directories. Cursor agent support is coming soon.
137145

138146
> **Default project storage path:** New projects are stored under `~/vibelab` by default. You can change this in **Settings → Appearance → Default Project Path**, or set the `WORKSPACES_ROOT` environment variable. The setting is persisted in `~/.claude/project-config.json`.
139147
@@ -148,33 +156,38 @@ Describe your research idea — even a rough one is fine. The agent uses the `in
148156
### Step 3 — Review in Research Lab and Execute Tasks
149157

150158
Switch to **Research Lab** to review the generated tasks, progress metrics, and artifacts. Then execute tasks:
151-
1. Choose a CLI backend from the **CLI selector** (Claude Code).
152-
<!-- Also supports Cursor CLI / Codex. -->
159+
1. Choose a CLI backend from the **CLI selector** (Claude Code, Gemini CLI, or Codex).
153160
2. In **Research Lab**, click **Go to Chat** or **Use in Chat** on a pending task.
154161
3. The agent executes the task and writes results back to the project.
155162

156-
### Step 4 — Enable Network Access for Web Search (Claude)
157-
<!-- Also applies to Cursor / Codex -->
163+
### Step 4 — Troubleshooting Web Search
158164

159-
If the agent cannot search webpages, your current permission settings are likely too restrictive. If web search still fails after you open permissions, ensure you have checked the **runtime network lock** in **Quick Start** (step 4) — if `CODEX_SANDBOX_NETWORK_DISABLED` is `1`, Settings alone cannot fix it.
165+
If the agent cannot search webpages, your current permission settings are likely too restrictive. Also check whether a runtime network lock is still active for the process.
160166

161-
1. Open **Settings** (gear icon in sidebar).
162-
2. Go to **Permissions**, then choose your current agent:
167+
1. Check the runtime network lock:
168+
```bash
169+
echo "${CODEX_SANDBOX_NETWORK_DISABLED:-0}"
170+
```
171+
172+
If the output is `1`, network requests can remain blocked even if Settings permissions are opened. Remove or override this variable in your deployment or startup layer (shell profile, systemd, Docker, PM2), then restart VibeLab.
173+
174+
2. Open **Settings** (gear icon in sidebar).
175+
3. Go to **Permissions**, then choose your current agent:
163176
- **Claude Code**:
164177
- Enable `WebSearch` and `WebFetch` in **Allowed Tools**.
165178
- Ensure they are not present in **Blocked Tools**.
166179
- Optionally enable **Skip permission prompts** if you want fewer confirmations.
167-
<!-- - **Cursor CLI**:
168-
- Add required commands to **Allowed Shell Commands** (for example `Shell(curl)`, `Shell(wget)`, `Shell(python)`, `Shell(node)`).
169-
- Ensure they are not present in **Blocked Shell Commands**.
170-
- Optionally enable **Skip permission prompts** if you want fewer confirmations.
180+
- **Gemini CLI**:
181+
- Choose an appropriate **Permission Mode**.
182+
- Allow `google_web_search` and `web_fetch` in **Allowed Tools** when web access is required.
183+
- Ensure they are not present in **Blocked Tools**.
171184
- **Codex**:
172-
- In **Permission Mode**, switch to **Bypass Permissions** when web access is required. -->
173-
3. Return to **Chat**, start a new message, and retry your web-search prompt.
185+
- In **Permission Mode**, switch to **Bypass Permissions** when web access is required.
186+
4. Return to **Chat**, start a new message, and retry your web-search prompt.
174187

175-
<!-- Codex mode differences:
188+
Codex permission mode notes:
176189
- **Default / Accept Edits**: sandboxed execution; network may still be restricted by session policy.
177-
- **Bypass Permissions**: `sandboxMode=danger-full-access` with full disk and network access. -->
190+
- **Bypass Permissions**: `sandboxMode=danger-full-access` with full disk and network access.
178191

179192
Security note:
180193
- Use permissive settings only in trusted projects/environments.
@@ -199,11 +212,14 @@ You can switch tabs at any time:
199212

200213
| Tab | What it does |
201214
|-----|-------------|
202-
| **Chat** | **Default first screen.** Describe your research idea to generate the pipeline, or execute tasks with the selected agent. Supports streaming responses, session resume, and message history. |
203-
| **Research Lab** | Review research brief, task progress, and artifacts. Tasks and briefs are generated via Chat. |
204-
| **Shell** | Drop directly into the CLI terminal for full command-line control. |
205-
| **Files** | Browse the project file tree, view and edit files with syntax highlighting, create/rename/delete files. |
206-
| **Git** | View diffs, stage changes, commit, and switch branches — all from the UI. |
215+
| **Chat** | Start here. Use it to describe your research idea, generate a pipeline, and run tasks with the selected agent. |
216+
| **Survey** | Review papers, literature graphs, notes, and survey-stage tasks for the current project. |
217+
| **Research Lab** | Review the research brief, task list, progress, and generated artifacts in one place. |
218+
| **Skills** | Browse installed skills, inspect their contents, and import additional local skills. |
219+
| **Compute** | Manage compute resources and run experiment workloads from one place. |
220+
| **Shell** | Use the embedded terminal when you need direct CLI access, trust prompts, or manual commands. |
221+
| **Files** | Browse, open, create, rename, and edit project files with syntax highlighting. |
222+
| **Git** | Inspect diffs, stage changes, commit, and switch branches without leaving the app. |
207223

208224
#### Research Skills
209225

@@ -238,8 +254,7 @@ VibeLab is fully responsive. On mobile devices:
238254
### Backend (Node.js + Express)
239255
- **Express Server** - RESTful API with static file serving
240256
- **WebSocket Server** - Communication for chats and project refresh
241-
- **Agent Integration (Claude Code)** - Process spawning and management
242-
<!-- Also supports Cursor CLI / Codex -->
257+
- **Agent Integration (Claude Code, Gemini CLI, Codex)** - Process spawning, streaming, and session management
243258
- **File System API** - Exposing file browser for projects
244259

245260
### Frontend (React + Vite)
@@ -251,17 +266,18 @@ VibeLab is fully responsive. On mobile devices:
251266
<details>
252267
<summary><span style="font-size: 1.17em; font-weight: 600;">Security & Tools Configuration</span></summary>
253268

254-
**🔒 Important Notice**: All Claude Code tools are **disabled by default**. This prevents potentially harmful operations from running automatically.
269+
**🔒 Important Notice**: Agent permissions are configurable per provider. Review **Settings → Permissions** before enabling broad file, shell, or web access.
255270

256271
### Enabling Tools
257272

258-
To use Claude Code's full functionality, you'll need to manually enable tools:
273+
To use web and tool-heavy workflows safely:
259274

260-
1. **Open Tools Settings** - Click the gear icon in the sidebar
261-
3. **Enable Selectively** - Turn on only the tools you need
275+
1. **Open Settings** - Click the gear icon in the sidebar
276+
2. **Choose an Agent** - Claude Code, Gemini CLI, or Codex
277+
3. **Enable Selectively** - Turn on only the tools or permission mode you need
262278
4. **Apply Settings** - Your preferences are saved locally
263279

264-
**Recommended approach**: Start with basic tools enabled and add more as needed. You can always adjust these settings later.
280+
**Recommended approach**: Start with the safest permission mode that still lets you complete the task, then relax settings only when needed.
265281

266282
</details>
267283

@@ -279,7 +295,7 @@ We welcome contributions! Please follow these guidelines:
279295
#### Development Process
280296
1. **Make your changes** following the existing code style
281297
2. **Test thoroughly** - ensure all features work correctly
282-
3. **Run quality checks**: `npm run lint && npm run format`
298+
3. **Run quality checks**: `npm run typecheck && npm run build`
283299
4. **Commit** with descriptive messages following [Conventional Commits](https://conventionalcommits.org/)
284300
5. **Push** to your branch: `git push origin feature/amazing-feature`
285301
6. **Submit** a Pull Request with:
@@ -308,8 +324,8 @@ This project is open source and free to use, modify, and distribute under the GP
308324

309325
### Built With
310326
- **[Claude Code](https://docs.anthropic.com/en/docs/claude-code)** - Anthropic's official CLI
311-
<!-- - **[Cursor CLI](https://docs.cursor.com/en/cli/overview)** - Cursor's official CLI -->
312-
<!-- - **[Codex](https://developers.openai.com/codex)** - OpenAI Codex -->
327+
- **[Gemini CLI](https://geminicli.com/docs/get-started/installation/)** - Google's Gemini command-line agent
328+
- **[Codex](https://developers.openai.com/codex)** - OpenAI Codex
313329
- **[React](https://react.dev/)** - User interface library
314330
- **[Vite](https://vitejs.dev/)** - Fast build tool and dev server
315331
- **[Tailwind CSS](https://tailwindcss.com/)** - Utility-first CSS framework

0 commit comments

Comments
 (0)