Skip to main content

Sierra Dev - Modern Invoker Framework 🚀

Python 3.8+ License: MIT Documentation

Sierra Dev is a modern, production-grade package manager and development framework for creating and managing investigation invoker scripts for the Sierra platform.

✨ Key Features

  • 📦 APT-Like Package Manager - Install invokers from GitHub repositories
  • 🔍 Type Safety Validation - Automatic AST-based type checking
  • ✅ Comprehensive Validation - YAML safety, parameter validation, health checks
  • 🎨 Rich CLI - 14 intuitive commands with emoji output
  • 🔄 Auto-Updates - Keep your invokers up-to-date
  • 📚 Built-in Documentation - Self-documenting invoker scripts

🚀 Quick Start

Installation

# Clone the repository
git clone https://github.com/xsyncio/sierra-dev
cd sierra-dev

# Create virtual environment
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# Install Sierra Dev
pip install -e .

Usage

# Add a package repository
sierra-dev repo add https://github.com/xsyncio/sierra-invokers

# Search for packages
sierra-dev search osint

# Install a package
sierra-dev install digital-footprint

# Build your environment
sierra-dev build --env test_env

📦 Package Manager

Sierra Dev provides an APT-like package management system:

Repository Management

sierra-dev repo add <url>      # Add repository
sierra-dev repo list            # List sources
sierra-dev repo update          # Update registries
sierra-dev repo remove <name>   # Remove source

Package Operations

sierra-dev search <query>       # Find packages
sierra-dev install <pkg>        # Install package
sierra-dev update --all         # Update all
sierra-dev remove <pkg>         # Uninstall
sierra-dev list --installed     # List installed

Development

sierra-dev build                # Compile invokers
sierra-dev check                # Run validation
sierra-dev health               # Environment status

🏗️ Project Structure

sierra-dev/
├── sierra/                  # Main package
│   ├── package_manager/    # Package management
│   ├── core/               # Build & compile
│   ├── internal/           # Utilities
│   └── cli.py             # CLI interface
├── docs/                   # Documentation
├── test_env/              # Example env
└── mkdocs.yml            # Docs config

📚 Documentation

🎯 Features

Type Safety Enforcement

Automatic validation ensures all invokers have proper type annotations:

# ✅ Valid - Will pass validation
def analyze_target(domain: str, check_breach: bool = False) -> dict:
    """Analyze a target domain."""
    return {"domain": domain, "found": True}

# ❌ Invalid - Will fail validation
def analyze_target(domain, check_breach=False):  # Missing type annotations
    return {"domain": domain}

Rich Result Types

Built-in support for complex data visualization:

from sierra import Table, Timeline, Chart, Tree, respond

# Output rich results
respond(Table(
    headers=["IP", "Port", "Service"],
    rows=[["192.168.1.1", "80", "HTTP"]]
))

Comprehensive Validation

  • YAML safety checks
  • Parameter validation
  • Type annotation enforcement
  • Health diagnostics

🛠️ Development

1. Initialize Project

sierra-dev init my_project
cd my_project

2. Create an Invoker

import sierra

invoker = sierra.InvokerScript(
    name="my_tool",
    description="Analyze a target"
)

@invoker.entry_point
def run(target: str) -> None:
    """Analyze a target."""
    result = {"target": target, "status": "analyzed"}
    sierra.respond(result)

Building

# Validate your invokers
sierra-dev check --env test_env

# Build with verbose output
sierra-dev build --env test_env -v

# Check health
sierra-dev health --env test_env

📊 Statistics

  • 14 CLI Commands - Comprehensive package management
  • 6 Package Manager Modules - Full-featured package system
  • Type Safety Validation - AST-based automatic checking
  • GitHub Integration - Use existing infrastructure

🤝 Contributing

Contributions are welcome! Please see our Contributing Guide.

Development Setup

# Clone repository
git clone https://github.com/xsyncio/sierra-dev
cd sierra-dev

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest

# Build documentation
mkdocs serve

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🔗 Links

Sierra Dev - Modern investigation tooling made simple.

Release files for sierra-dev 2.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sierra-dev 2.2.0
File Size Uploaded
sierra_dev-2.2.0.tar.gz 81.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sierra-dev 2.2.0
File Interpreter ABI Platform
sierra_dev-2.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 170.7 kB

Release files / sierra_dev-2.2.0.tar.gz

Download URL sierra_dev-2.2.0.tar.gz
Size 81.3 kB
Tags Source
SHA-256 checksum
How to use checksums
aed97af07ae5617e294e7b02ac45e347a7ceaab973213655e926153dc923c4b8
BLAKE2b-256 checksum
How to use checksums
470f239d5011d1d14f9ee3aaf42a69e4450e9999a3c447150df2ad172c00dfb3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 20, 2026.

Transparency log

Release files / sierra_dev-2.2.0-py3-none-any.whl

Download URL sierra_dev-2.2.0-py3-none-any.whl
Size 89.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
104f535782c6ff460fba90202727c8a23f340331b64cc95ead9d118f5bc19b6a
BLAKE2b-256 checksum
How to use checksums
36e622482bceb4895ba281c18280ed6d3244cf9df6ab54dafe0e8fc7ac1220dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 20, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.2.0 This release

2 release files

2.0.0

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page