Skip to main content
Glama

Ausprobieren (30 Sekunden)

pip install agent-aegis
aegis scan .
Scanning . for ungoverned AI calls...

  src/agent.py:12     openai.ChatCompletion.create()    NO GUARDRAIL
  src/agent.py:34     langchain.ChatOpenAI.invoke()      NO GUARDRAIL
  src/tools.py:8      anthropic.messages.create()        NO GUARDRAIL
  src/pipeline.py:21  crew.kickoff()                     NO GUARDRAIL

  4 ungoverned AI calls found in 3 files.
  Run `aegis.auto_instrument()` to add guardrails, or create a policy with `aegis init`.

Das ist alles. Du weißt jetzt genau, wo sich deine ungeschützten KI-Aufrufe befinden.

Zu CI hinzufügen

Eine Zeile in deinem GitHub Actions Workflow:

- uses: Acacian/aegis@v0.9.1
  with:
    command: scan
    fail-on-ungoverned: true

Jeder PR wird gescannt. Ungeregelte KI-Aufrufe blockieren den Merge. Alle Optionen ansehen.


Auto-Instrumentierung

Füge Schutzmaßnahmen zu jedem Projekt mit einer Zeile hinzu. Kein Refactoring, keine Wrapper, keine Konfigurationsdateien.

import aegis
aegis.auto_instrument()

# That's it. Every LangChain, CrewAI, OpenAI, Anthropic, LiteLLM,
# Google GenAI, Pydantic AI, LlamaIndex, Instructor, and DSPy
# call in your application now passes through:
#   - Prompt injection detection (blocks attacks)
#   - PII detection (warns on personal data exposure)
#   - Prompt leak detection (warns on system prompt extraction)
#   - Toxicity detection (warns — opt-in to block)
#   - Full audit trail (every call logged)

Oder ganz ohne Codeänderungen — setze einfach eine Umgebungsvariable:

AEGIS_INSTRUMENT=1 python my_agent.py

Aegis führt beim Import ein Monkey-Patching der Framework-Interna durch, derselbe Ansatz, den Sentry für die Fehlerverfolgung verwendet. Dein bestehender Code bleibt unberührt.

Funktionsweise

Your code                          Aegis layer (invisible)
---------                          -----------------------
chain.invoke("Hello")       -->    [input guardrails] --> LangChain --> [output guardrails] --> response
Runner.run(agent, "query")  -->    [input guardrails] --> OpenAI SDK --> [output guardrails] --> response
crew.kickoff()              -->    [task guardrails]  --> CrewAI     --> [tool guardrails]   --> response
client.chat.completions()   -->    [input guardrails] --> OpenAI API --> [output guardrails] --> response

Jeder Aufruf wird sowohl bei der Eingabe als auch bei der Ausgabe überprüft. Blockierte Inhalte lösen einen AegisGuardrailError aus (konfigurierbar, um stattdessen zu warnen oder zu protokollieren).

Unterstützte Frameworks

Framework

Was wird gepatcht

Status

LangChain

BaseChatModel.invoke/ainvoke, BaseTool.invoke/ainvoke

Stabil

CrewAI

Crew.kickoff/kickoff_async, global BeforeToolCallHook

Stabil

OpenAI Agents SDK

Runner.run, Runner.run_sync

Stabil

OpenAI API

Completions.create (Chat & Completions)

Stabil

Anthropic API

Messages.create

Stabil

LiteLLM

completion, acompletion

Stabil

Google GenAI (Gemini)

Models.generate_content (neu) + GenerativeModel.generate_content (legacy)

Stabil

Pydantic AI

Agent.run, Agent.run_sync

Stabil

LlamaIndex

LLM.chat/achat/complete/acomplete, BaseQueryEngine.query/aquery

Stabil

Instructor

Instructor.create, AsyncInstructor.create

Stabil

DSPy

Module.__call__, LM.forward/aforward

Stabil

Standard-Schutzmaßnahmen

Alle Schutzmaßnahmen sind deterministisch (keine LLM-Aufrufe), dauern weniger als eine Millisekunde und erfordern keine Konfiguration:

Schutzmaßnahme

Standardaktion

Was sie erkennt

Prompt-Injektion

Blockieren

10 Angriffskategorien, 85+ Muster, mehrsprachig (EN/KO/ZH/JA)

PII-Erkennung

Warnen

13 Kategorien (E-Mail, Kreditkarte, SSN, IBAN, API-Schlüssel usw.)

Prompt-Leak

Warnen

Versuche zur Extraktion von System-Prompts

Toxizität

Warnen (optional blockieren)

Schädliche, gewalttätige oder beleidigende Inhalte

Leistung

Alle Schutzmaßnahmen verwenden deterministische Regex — keine LLM-Aufrufe, keine Netzwerk-Roundtrips. LRU-Caching macht wiederholte Prüfungen (z. B. System-Prompts) effektiv kostenlos.

Szenario

Kalt (erster Aufruf)

Warm (gecached)

Hinweise

Kurzer Text (45 Zeichen)

342 µs

< 1 µs

Typische Benutzernachricht

Mittlerer Text (300 Zeichen)

3,7 ms

< 1 µs

Typische Agentenanweisung

Adversariale Eingabe

1,3 ms

< 1 µs

Multi-Muster-Injektionsversuch

Realistisch pro LLM-Aufruf

2,65 ms

System-Prompt (gecached) + Benutzereingabe + Antwort

0,53 % der LLM-Latenz (vs. 500 ms API-Roundtrip). Ziel: < 1 %. Kombinierter Schutzstapel = Injektion + PII bei Eingabe und Ausgabe (4 Scans pro Aufruf).

Führe python benchmarks/bench_guardrails.py aus, um dies zu reproduzieren.

vs. Alternativen (Stand März 2026)

Aegis ist die einzige Schutzbibliothek mit CI-integrierten Leistungsregressions-Schleusen (pytest-benchmark). Die meisten Alternativen verlassen sich auf ML-Modelle oder externe APIs, was 10–1000x mehr Latenz pro Prüfung hinzufügt.

Ansatz

Typischer Overhead

CI-Leistungsschleuse

Beispiele

In-Process Regex + LRU Cache (Aegis)

2,65 ms kalt / < 1 μs warm

Ja

ML-Modell-Frameworks

10er ms – Sekunden (CPU)

Nein

Guardrails AI, NeMo Guardrails, LLM Guard

Cloud-API-Dienste

40–250 ms

N/A

Lakera Guard

Proxy / Gateway

100–250 ms+

Nein

Lasso MCP Gateway

Warum der Unterschied? Aegis-Schutzmaßnahmen sind deterministische Regex mit kompilierten Mustern und LRU-Ergebnis-Caching — keine Modellinferenz, keine Netzwerkaufrufe. Alternativen, die ML-Klassifikatoren oder externe APIs verwenden, zahlen bei jeder Anfrage dafür.

Feinsteuerung

from aegis.instrument import auto_instrument, patch_langchain, status, reset

# Instrument only specific frameworks
auto_instrument(frameworks=["langchain", "openai_agents"])

# Customize behavior
auto_instrument(
    on_block="warn",       # "raise" (default), "warn", or "log"
    guardrails="default",  # or "none" for audit-only mode
    audit=True,            # log every call
)

# Instrument a single framework
patch_langchain()

# Check what's instrumented
print(status())
# {"active": True, "frameworks": {"langchain": {"patched": True, ...}}, "guardrails": 4}

# Clean removal — restore all original methods
reset()

Auswahl-Governance

Die erste Open-Source-Bibliothek mit Erkennung durch Negationsauswahl. Andere Governance-Tools überwachen, was Agenten tun. Agent-Aegis überwacht auch, was Agenten entscheiden, nicht zu tun — die Optionen, die sie stillschweigend eliminieren, bevor Menschen sie sehen.

Basierend auf dem Framework "Selection as Power" des Santander AI Lab: Agenten üben verdeckte Macht durch Filterung von Optionen aus, nicht nur durch die Ausführung von Aktionen.

from aegis.core import ActionClaim, ClaimAssessor, DeclaredFields

# Agent declares what it intends to do (untrusted)
claim = ActionClaim(
    declared=DeclaredFields(
        proposed_transition="delete_records",
        target="production_db",
        justification="cleanup old data",
    )
)

# Aegis independently assesses actual impact (6-dimensional)
assessor = ClaimAssessor()
result = assessor.assess(claim)
# result.verdict -> BLOCK
# result.assessed.justification_gap -> 0.385 (agent under-reported impact)

Fähigkeit

Beschreibung

ActionClaim

Dreiteilige Struktur: vom Agenten deklariert (nicht vertrauenswürdig) vs. systembewertet (unabhängig) vs. Delegationskette

Justification Gap

Asymmetrische Lückenerkennung — nur Unterberichterstattung zählt. APPROVE / ESCALATE / BLOCK

Selection Audit

4 Erkennungstypen: hohe Eliminierung, bessere Option eliminiert, ungerechtfertigte Eliminierung, systematische Exklusion

Commit-Reveal

Agent verpflichtet sich vor der Ausführung auf den vollständigen Optionssatz — verhindert nachträgliche Rationalisierung

Circuit Breaker

Fail-loud mit QDV-Metrik, thread-sicher, konfigurierbare Wiederherstellung

Warum das wichtig ist: Ein Agent, der immer Anweisungen befolgt, aber unbequeme Optionen herausfiltert, bevor er sie präsentiert, ist gefährlicher als einer, der sich offen weigert. Aegis ist das erste Tool, das dieses Muster zur Laufzeit erkennt.


Richtlinien-CI/CD

Niemand sonst macht das. Sicherheitstools schützen zur Laufzeit. Aegis verwaltet auch den Richtlinienlebenszyklus — Änderungen in der Vorschau anzeigen, auf Regressionen testen und CI/CD-Merges schleusen, bevor etwas in die Produktion gelangt.

aegis plan — Auswirkungen vor der Bereitstellung in der Vorschau anzeigen

Wie terraform plan für KI-Agenten-Richtlinien. Spielt historische Audit-Daten ab, um genau zu zeigen, was sich ändern würde.

aegis plan current.yaml proposed.yaml --audit-db aegis_audit.db

# Policy Impact Analysis
# =====================
#   Rules: 2 added, 1 removed, 3 modified
#   Impact (replayed 1,247 actions):
#     23 actions would change from AUTO → BLOCK
#      7 actions would change from APPROVE → BLOCK
#
#   CI mode: aegis plan current.yaml proposed.yaml --ci  (exit 1 if breaking)

aegis test — Regressionstests für Richtlinien

Erwartete Ergebnisse definieren, Testsuiten automatisch generieren, unbeabsichtigte Nebenwirkungen abfangen.

# Auto-generate test suite from policy
aegis test policy.yaml --generate --generate-output tests.yaml

# Run in CI — exit 1 on failure
aegis test policy.yaml tests.yaml

# Regression test between old and new policy
aegis test new-policy.yaml tests.yaml --regression old-policy.yaml

CI/CD-Integration

# .github/workflows/policy-check.yml
- uses: Acacian/aegis@main
  with:
    policy: aegis.yaml
    tests: tests.yaml
    fail-on-regression: true

Richtlinienänderungen erhalten die gleiche Strenge wie Codeänderungen: Diff, Test, Review, Merge.

Schnellstart

Schritt 1: Installieren

pip install agent-aegis

Schritt 2: Wähle dein Integrationslevel

Level 1: Auto-Instrumentierung (empfohlen) -- eine Zeile, regelt alles:

import aegis
aegis.auto_instrument()
# All 11 supported frameworks are now governed.

Level 2: Initialisierung mit vollem Sicherheitsstapel -- Schutzmaßnahmen + Richtlinien-Engine + Audit:

import aegis
aegis.auto_instrument()
# Discovers aegis.yaml, activates policy engine, audit logging, cost tracking.

Level 3: Gezieltes Patchen -- spezifische APIs regeln:

import aegis
aegis.patch_openai()    # Only OpenAI calls
aegis.patch_anthropic() # Only Anthropic calls

# Or use the decorator for custom functions
@aegis.guard
def my_agent_function():
    ...

Level 4: YAML-Konfiguration -- volle Kontrolle, wenn du sie brauchst:

aegis init  # Creates aegis.yaml with sensible defaults
# aegis.yaml
guardrails:
  pii: { enabled: true, action: mask }
  injection: { enabled: true, action: block, sensitivity: medium }

policy:
  version: "1"
  defaults:
    risk_level: medium
    approval: approve
  rules:
    - name: read_safe
      match: { type: "read*" }
      risk_level: low
      approval: auto
    - name: bulk_ops_need_approval
      match: { type: "bulk_*" }
      conditions:
        param_gt: { count: 100 }
      risk_level: high
      approval: approve
    - name: no_deletes
      match: { type: "delete*" }
      risk_level: critical
      approval: block

Level 5: Volle Runtime()-Kontrolle -- benutzerdefinierte Executoren, Genehmigungsschleusen, alles:

import asyncio
from aegis import Action, Policy, Runtime
from aegis.adapters.base import BaseExecutor
from aegis.core.result import Result, ResultStatus

class MyExecutor(BaseExecutor):
    async def execute(self, action):
        print(f"  Executing: {action.type} -> {action.target}")
        return Result(action=action, status=ResultStatus.SUCCESS)

async def main():
    async with Runtime(
        executor=MyExecutor(),
        policy=Policy.from_yaml("policy.yaml"),
    ) as runtime:
        plan = runtime.plan([
            Action("read", "crm", description="Fetch contacts"),
            Action("bulk_update", "crm", params={"count": 150}),
            Action("delete", "crm", description="Drop table"),
        ])
        results = await runtime.execute(plan)

asyncio.run(main())

Schritt 3: Sehen, was passiert ist

aegis audit
  ID  Session       Action        Target   Risk      Decision    Result
  1   a1b2c3d4...   read          crm      LOW       auto        success
  2   a1b2c3d4...   bulk_update   crm      HIGH      approved    success
  3   a1b2c3d4...   delete        crm      CRITICAL  block       blocked

Drei Säulen

Aegis basiert auf drei Säulen. Zusammen bilden sie ein vollständiges KI-Sicherheitsframework — nicht nur einen Richtlinienprüfer.

Säule 1: Laufzeit-Schutzmaßnahmen

Schutz auf Inhaltsebene, der automatisch bei jeder Eingabe und Ausgabe ausgeführt wird.

Fähigkeit

Detail

PII-Erkennung & Maskierung

13 Kategorien (E-Mail, Kreditkarte, SSN, IBAN, koreanische RRN, API-Schlüssel usw.) mit Luhn/mod-97-Validierung

Prompt-Injektionsblockierung

10 Angriffskategorien, 85+ Muster, mehrsprachig (Englisch, Koreanisch, Chinesisch, Japanisch)

Regelpaket-Ökosystem

Erweiterbar über Community-YAML-Pakete (@aegis/pii-detection, @aegis/prompt-injection)

Konfigurierbare Aktionen

mask, block, warn, log — pro Bereitstellung, pro Kategorie

Säule 2: Richtlinien-Engine

Deklarative YAML-Regeln mit der vollständigen Governance-Pipeline (EVALUATE --> APPROVE --> EXECUTE --> VERIFY --> AUDIT).

| Fähigkeit | Detail |

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Acacian/aegis'

If you have feedback or need assistance with the MCP directory API, please join our Discord server