Anmelden Für immer gratis Erste Schritte

Entwickler

Ein CLI-Aufruf. Jedes Geheimnis.

Keine Umgebungsvariablen. Keine Konfigurationsdateien. Keine Geheimnisse in Logs. Jedes Geheimnis, das Ihr Code benötigt, zur Laufzeit aus einem Tresor aufgelöst, den Ihr Agent nicht umgehen kann.

Das Muster

Einmal speichern. Überall abrufen.

Jeder Agent wird einmal mit seinem eigenen Token, seinen Geltungsbereichen und Ratenbegrenzungen initialisiert. Danach kann der Agent Geheimnisse zur Laufzeit abrufen. Der Schlüssel wird verschlüsselt im Tresor gespeichert, niemals in Umgebungsvariablen oder Quellcode. Wenn der Schlüssel rotiert, aktualisieren Sie ihn in der Tresor-Benutzeroberfläche – jeder Agent übernimmt ihn automatisch.

# One-time setup — paste the token at the prompt, or pipe it in
$ echo "$CLAVITOR_TOKEN" | clavitor-cli init

# Single value — piped, never stored
$ clavitor-cli get "Deploy Key" --field private_key | ssh-add -

# Whole config — secrets resolved, template safe to store anywhere
$ clavitor-cli render app.config.json | myapp --config -

# Proxy — credentials injected at the network layer
$ export HTTPS_PROXY=http://localhost:1983
$ curl -H "Authorization: Bearer clavitor://OpenRouter/key" https://openrouter.ai/api/v1/models

Drei Verwendungsmöglichkeiten

Feld, Rendern oder Proxy.

Feld

Ein Wert. Leiten Sie ihn in jeden Befehl oder jedes Skript. Das Geheimnis existiert nur in der Pipe – niemals in einer Variablen, niemals auf der Festplatte.

Rendern

Ganze Konfigurationsdatei. Alle clavitor://-Referenzen beim Start auflösen. Die Vorlage kann sicher committet werden. Die aufgelöste Konfiguration lebt in einer Pipe.

Proxy

HTTPS-Proxy. Anmeldedaten werden transparent aus Headern aufgelöst. Der Agent schreibt clavitor://, wo das Geheimnis hingehört – der Proxy fügt den tatsächlichen Wert ein. Nichts in Logs, nichts im Agentenspeicher.

Welchen sollte ich verwenden?

FunktionFieldRenderProxy
Geheimnisse aus Logs entfernen
Funktioniert mit jeder Sprache
Funktioniert mit jedem Werkzeug (curl, SDK, Browser)
Pro Agent Geltungsbereiche & Audit
Mehrere Geheimnisse gleichzeitig
Keine Codeänderungen erforderlich
Konfigurationsdateien sicher zu committen
SSH / Nicht-HTTP-Anwendungsfälle

Schnelle Wahl: Erstellen Sie ein Skript oder ein CLI-Tool? Verwenden Sie Feld. Stellen Sie einen Dienst mit einer Konfigurationsdatei bereit? Verwenden Sie Rendern. Führen Sie KI-Agenten aus, die API-Aufrufe tätigen? Verwenden Sie Proxy.

Warum dies jeden anderen Anmeldedatenproxy übertrifft.

Nichts zu stehlen. Cloud-basierte Proxys sind Ziele mit hohem Wert – brechen Sie einen ein und Sie erhalten die Anmeldedaten jedes Kunden. Lokale Proxys speichern Anmeldedaten in ihrer eigenen Konfiguration, lesbar für jeden Agenten auf der Maschine. Clavitors Proxy enthält nur eine verschlüsselte Konfigurationsdatei. Keine Klartext-Geheimnisse auf der Festplatte, kein zu plündernder Anmeldedatenspeicher.

Agenten können ihn nicht aufbrechen. Ein kompromittierter Agent kann keine Anmeldedaten aus dem Proxy extrahieren – der Proxy stellt keine API bereit, liefert kein Dashboard und akzeptiert keine Befehle. Er liest einen Header, löst eine Referenz auf und fügt das Ergebnis in die ausgehende Anfrage ein. Keine Angriffsfläche.

Nichts in Logs. Der Agent schreibt clavitor://Entry/field. Das ist es, was in stdout, in Logs, in der Konversationshistorie erscheint. Das eigentliche Anmeldedatum existiert nur innerhalb des Proxy-Prozesses für die Dauer eines HTTP-Aufrufs. Log-Aggregatoren, Absturz-Dumps, CI-Artefakte – sauber.

Null Konfiguration. Keine Routing-Tabellen, keine API-Zuordnungen, keine zu verwaltenden Anmeldedatendateien. Die clavitor://-Referenz im Header ist die einzige Anweisung. Ein init, eine Umgebungsvariable, fertig.

Sprachen

Funktioniert in jeder Sprache. Kein SDK erforderlich.

Bash

# The proxy handles credential injection — no secrets in the command
$ export HTTPS_PROXY=http://localhost:1983
$ curl -H "Authorization: Bearer clavitor://OpenRouter API/key" \
  https://openrouter.ai/api/v1/models

Go

key, _ := exec.Command("clavitor-cli", "get", "OpenRouter API", "--field", "key").Output()
client := openai.NewClient(option.WithAPIKey(strings.TrimSpace(string(key))))

Python

import subprocess
# Pass directly — or use the HTTPS proxy to avoid holding the key entirely
stripe.api_key = subprocess.check_output(
    ["clavitor-cli", "get", "Stripe API", "--field", "key"]
).decode().strip()

Rust

let key = std::process::Command::new("clavitor-cli")
    .args(["get", "AWS Credentials", "--field", "secret_key"])
    .output()?;
let client = aws::Client::new(String::from_utf8(key.stdout)?.trim());

TypeScript / Node

import { execSync } from 'child_process';
const apiKey = execSync('clavitor-cli get "Anthropic API" --field key').toString().trim();
const client = new Anthropic({ apiKey });

C# / .NET

using System.Diagnostics;
var psi = new ProcessStartInfo("clavitor-cli") { RedirectStandardOutput = true, UseShellExecute = false };
psi.ArgumentList.Add("get");
psi.ArgumentList.Add("Stripe API");
psi.ArgumentList.Add("--field");
psi.ArgumentList.Add("key");
var key = Process.Start(psi)!.StandardOutput.ReadToEnd().Trim();
var client = new StripeClient(key);

PowerShell

# Single value — pipe or use directly
$key = clavitor-cli get "AWS Credentials" --field secret_key
Set-AWSCredential -AccessKey $env:AWS_ACCESS_KEY -SecretKey $key

# Or use the proxy — no secrets in the script at all
$env:HTTPS_PROXY = "http://localhost:1983"
Invoke-RestMethod -Uri "https://api.openai.com/v1/models" `
  -Headers @{ Authorization = "Bearer clavitor://OpenAI/key" }

Java

import java.nio.charset.StandardCharsets;

Process p = new ProcessBuilder("clavitor-cli", "get", "Stripe API", "--field", "key").start();
String key = new String(p.getInputStream().readAllBytes(), StandardCharsets.UTF_8).trim();
Stripe.apiKey = key;

Konfigurations-Rendering

Speichern Sie Ihre Konfigurationen. Nicht Ihre Geheimnisse.

clavitor-cli render scannt jede Datei nach clavitor://entry/field-Referenzen, löst jede gegen den Tresor auf und gibt das Ergebnis aus. Die Vorlage kann überall sicher gespeichert werden. Die aufgelöste Konfiguration lebt in einer Pipe. Geheimnisse berühren niemals die Festplatte.

# Template (safe to store anywhere)
$ cat app.config.json
{"api_key": "clavitor://OpenRouter API/key", "db": "clavitor://Prod DB/password"}

# Resolved (piped to application, never on disk)
$ clavitor-cli render app.config.json
{"api_key": "sk-or-v1-abc123...", "db": "hunter2"}

Funktioniert mit JSON, YAML, TOML, .env oder jeder Textdatei. Wenn sie clavitor:// enthält, wird sie aufgelöst.

Weitere Integrationsanleitungen

Infrastruktur

Docker, Kubernetes, Terraform, Ansible, GitHub Actions, GitLab CI, SSH. Null Geheimnisse in der Konfiguration, null Geheimnisse in Logs.

Infrastruktur-Anleitung →

KI-Agenten

Claude Code, Codex, OpenClaw, Hermes, CrewAI, LangChain. Bereichsbeschränkte Token, Audit-Trails, automatische Sperrung.

Agenten-Anleitung →

MSP-Tools

PowerShell, Datto RMM, N-able, ConnectWise Automate. Ausgabe von Anmeldedaten für Ihren Kundenstamm.

MSP-Anleitung →

Das Muster ist immer dasselbe.

Ein CLI-Aufruf, jeder Kontext. Der Geltungsbereich des Agenten bestimmt, was er sehen kann. Die Stufe bestimmt, was er entschlüsseln kann. Das Audit-Log zeichnet jeden Zugriff auf.