Skip to content

Latest commit

 

History

History
374 lines (282 loc) · 8.18 KB

File metadata and controls

374 lines (282 loc) · 8.18 KB

Prisma CLI Documentation

Complete command-line interface reference for Prisma literature review system.

Overview

Prisma provides a comprehensive CLI for managing research streams, generating literature reviews, and integrating with Zotero. All commands follow the pattern:

prisma [COMMAND] [SUBCOMMAND] [OPTIONS] [ARGUMENTS]

Global Options

--help, -h          Show help message and exit
--version           Show version information
--config, -c        Path to custom configuration file

Command Groups

1. Research Streams (streams)

Persistent topic monitoring with automatic paper discovery.

Create a Stream

prisma streams create NAME QUERY [OPTIONS]

Arguments:

  • NAME: Human-readable stream name (e.g., "Neural Networks 2024")
  • QUERY: Search query keywords (e.g., "neural networks transformer")

Options:

  • --description, -d TEXT: Detailed description of the research stream
  • --frequency, -f [daily|weekly|monthly|manual]: Update frequency (default: weekly)
  • --parent-collection, -p TEXT: Parent Zotero collection key
  • --config, -c PATH: Path to configuration file

Examples:

# Basic stream creation
prisma streams create "LLMs for Edge" "LLM edge computing quantization"

# With full options
prisma streams create "AI Ethics" "artificial intelligence ethics bias" \
  --description "Research on ethical implications of AI systems" \
  --frequency daily \
  --parent-collection "AI Research"

List Streams

prisma streams list [OPTIONS]

Options:

  • --status, -s [active|paused|archived]: Filter by stream status
  • --config, -c PATH: Path to configuration file

Examples:

# List all streams
prisma streams list

# Filter active streams only
prisma streams list --status active

Update Streams

prisma streams update [STREAM_ID] [OPTIONS]

Arguments:

  • STREAM_ID: Optional stream ID to update (if not provided, use --all)

Options:

  • --all, -a: Update all active streams
  • --force, -f: Force update even if not due
  • --refresh-cache, -r: Refresh cached metadata instead of using cache
  • --config, -c PATH: Path to configuration file

Examples:

# Update all active streams
prisma streams update --all

# Update specific stream
prisma streams update neural-networks-2024

# Force update with cache refresh
prisma streams update --all --force --refresh-cache

Stream Information

prisma streams info STREAM_ID [OPTIONS]

Arguments:

  • STREAM_ID: Stream identifier

Options:

  • --config, -c PATH: Path to configuration file

Examples:

# Get detailed stream information
prisma streams info ai-ethics

Stream Summary

prisma streams summary [OPTIONS]

Options:

  • --config, -c PATH: Path to configuration file

Examples:

# Overview of all streams
prisma streams summary

2. Literature Reviews (review)

Generate comprehensive literature reviews for research topics.

Generate Review

prisma review TOPIC [OPTIONS]

Arguments:

  • TOPIC: Research topic to search for (e.g., "neural networks")

Options:

  • --output, -o PATH: Output file path
  • --sources, -s TEXT: Data sources (arxiv,pubmed,scholar)
  • --limit, -l INTEGER: Maximum number of papers
  • --zotero-only: Use only Zotero library
  • --include-authors: Include author analysis
  • --refresh-cache, -r: Refresh cached metadata
  • --config, -c PATH: Path to configuration file

Examples:

# Basic literature review
prisma review "neural networks" --output nn_review.md

# Use specific sources with limit
prisma review "AI ethics" --sources arxiv,scholar --limit 50

# Zotero-only mode
prisma review "machine learning" --zotero-only

# Include author analysis
prisma review "transformers" --include-authors --limit 30

3. System Management (status)

Check system status and configuration.

System Status

prisma status [OPTIONS]

Options:

  • --verbose, -v: Show detailed status information

Examples:

# Basic status check
prisma status

# Detailed system information
prisma status --verbose

Status Checks:

  • ✅ Configuration files loaded
  • ✅ Zotero connection (Local API/Web API)
  • ✅ Required dependencies installed
  • ✅ Storage directories available
  • ✅ LLM integration (Ollama)

4. Zotero Integration (zotero)

Manage Zotero connections and operations.

Test Connection

prisma zotero test-connection [OPTIONS]

Options:

  • --config, -c PATH: Path to configuration file

Examples:

# Test Zotero connectivity
prisma zotero test-connection

List Collections

prisma zotero list-collections [OPTIONS]

Options:

  • --config, -c PATH: Path to configuration file

Examples:

# Show all Zotero collections
prisma zotero list-collections

Sync Status

prisma zotero sync-status [OPTIONS]

Options:

  • --config, -c PATH: Path to configuration file

Examples:

# Check Zotero sync status
prisma zotero sync-status

Configuration

Prisma uses YAML configuration files for settings:

# Use custom config file
prisma --config ./my-config.yaml streams list

# Environment-specific configs
prisma --config ./configs/research.yaml review "topic"

Common Workflows

Setting Up Research Monitoring

# 1. Check system status
prisma status --verbose

# 2. Create research streams
prisma streams create "AI Safety" "AI safety alignment" --frequency weekly
prisma streams create "Quantum ML" "quantum machine learning" --frequency monthly

# 3. Initial population
prisma streams update --all --force

# 4. Monitor progress
prisma streams summary

Generating Literature Reviews

# 1. Quick review from internet sources
prisma review "neural architecture search" --sources arxiv,scholar --limit 25

# 2. Comprehensive review with Zotero
prisma review "federated learning" --include-authors --limit 50

# 3. Zotero-only review for existing library
prisma review "computer vision" --zotero-only

Troubleshooting

# Check system status
prisma status --verbose

# Test Zotero connection
prisma zotero test-connection

# Force update with fresh data
prisma streams update stream-id --force --refresh-cache

Exit Codes

  • 0: Success
  • 1: General error
  • 2: Configuration error
  • 3: Zotero connection error
  • 4: LLM integration error

Environment Variables

export PRISMA_CONFIG_PATH="/path/to/config.yaml"
export PRISMA_DEBUG=1                    # Enable debug output
export ZOTERO_API_KEY="your-api-key"     # Override config API key
export OLLAMA_HOST="localhost:11434"     # Override LLM host

Advanced Usage

Batch Operations

# Update multiple streams with specific criteria
for stream in ai-ethics quantum-ml neural-nets; do
  prisma streams update $stream --force
done

# Generate multiple reviews
for topic in "AI safety" "quantum computing" "federated learning"; do
  prisma review "$topic" --output "${topic// /_}_review.md"
done

Automation Scripts

#!/bin/bash
# Daily research monitoring script

echo "🔍 Daily Research Update"
prisma streams update --all
echo "📊 Research Summary"
prisma streams summary

Custom Configuration

# research-config.yaml
search:
  sources: ["arxiv", "semanticscholar"]
  default_limit: 50

llm:
  provider: "ollama"
  model: "llama3.1:8b"
  host: "localhost:11434"

zotero:
  mode: "hybrid"
  api_key: "${ZOTERO_API_KEY}"
  library_id: "12345"

Error Handling

Prisma provides detailed error messages and suggestions:

❌ Error: Zotero connection failed
   Suggestion: Ensure Zotero Desktop is running with Local API enabled
   
❌ Error: No papers found for query
   Suggestion: Try broader search terms or different sources

⚠️  Warning: LLM analysis failed for 2 papers
   Info: Papers were saved but analysis incomplete

See Also