SignalPilot CLI - Your Trusted CoPilot for Data Analysis
Project description
SignalPilot Installer CLI
This installer CLI is a bootstrap installer that sets up the SignalPilot-AI Jupyter extension in one command.
**The CLI is NOT the product.** It's a convenience installer. The **SignalPilot Jupyter extension** (agentic harness) is the actual product.What You're Installing
SignalPilot is a Jupyter-native AI agentic harness that investigates data by connecting to your organizational context:
Four core capabilities:
- 🔌 Multi-Source Context — Auto-connects to db warehouse, dbt lineage, query history, Slack threads, Jira tickets, and past investigations via MCP
- 🔄 Long-Running Agent Loop — Plans, executes, iterates until task complete with analyst-in-the-loop approval (not single-shot completions)
- 🧠 Multi-Session Memory — Remembers past hypotheses, validated assumptions, known data quirks across investigations
- 📚 Skills & Rules — Custom analysis patterns (skills) + team coding standards (rules) + business logic
Security: Zero data retention • Read-only access • Local-first execution • SOC 2 in progress
Quick Install
Prerequisites: macOS, Linux, or Windows (WSL) • Internet connection
Don't have uv? Install it first (takes 10 seconds):
curl -LsSf https://astral.sh/uv/install.sh | sh
Install SignalPilot:
uvx signalpilot
What happens:
- Creates
~/SignalPilotHomeworkspace with starter notebooks - Installs isolated Python 3.12 + Jupyter Lab + SignalPilot extension
- Installs data packages (pandas, numpy, matplotlib, seaborn, plotly)
- Optimizes Jupyter cache for fast startup
- Launches Jupyter Lab at
http://localhost:8888
Time: ~2 minutes
Why uv?
- 10-100x faster than pip/conda for package installation
- SignalPilot runs on it — native integration with kernel
- Modern Python package management with better dependency resolution
Launch Jupyter Lab Anytime
Once installed, start Jupyter Lab with:
uvx signalpilot lab
What this does:
- Opens Jupyter Lab in
~/SignalPilotHome(default workspace) - Uses existing
.venv(no reinstallation) - SignalPilot extension pre-loaded
- Opens browser at
http://localhost:8888
What Gets Installed
Python Packages:
signalpilot-ai— AI agent integration (the actual product)jupyterlab— Modern Jupyter interfacepandas,numpy— Data manipulationmatplotlib,seaborn,plotly— Visualizationpython-dotenv,tomli— Configuration utilities
Directory Structure:
~/SignalPilotHome/
├── user-skills/ # Custom analysis patterns
├── user-rules/ # Team coding standards
├── team-workspace/ # Shared notebooks (git-tracked)
├── demo-project/ # Example notebooks
├── pyproject.toml # Python project config
├── start-here.ipynb # Quick start guide
└── .venv/ # Python environment
Working in Different Directories
By default, SignalPilot works in ~/SignalPilotHome. Use these flags to customize:
--here flag: Use current directory with default environment
cd ~/projects/my-analysis
uvx signalpilot lab --here
What this does:
- Opens Jupyter Lab in your current directory
- Uses default environment from
~/SignalPilotHome/.venv - Perfect for quick exploration without setting up new environment
Use case: Analyzing data files in an existing project folder
--project flag: Use current directory with local environment
cd ~/projects/custom-analytics
uvx signalpilot lab --project
What this does:
- Opens Jupyter Lab in your current directory
- Uses local
.venvin that directory - Great for project-specific work with custom dependencies
Requirements:
- A
.venvmust exist in current directory - Must have
jupyterlabandsignalpilot-aiinstalled
Create project environment:
mkdir ~/projects/custom-analytics && cd ~/projects/custom-analytics
uv venv --seed --python 3.12
source .venv/bin/activate
uv pip install jupyterlab signalpilot-ai pandas numpy matplotlib plotly
uvx signalpilot lab --project
Pass Jupyter Lab Arguments
You can pass any Jupyter Lab flags after the command:
# Custom port
uvx signalpilot lab --port=8888
# Disable browser auto-open
uvx signalpilot lab --no-browser
# Combine with directory flags
uvx signalpilot lab --here --port=8888
# Bind to all interfaces (remote access)
uvx signalpilot lab --ip=0.0.0.0 --port=9999
All standard jupyter lab arguments work.
Alternative Installation Methods
Option 1: Run with uvx (Recommended)
uvx signalpilot
No permanent installation needed. Perfect for most users.
Option 2: Install with uv tool
uv tool install signalpilot
sp init
Installs sp command globally. Use sp lab to launch later.
Option 3: Install with pip
pip install signalpilot
sp init
Works but slower than uv (10-100x). May have dependency conflicts.
Requirements
- Python 3.10 or higher
- uv package manager (recommended)
Links
License
MIT License - See LICENSE file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file signalpilot-0.5.1.tar.gz.
File metadata
- Download URL: signalpilot-0.5.1.tar.gz
- Upload date:
- Size: 395.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7290bd7c5a6cda5add0075de27291df0660fa82ea809f63778c2c9f34f90f855
|
|
| MD5 |
6d1f9dda751a385f9dd4156fce64ed01
|
|
| BLAKE2b-256 |
6bc6f3d9e60c1a0667d6fb1c6b8e7c6e786731c18964b8a904cb61872e5f54e5
|
File details
Details for the file signalpilot-0.5.1-py3-none-any.whl.
File metadata
- Download URL: signalpilot-0.5.1-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9048abf8646418ebead831daf0cfd600eacd1a8d9e839d000db770cc58747e20
|
|
| MD5 |
2d4c5805355813c0929ecdf4152fc18b
|
|
| BLAKE2b-256 |
16709fe7d7bae21caf08619ca8b7a4be80d12c83423af98985ac3360150595db
|