paperclipai/paperclip · error
Use only one of --value or --value-env.
Error message
Use only one of --value or --value-env.
What it means
readValueFromOptions got both --value and --value-env for a secret create/rotate; the mutual-exclusion guard fires because the secret value source is ambiguous.
Solutions
- Pass only one of --value or --value-env.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at cli/src/commands/client/secrets.ts:196 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of paperclipai/paperclip@120ae5428f (2026-08-18).
Data as JSON: /api/errors/c9bc302af073a48f.
Report an issue: GitHub.
Appendix: source
Thrown at cli/src/commands/client/secrets.ts:196
const next: AgentEnvConfig = { ...(env as Record<string, EnvBinding>) };
for (const [envKey, secretId] of secretIdByEnvKey) {
next[envKey] = {
type: "secret_ref",
secretId,
version: "latest",
};
}
return next;
}
function asRecord(value: unknown): Record<string, unknown> | null {
if (typeof value !== "object" || value === null || Array.isArray(value)) return null;
return value as Record<string, unknown>;
}
function readValueFromOptions(opts: { value?: string; valueEnv?: string }): string {
if (opts.value !== undefined && opts.valueEnv !== undefined) {
throw new Error("Use only one of --value or --value-env.");
}
if (opts.valueEnv !== undefined) {
const value = process.env[opts.valueEnv];
if (!value) throw new Error(`Environment variable ${opts.valueEnv} is empty or unset.`);
return value;
}
if (opts.value !== undefined) return opts.value;
throw new Error("Secret value is required. Pass --value or --value-env.");
}
function renderDeclaration(input: CompanyPortabilityEnvInput): Record<string, unknown> {
const scope = input.agentSlug
? `agent:${input.agentSlug}`
: input.projectSlug
? `project:${input.projectSlug}`
: "company";
return {
key: input.key,View on GitHub (pinned to 120ae5428f)