Skip to main content

The Active Reliability Layer for AI Agents

Project description

Steer Labs Logo

Steer

steer-labs.com

The Active Reliability Layer for AI Agents.

Stop debugging. Start teaching.
Steer turns runtime hallucinations into permanent fixes—instantly.

PyPI License Twitter


Steer Mission Control

Mission Control: Catching hallucinations locally and fixing them with one click.


⚡ Quickstart

Get running in 30 seconds. No API keys required.

pip install steer-sdk
steer init   # Generates 3 interactive demo agents
steer ui     # Launches Mission Control dashboard

Then run a demo:

python 01_structure_guard.py

🧠 Why Steer?

Most AI tools are passive. Steer is active.

Feature The Old Way (Observability) The Steer Way (Reliability)
Reaction Alerts you after the user crashes. Blocks the crash before it happens.
Fixing You edit code, re-prompt, and re-deploy. You "Teach" the agent a fix in the UI.
Privacy Sends your prompts to a cloud logger. Local-First. Data stays on your machine.

🛑 The Problem: Logging isn't Enough

When an agent fails in production (e.g., outputs bad JSON or leaks PII), seeing a log doesn't help the user who just got a crash.

Steer creates a "Teaching Layer" around your agent.

  1. Catch: Intercept the failure in real-time.
  2. Teach: Provide a correction in the Dashboard.
  3. Fix: Steer injects that "memory" into the agent immediately.

⚡ The Loop: Catch → Teach → Fix

Steer provides a Human-in-the-Loop workflow to fix "Confident Idiot" agents.

1. Catch (The Guard)

Steer wraps your agent and blocks bad outputs before they return.

JSON Structure Guard Demo

[Steer] 🤖 Agent generating profile...
[Steer] 🚨 BLOCKED: Structure Guard (Detected Markdown wrapping).
[Steer] 🛡️ Execution halted.

2. Teach (The Fix)

Instead of editing code, go to Steer Mission Control (steer ui).

  • Click the blocked incident.
  • Click "Teach".
  • Select the fix (e.g., "Strict JSON Mode").

Steer now remembers this rule for this agent.

3. Fix (The Result)

Run the agent again. Steer automatically injects your teaching instruction. The agent self-corrects.

[Steer] 🧠 Context loaded: "Strict JSON" rule found. Applying fix...
[Steer] ✅ SUCCESS: Agent output valid JSON.

🛡️ Supported Guardrails

Steer comes with 3 "Teach-Ready" verifiers out of the box:

Verifier The Problem The "Teaching" Fix
JsonVerifier Agent wraps code in ```json blocks "Force JSON": Inject system instruction to output raw JSON only.
RegexVerifier Agent leaks PII (Emails/Keys) "Redact PII": Force agent to replace sensitive patterns with [REDACTED].
AmbiguityVerifier Agent guesses ambiguous answers "Ask Clarification": Force agent to ask user questions if >3 results found.

🛠️ Integration

To add Steer to your own existing agent, just add steer_rules to your function arguments.

from steer import capture
from steer.verifiers import JsonVerifier

# 1. Define Verifiers
json_check = JsonVerifier(name="Strict JSON")

# 2. Decorate your Agent Function
@capture(verifiers=[json_check])
def my_agent(user_input, steer_rules=""):
    
    # 3. Steer automatically injects rules here!
    # Pass 'steer_rules' to your system prompt.
    system_prompt = f"You are a helpful assistant.\n{steer_rules}"
    
    # ... Your LLM call ...
    return llm.call(system_prompt, user_input)

🔮 Roadmap: From Verification to Learning

Steer v0.1 provides the "Fast Path" (Runtime Guardrails + Human Teaching). Steer v0.2+ will introduce the "Slow Path" (Automated Model Improvement).

Coming Soon:

  • Query by Committee: Automated consensus checks for ambiguous prompts.
  • Automated Fine-Tuning: A pipeline to turn your accumulated (Incident -> Fix) logs into a fine-tuned model that stops making those mistakes entirely.
  • CI/CD Integration: Block Pull Requests if an agent fails a reliability test suite.

🔑 Configuration (Optional)

The Quickstart demos run locally and require no API keys.

To use advanced LLM-based verifiers (like FactConsistencyVerifier) in production, set your keys:

export GEMINI_API_KEY=AIzaSy...
# OR
export OPENAI_API_KEY=sk-...

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

steer_sdk-0.1.8.tar.gz (456.5 kB view details)

Uploaded Source

Built Distribution

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

steer_sdk-0.1.8-py3-none-any.whl (473.1 kB view details)

Uploaded Python 3

File details

Details for the file steer_sdk-0.1.8.tar.gz.

File metadata

  • Download URL: steer_sdk-0.1.8.tar.gz
  • Upload date:
  • Size: 456.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Darwin/24.6.0

File hashes

Hashes for steer_sdk-0.1.8.tar.gz
Algorithm Hash digest
SHA256 e7a3810b534795402e914e170d7c18d8276750356c93be3d912bff9425f833b6
MD5 ee2b5e7db9ab51e6280b365e42fe3058
BLAKE2b-256 93690a3237498c17ca403536bc7ab1be4ef780808ad41d987f7cd28af43386e9

See more details on using hashes here.

File details

Details for the file steer_sdk-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: steer_sdk-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 473.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Darwin/24.6.0

File hashes

Hashes for steer_sdk-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 71354b14c5bf56e799301a955e1032a6ac49633a33f1d32046ba929d12ca9a76
MD5 6b62fb967ef036776d82ebe0c2059f1a
BLAKE2b-256 d84ff4e1642ed3cd74599c92ce0c3541d83f9db5de4f1f728a06bfa96d48199a

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