Skip to main content

Starvex - Production-ready AI agents with guardrails, observability, and security

Project description

Starvex

Production-ready AI agents with guardrails, observability, and security.

Installation

pip install starvex

Quick Start

  1. Get your API key at starvex.in/dashboard

  2. Login with your API key:

starvex login
  1. Use in your code:
from starvex import Starvex

vex = Starvex()

async def my_agent(prompt: str) -> str:
    # Your AI agent logic here
    return "Agent response"

# Secure your agent with guardrails
result = await vex.secure(
    prompt="User input",
    agent_function=my_agent
)

if result.status == "success":
    print(result.response)
elif result.status == "blocked":
    print(f"Blocked: {result.verdict.value}")

Features

Guardrails

Automatically detect and block:

  • Jailbreak attempts - Prompt injection attacks
  • PII leakage - Email, phone, SSN, credit cards
  • Toxic content - Harmful or inappropriate text
  • Competitor mentions - Block competitor references (configurable)

Observability

Full visibility into your AI agent behavior:

  • Real-time event tracing
  • Latency monitoring
  • Success/failure analytics
  • Dashboard at starvex.in/dashboard

Evaluation

Quality checks on agent outputs:

  • Hallucination detection
  • Faithfulness scoring
  • Relevancy analysis

CLI Commands

# Login with your API key
starvex login

# Check connection status
starvex status

# Check a prompt for safety
starvex check "Your prompt here"

# Test a prompt/response pair
starvex test --prompt "Question" --response "Answer"

# Show current configuration
starvex config --show

# Show version
starvex version

# Logout
starvex logout

API Reference

Starvex

from starvex import Starvex

vex = Starvex(
    api_key="sv_live_xxx",  # Or set STARVEX_API_KEY env var
    redact_pii=False,       # Mask PII before logging
    enable_tracing=True,    # Enable observability
)

Methods

secure(prompt, agent_function, context=None)

The main method - secures an AI agent interaction:

  1. Checks input safety (jailbreak, PII, toxicity)
  2. Calls your agent function
  3. Checks output quality (hallucination, toxicity)
  4. Logs everything to the dashboard
result = await vex.secure(
    prompt="User input",
    agent_function=my_agent,
    context=["Optional context for hallucination checking"],
    user_id="optional-user-id",
    session_id="optional-session-id",
)

protect(prompt)

Check input only (no agent execution):

result = await vex.protect("User input")
if result.status == "blocked":
    print("Input blocked!")

test(prompt, response, context=None)

Test mode - evaluate a prompt/response pair without tracing:

result = vex.test(
    prompt="What is 2+2?",
    response="2+2 equals 4",
    context=["Math fact: 2+2=4"]
)

Response Object

class GuardResponse:
    status: str          # "success", "blocked", "flagged"
    response: str        # The agent response (or block message)
    verdict: str         # PASSED, BLOCKED_JAILBREAK, BLOCKED_PII, etc.
    checks: list         # Detailed check results
    trace_id: str        # Unique trace ID for debugging
    latency_ms: float    # Total processing time
    warning: str | None  # Warning message if flagged

Environment Variables

Variable Description
STARVEX_API_KEY Your Starvex API key
STARVEX_API_HOST Custom API host (optional)
STARVEX_REDACT_PII Set to "true" to mask PII
STARVEX_LOG_LEVEL Logging level (DEBUG, INFO, WARNING, ERROR)

Dashboard

View your metrics and manage API keys at starvex.in/dashboard

  • Real-time request monitoring
  • Block rate analytics
  • Latency tracking
  • API key management
  • Guardrail configuration

Links

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

starvex-1.1.0.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

starvex-1.1.0-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

Details for the file starvex-1.1.0.tar.gz.

File metadata

  • Download URL: starvex-1.1.0.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for starvex-1.1.0.tar.gz
Algorithm Hash digest
SHA256 81a2dff8eba2215def1c952babc2ca37e6526fdcede4136e3f2607081bf81b21
MD5 83158f1f8697b03fa3d580fc01db8bb1
BLAKE2b-256 61a692bb2c8fec96bc0248c91e3705406f792aa75c31267e891273a524035400

See more details on using hashes here.

File details

Details for the file starvex-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: starvex-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 25.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for starvex-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5732c52c0fcdc0ac4b79efa5a961c452a800b383f56a340596b741c48b479266
MD5 7f4e25e62a89997f96387203cb9d08bf
BLAKE2b-256 7fdfbe9d79ed9b877393e9ed193f4e8b90050f3646a8601124f2f8acaf0da5a7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page