Vigil CLI
Observable, collaborative, reproducible science platform.
✨ What's New in v0.2.0
Major update with genomics support, interactive setup, and cloud execution!
🎯 Interactive Project Setup (P3)
vigil new genomics-starter my-project --interactive
- Smart prompts with email validation
- Automatic placeholder replacement
- 97% faster (30+ min → <1 min)
🧬 Genomics Template (P0)
- Complete variant analysis workflow (filter → annotate → metrics)
- 40 synthetic variants across 10 cancer genes
- Ti/Tv ratio, depth stats, quality metrics
- Parquet format (5-10x compression)
☁️ Cloud & HPC Support (P1 + P3)
- HPC: SLURM, PBS, SGE profiles (400+ line guide)
- Cloud: AWS Batch, Google Cloud Life Sciences, Azure Batch, Kubernetes (600+ line guide)
- Cost optimization: 70-80% savings with spot instances
🗄️ Database Integration (P1)
- Ensembl, ClinVar, gnomAD clients
- Local caching for offline work
- Rate limiting and error handling
📊 Genomics Metrics Library (P2)
- Ti/Tv ratio calculation
- Het/Hom ratio
- Depth and quality statistics
- Scientifically validated
🔍 Version Management (P0)
vigil doctornow detects version mismatches- Automatic upgrade recommendations
Upgrade now: uv tool upgrade vigil-core or pipx upgrade vigil-core
Full details: See CHANGELOG.md
Installation
Core Installation
# Install vigil-core (cryptographic kernel)
pip install vigil-core
# Or install vigil-client (includes vigil-core + platform integration)
pip install vigil-client
Package Structure
-
vigil-core: Cryptographic kernel for reproducible science (likegit)- Local operations:
run,promote,verify,anchor - Offline-first, deterministic execution
- Receipt generation and cryptographic verification
- Local operations:
-
vigil-client: Platform bridge and collaboration layer (likegh)- Platform integration:
client login,client push,client pull - Authentication and synchronization
- Artifact management and provenance linking
- Platform integration:
Unified CLI
Both packages provide a unified vigil command:
# Core commands (available with vigil-core)
vigil run
vigil promote
vigil verify
# Platform commands (available with vigil-client)
vigil client login
vigil client push
vigil client pull
Hybrid Architecture
vigil-core provides both a CLI tool and an importable library:
CLI Usage (Command Line)
# Create a new project
vigil new imaging-starter my-project
cd my-project
# Run pipeline
vigil run --cores 4
# Generate receipt
vigil promote
# Verify receipt
vigil verify receipt.json
Library Usage (Python API)
from vigil.core import run_pipeline, generate_receipt, ReceiptManager
# Run pipeline programmatically
result = run_pipeline("python train.py", dry_run=False)
# Generate receipt
artifacts = [{"uri": "model.pkl", "checksum": "abc123", "kind": "model"}]
receipt = generate_receipt(artifacts, pipeline_cmd="python train.py")
# Manage receipts
manager = ReceiptManager()
manager.save_receipt(receipt)
Core API Modules
vigil.core.receipts- Receipt generation and verificationvigil.core.pipeline- Pipeline execution and managementvigil.core.signer- Cryptographic signing (Ed25519)vigil.core.policy- Policy enforcement and evaluationvigil.core.env- Environment capture and analysis
Entry Points
- CLI:
vigilcommand (installed globally) - Module:
python -m vigil(runs CLI) - Library:
from vigil.core import ...(programmatic access)
MCP Server Installation
To use the MCP server (vigil mcp serve), install with the mcp extras:
# Install with MCP server support
pip install "vigil-core[mcp]"
# Or with vigil-client
pip install "vigil-client[mcp]"
The mcp extras include:
mcp>=1.1.0- MCP protocol serverpolars>=0.20.0- Fast data frame library for data previews
Quick Start
Local Development (vigil-core)
# Create a new project from a template (with interactive setup)
vigil new genomics-starter my-project --interactive
cd my-project
# Install dependencies
uv sync
# Sync workspace spec
vigil spec --sync
# Preview the pipeline (dry-run)
vigil dev
# Execute the pipeline
vigil run --cores 4
# Promote artifacts to receipts
vigil promote
# Verify receipts
vigil verify app/code/receipts/*.json
Platform Integration (vigil-client)
# Install vigil-client for platform integration
pip install vigil-client
# Authenticate with the platform
vigil client login
# Upload receipts and artifacts
vigil client push
# Search for artifacts
vigil client artifacts-search "genomics"
# Download an artifact
vigil client pull artifact-id
# Create provenance links
vigil client link artifact-1 artifact-2 --relation INPUT_OF
Commands
Core Commands (vigil-core)
Project Management
vigil new <template> [path]- Create a new project from a templatevigil new <template> [path] --interactive- Interactive setup with smart prompts (NEW in v0.2.0)vigil new --list- List available templates (now includes genomics-starter)
Development
vigil dev- Dry-run the pipeline and preview the DAGvigil build- Execute the pipeline without promotionvigil run- Execute targets and optionally promotevigil conformance- Check outputs against golden baselines (project-specific, not all templates include this)
Receipt Management
vigil promote- Generate Vigil receipts from artifactsvigil anchor- Create Merkle anchors for receiptsvigil url- Print the vigil:// URL for the projectvigil verify- Verify receipt checksums and attestations
Health & Maintenance
vigil doctor- Run repository health checks (includes version mismatch detection)vigil spec --sync- Sync workspace.spec.json with vigil.yamlvigil spec --dry-run- Preview workspace spec changesvigil version- Show installed version (alias forvigil --version)
Documentation & Collaboration
vigil card init- Create experiment or dataset cardsvigil card lint- Validate card format and required fieldsvigil notes new- Create timestamped lab notebook entriesvigil notes index- Regenerate lab notebook index
Workbench & AI
vigil ui bootstrap- Generate Workbench configurationvigil mcp serve- Start the MCP server for assistantsvigil ai propose- Generate auto-target suggestionsvigil ai apply- Execute auto-target proposal
Platform Commands (vigil-client)
Authentication
vigil client login- Authenticate with Vigil platformvigil client logout- Log out and clear stored credentialsvigil client whoami- Show current user information
Synchronization
vigil client push- Upload receipts and artifacts to the platformvigil client pull- Download an artifact from the platformvigil client link- Create a provenance link between artifacts
Artifact Management
vigil client artifacts- List artifacts in the platformvigil client artifacts-get <id>- Get detailed information about a specific artifactvigil client artifacts-search <query>- Search for artifacts by name or description
Configuration
vigil client config- Show current configurationvigil client config-set-project <id>- Set default project IDvigil client config-set-remote <url>- Set remote platform URL
Version Management: The vigil doctor command now checks for version mismatches between local and global installations, helping prevent issues from outdated CLI versions.
Templates
Available starter templates:
- imaging-starter: Full-featured imaging pipeline with sciencecast timeline
- genomics-starter: Comprehensive genomics workflow with variant filtering, annotation, and QC metrics (includes large file handling strategies)
- minimal-starter: Smallest viable template for getting started
Genomics Template Features
The genomics-starter template demonstrates:
- Variant quality filtering (PHRED scores, depth, allele frequency)
- Functional annotation with gene and pathway information
- Comprehensive QC metrics (Ti/Tv ratio, depth distribution, pathogenicity)
- Large file handling strategies for NGS data (BAM, VCF, CRAM)
- Data handles with offline fallbacks for disconnected development
- Parquet format for efficient variant storage
Documentation
License
Apache-2.0
Release files for vigil-core 0.3.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vigil_core-0.3.10.tar.gz | 254.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vigil_core-0.3.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 525.7 kB
Release files / vigil_core-0.3.10.tar.gz
| Download URL | vigil_core-0.3.10.tar.gz |
|---|---|
| Size | 254.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ba42c45e631915c256fa49f39cc4430ba9a784bf4bd88cf36d53b2a2be2aac2
|
|
BLAKE2b-256 checksum How to use checksums |
23c61a92136642a7773689307869a7afbff45903d5c57850b0d4428cdadd22d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|
Release files / vigil_core-0.3.10-py3-none-any.whl
| Download URL | vigil_core-0.3.10-py3-none-any.whl |
|---|---|
| Size | 271.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
598b630ee047e12993fa5f263e3582d6a54e3e2e416a6b63a68762a91d29740d
|
|
BLAKE2b-256 checksum How to use checksums |
43048e6c53ba5071ac2bfc2887f1292e453044fdd28f6c39449f26b6f8ce2de1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|