Увійти Безкоштовно назавжди Почати роботу

Розробники

Один виклик CLI. Кожен секрет.

Жодних змінних середовища. Жодних файлів конфігурації. Жодних секретів у логах. Кожен секрет, який потрібен вашому коду, розпізнається під час виконання зі сховища, яке ваш агент не може обійти.

Шаблон

Збережіть один раз. Отримайте будь-де.

Кожен агент ініціалізується один раз зі своїм токеном, областями дії та лімітами запитів. Після цього агент може отримувати секрети під час виконання. Ключ зберігається зашифрованим у сховищі, ніколи у змінних середовища або вихідному коді. Якщо ключ ротується, оновіть його в інтерфейсі сховища — кожен агент отримає його автоматично.

# 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

Три способи використання

Поле, Рендер або Проксі.

Поле

Одне значення. Передайте його до будь-якої команди або скрипта. Секрет існує лише в конвеєрі — ніколи у змінній, ніколи на диску.

Рендер

Цілий файл конфігурації. Розв'яжіть усі посилання clavitor:// під час запуску. Шаблон безпечний для коміту. Розв'язана конфігурація зберігається в конвеєрі.

Проксі

HTTPS проксі. Облікові дані розпізнаються з заголовків прозоро. Агент записує clavitor:// там, де має бути секрет — проксі вставляє реальне значення. Нічого в логах, нічого в пам'яті агента.

Який мені слід використовувати?

МожливістьFieldRenderProxy
Секрети поза логами
Працює з будь-якою мовою
Працює з будь-яким інструментом (curl, SDK, браузер)
Області дії та аудит для кожного агента
Кілька секретів одночасно
Зміни коду не потрібні
Файли конфігурації безпечні для коміту
Випадки використання SSH / не-HTTP

Швидкий вибір: Створюєте скрипт або інструмент CLI? Використовуйте Поле. Розгортаєте сервіс із файлом конфігурації? Використовуйте Рендер. Запускаєте ШІ-агентів, які роблять виклики API? Використовуйте Проксі.

Чому це краще за будь-який інший проксі облікових даних.

Нічого вкрасти. Хмарні проксі є цілями високої цінності — зламайте один, і Ви отримаєте облікові дані кожного клієнта. Локальні проксі зберігають облікові дані у власній конфігурації, яку може прочитати будь-який агент на машині. Проксі Clavitor містить лише зашифрований файл конфігурації. Жодних секретів у відкритому тексті на диску, жодного сховища облікових даних для злому.

Агенти не можуть його розкрити. Скомпрометований агент не може витягти облікові дані з проксі — проксі не надає API, не обслуговує панель керування та не приймає команд. Він читає один заголовок, розв'язує одне посилання та вставляє результат у вихідний запит. Жодної поверхні атаки.

Нічого в логах. Агент записує clavitor://Entry/field. Це те, що з'являється у стандартному виведенні, у логах, в історії розмов. Реальні облікові дані існують лише всередині процесу проксі протягом одного HTTP-виклику. Агрегатори логів, дампи збоїв, артефакти CI — чисті.

Нульова конфігурація. Жодних таблиць маршрутизації, жодних відображень API, жодних файлів облікових даних для керування. Посилання clavitor:// у заголовку є єдиною інструкцією. Один init, одна змінна середовища, готово.

Мови

Працює на будь-якій мові. SDK не потрібен.

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;

Рендеринг конфігурації

Зберігайте свої конфігурації. Не свої секрети.

clavitor-cli render сканує будь-який файл на наявність посилань clavitor://entry/field, розв'язує кожне відносно сховища та виводить результат. Шаблон безпечний для зберігання будь-де. Розв'язана конфігурація зберігається в конвеєрі. Секрети ніколи не торкаються диска.

# 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"}

Працює з JSON, YAML, TOML, .env або будь-яким текстовим файлом. Якщо він містить clavitor://, посилання буде розв'язано.

Більше посібників з інтеграції

Інфраструктура

Docker, Kubernetes, Terraform, Ansible, GitHub Actions, GitLab CI, SSH. Нуль секретів у конфігурації, нуль секретів у логах.

Посібник з інфраструктури →

ШІ-агенти

Claude Code, Codex, OpenClaw, Hermes, CrewAI, LangChain. Токени з обмеженими областями дії, журнали аудиту, автоматичне блокування.

Посібник з агентів →

Інструменти MSP

PowerShell, Datto RMM, N-able, ConnectWise Automate. Видача облікових даних для вашої клієнтської бази.

Посібник MSP →

Шаблон завжди однаковий.

Один виклик CLI, будь-який контекст. Область дії агента визначає, що він може бачити. Рівень шифрування визначає, що він може розшифрувати. Журнал аудиту записує кожен доступ.