A research workspace where the agent works beside you: chat, files, PDFs and notebooks in one dock, and the agent can also create custom viewers and apps when necessary
This is an early build for testers. Expect rough edges, and feel free to raise issues.

claude once and log in. The agent and the literature review run through it.pnpm install
uv sync
pnpm start
Then open http://localhost:4173. pnpm start builds the app first, so the first start takes a minute. Ctrl-C stops everything it started.
~/Panel/panel.db holds your conversations and everything the agents did.~/Panel/workspaces is where new Workspaces are created, unless you pick another folder.Both are outside this folder, so deleting or re-cloning the repo keeps them.
Copy apps/server/.env.example to apps/server/.env and set OPENAI_API_KEY. This adds "OpenAI API" to the agent picker, for chat and tools.
It does not run literature reviews or the hypothesis Modules: those need an agent that can search the web, and today only Claude Code can. Without a key, the picker shows OpenAI as not set up, which is expected.
pnpm start is in, then press Retry.pnpm dev:doctor. It says what is holding each port and how to clear it.The UI has multiple configurable windows, called Panes, that can display things ranging from image files, data files, code, as well as chat sessions. This is critical for researchers who often have to context switch between different types of files.
A default set of Panes are provided for common use cases. But custom Panes can also be added by humans and agents, such as a PDB viewer or SQLite visualizer.
Modules are similar to Skills but with additional definitions to support inter-module workflows and integration with the workspace.
Specifically, Modules have typed definitions for Inputs, Outputs, and Intermediates.
Inputs and Outputs are straightforward. Intermediates refer to objects that provide observability, such as the Chain-of-Thought or scratchpad for an agentic Module, or may be intermediate outputs in a multi-stage Module. These are especially important for processes that need transparency or long-running jobs that should show progress.
Having typed definitions for these enable validation at runtime and make it easier for humans and agents to develop custom Modules for downstream tasks and Panes for visualizations.
A data abstraction layer (DAL) bridges in-memory and filesystem objects. A DAL helps to map a URI to either an in-memory store or a local file, so that the Module just has to concern itself with the manipulation of the object.
594 commits
Python
53.8%
TypeScript
38.5%
Vue
6.7%
A research workspace where the agent works beside you: chat, files, PDFs and notebooks in one dock, and the agent can also create custom viewers and apps when necessary
This is an early build for testers. Expect rough edges, and feel free to raise issues.

claude once and log in. The agent and the literature review run through it.pnpm install
uv sync
pnpm start
Then open http://localhost:4173. pnpm start builds the app first, so the first start takes a minute. Ctrl-C stops everything it started.
~/Panel/panel.db holds your conversations and everything the agents did.~/Panel/workspaces is where new Workspaces are created, unless you pick another folder.Both are outside this folder, so deleting or re-cloning the repo keeps them.
Copy apps/server/.env.example to apps/server/.env and set OPENAI_API_KEY. This adds "OpenAI API" to the agent picker, for chat and tools.
It does not run literature reviews or the hypothesis Modules: those need an agent that can search the web, and today only Claude Code can. Without a key, the picker shows OpenAI as not set up, which is expected.
pnpm start is in, then press Retry.pnpm dev:doctor. It says what is holding each port and how to clear it.The UI has multiple configurable windows, called Panes, that can display things ranging from image files, data files, code, as well as chat sessions. This is critical for researchers who often have to context switch between different types of files.
A default set of Panes are provided for common use cases. But custom Panes can also be added by humans and agents, such as a PDB viewer or SQLite visualizer.
Modules are similar to Skills but with additional definitions to support inter-module workflows and integration with the workspace.
Specifically, Modules have typed definitions for Inputs, Outputs, and Intermediates.
Inputs and Outputs are straightforward. Intermediates refer to objects that provide observability, such as the Chain-of-Thought or scratchpad for an agentic Module, or may be intermediate outputs in a multi-stage Module. These are especially important for processes that need transparency or long-running jobs that should show progress.
Having typed definitions for these enable validation at runtime and make it easier for humans and agents to develop custom Modules for downstream tasks and Panes for visualizations.
A data abstraction layer (DAL) bridges in-memory and filesystem objects. A DAL helps to map a URI to either an in-memory store or a local file, so that the Module just has to concern itself with the manipulation of the object.
594 commits
Python
53.8%
TypeScript
38.5%
Vue
6.7%