---
title: "开发者"
description: "一次 CLI 调用。所有机密。无环境变量。无配置文件。日志中无机密。"
lang: zh
url: https://clavitor.ai/zh/developers
markdown: https://clavitor.ai/zh/developers.md
translation_of: https://clavitor.ai/en/developers.md
authoritative: false
publisher: Clavitor LLC
---

> This is the Chinese translation of [Developers](https://clavitor.ai/en/developers.md). The original English text is authoritative; where the two differ, the English version prevails.

# 开发者: 一次 CLI 调用。所有机密。

无环境变量。无配置文件。日志中无机密。代码所需的每项机密，均在运行时从智能体无法绕过的保管库中解析。

## 模式: 一次存储，随处检索。

每个智能体仅初始化一次，并分配专属令牌、作用域和速率限制。此后，智能体即可在运行时获取机密。密钥以加密形式存储在保管库中，绝不存于环境变量或源代码中。若密钥发生轮换，只需在保管库 UI 中更新，所有智能体均会自动获取最新密钥。

```
# 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://`，由代理注入真实值。日志中无记录，智能体内存中无残留。

### 您该使用哪一种？

| Feature | Field | Render | Proxy |
|---|---|---|---|
| 日志中无机密 | 3/3 | 2/3 | 3/3 |
| 适用于任何编程语言 | 3/3 | 3/3 | 3/3 |
| 适用于任何工具（curl、SDK、浏览器） | 2/3 | 1/3 | 3/3 |
| 智能体级作用域与审计 | 3/3 | 3/3 | 1/3 |
| 同时处理多个机密 | 1/3 | 3/3 | 2/3 |
| 无需更改代码 | 0/3 | 0/3 | 3/3 |
| 配置文件可安全提交 | 0/3 | 3/3 | 0/3 |
| SSH / 非 HTTP 用例 | 3/3 | 3/3 | 0/3 |

**快速选择：** 构建脚本或 CLI 工具？使用**字段**。部署带有配置文件的服务？使用**渲染**。运行发起 API 调用的 AI 智能体？使用**代理**。

## 为何它胜过所有其他凭据代理。

**无凭据可窃。** 云端托管的代理是高价值目标——攻破一个即可获取所有客户的凭据。本地代理将凭据存储在自身配置中，机器上的任何智能体均可读取。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": "[resolved]", "db": "[resolved]"}
```

适用于 JSON、YAML、TOML、.env 或任何文本文件。只要包含 `clavitor://`，即会被解析。

## 更多集成指南

### 基础设施

Docker、Kubernetes、Terraform、Ansible、GitHub Actions、GitLab CI、SSH。配置中无机密，日志中无机密。
[基础设施指南 →](https://clavitor.ai/zh/developers/infrastructure)

### AI 智能体

Claude Code、Codex、OpenClaw、Hermes、CrewAI、LangChain。限定作用域令牌、审计追踪、自动锁定。
[智能体指南 →](https://clavitor.ai/zh/developers/agents)

### MSP 工具

PowerShell、Datto RMM、N-able、ConnectWise Automate。为您的客户群颁发凭据。
[MSP 指南 →](https://clavitor.ai/zh/developers/msp)

## 模式始终如一。

一次 CLI 调用，适用任何环境。智能体的作用域决定其可见范围。加密级别决定其可解密内容。审计日志记录每一次访问。
[免费开始](https://clavitor.ai/zh/checkout)
