Show HN: Panel – A research workspace where the agent can build its own panes
Panel: An Agentic Research Environment
Panel is a specialized workspace designed for research where an AI agent operates as a collaborator. It integrates chat interfaces, file management, PDF viewing, and notebooks into a single unified dock. Uniquely, the agent possesses the ability to construct its own custom viewers and applications on the fly to meet specific data visualization needs.
[!IMPORTANT] This project is currently in an early build phase intended for testers.
🛠️ Getting Started
Prerequisites
Before attempting installation, ensure you have the following environment:
- Node.js: Version
22.18+or24.12+ - pnpm: Installed and configured
- uv: Used for Python management (requires Python
3.12+) - Claude Code: Installed and authenticated (run
claudeto log in)
Installation Sequence
Execute the following commands in your terminal:
# Install dependencies and sync Python environment
pnpm install
uv sync
# Launch the application
pnpm start
Once the process completes, navigate to: http://localhost:4173
Note: The initial pnpm start includes a build step, so expect a delay of about a minute during the first run.
📂 Data & Storage
To ensure your data persists even if you delete or re-clone the repository, Panel stores critical information outside the project folder:
| Data Type | File Path | Description |
|---|---|---|
| Database | ~/Panel/panel.db | Stores all agent interactions and conversation history. |
| Workspaces | ~/Panel/workspaces | Default directory for created research workspaces. |
🚀 Functional Overview
Current Capabilities
- Agentic Interaction: A chat-based agent capable of reading/writing files (requests permission before tool execution).
- Workspaces: Dedicated folders with isolated chat histories and saved UI layouts.
- Collaborative Notebooks: Real-time editing of notebooks using a live kernel, shared between the user and agent.
- Asynchronous Execution: Ability to run and monitor long-term background commands.
- Dynamic Panes: The agent can program custom viewers when built-in options are insufficient.
- Literature Reviews: Generate comprehensive reviews via the chat and access them through tool cards.
Current Limitations
Broad LLM SupportCurrently only fully supports Claude Code.- Hypothesis Modules: These lack dedicated views, making their output difficult to parse.
🔑 Optional OpenAI Integration
You can integrate OpenAI by copying apps/server/.env.example to apps/server/.env and defining your OPENAI_API_KEY.
What this enables:
- Adds "OpenAI API" to the agent selection menu for general chat and tool usage.
What it does NOT enable:
Literature ReviewsHypothesis Modules
These specific features require web-search capabilities, which are currently exclusive to Claude Code.
🛠️ Troubleshooting
If you encounter the error "Panel couldn't reach its server," the backend is likely offline.
- Port Conflicts: If the app fails to load or a port is occupied, run:
pnpm dev:doctor
🏗️ Technical Architecture
The UI Logic
The interface consists of multiple configurable windows known as Panes. These can render:
- Standard files (Images, Code, Data).
- Active chat sessions.
- Custom extensions (e.g., a SQLite visualizer or PDB viewer) created by humans or agents.
Module Protocol
Modules function as advanced "Skills" with strict typing to facilitate complex workflows. The data flow can be represented as:
Intermediates are critical for transparency, providing:
- Chain-of-Thought logs.
- Scratchpads for agentic reasoning.
- Progress indicators for multi-stage, long-running jobs.
Data Abstraction Layer (DAL)
The DAL acts as a bridge between the filesystem and in-memory objects.
By mapping URIs to specific storage locations, Modules can manipulate objects without needing to manage the underlying storage logic.
License: MIT