usertrust 1.2.1 → 1.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,268 @@
1
+ # usertrust™
2
+
3
+ Financial governance for AI agents. Every LLM call becomes an immutable, auditable transaction.
4
+
5
+ ```typescript
6
+ import { trust } from "usertrust";
7
+ import Anthropic from "@anthropic-ai/sdk";
8
+
9
+ // dryRun: true — skips TigerBeetle so you can try instantly.
10
+ // Audit chain and policy engine still run.
11
+ const client = await trust(new Anthropic(), { dryRun: true, budget: 50_000 });
12
+
13
+ const { response, governance } = await client.messages.create({
14
+ model: "claude-sonnet-4.6",
15
+ max_tokens: 1024,
16
+ messages: [{ role: "user", content: "Analyze this contract" }],
17
+ });
18
+
19
+ console.log(governance);
20
+
21
+ // REQUIRED — process hangs without this
22
+ await client.destroy();
23
+ ```
24
+
25
+ That's it. One function wraps any supported LLM client. Every call is metered, audited, and policy-checked.
26
+
27
+ ### Expected Output
28
+
29
+ The `governance` receipt returned from every call:
30
+
31
+ ```
32
+ {
33
+ cost: 42,
34
+ budgetRemaining: 49958,
35
+ transferId: "tx_m4k7p2_a1b2c3",
36
+ auditHash: "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
37
+ settled: true,
38
+ model: "claude-sonnet-4.6",
39
+ provider: "anthropic",
40
+ inputTokens: 12,
41
+ outputTokens: 28
42
+ }
43
+ ```
44
+
45
+ ## Install
46
+
47
+ ```bash
48
+ npx usertrust init
49
+ ```
50
+
51
+ This creates a `.usertrust/` vault in your project root with default config, policies, and an empty audit chain.
52
+
53
+ ## Integration
54
+
55
+ Works with Anthropic, OpenAI, and Google AI SDKs:
56
+
57
+ ```typescript
58
+ import { trust } from "usertrust";
59
+ import Anthropic from "@anthropic-ai/sdk";
60
+ import OpenAI from "openai";
61
+
62
+ // Anthropic
63
+ const anthropic = await trust(new Anthropic());
64
+ const { response, governance } = await anthropic.messages.create({ ... });
65
+
66
+ // OpenAI
67
+ const openai = await trust(new OpenAI());
68
+ const { response, governance } = await openai.chat.completions.create({ ... });
69
+
70
+ // With options (full mode — requires TigerBeetle)
71
+ const client = await trust(new Anthropic(), {
72
+ budget: 100_000,
73
+ });
74
+ ```
75
+
76
+ Every call returns `{ response, governance }` where `governance` is a receipt:
77
+
78
+ ```typescript
79
+ {
80
+ transferId: "tx_m4k7r2_a1b2c3",
81
+ cost: 142,
82
+ budgetRemaining: 49_858,
83
+ auditHash: "a3f8...",
84
+ settled: true,
85
+ model: "claude-sonnet-4.6",
86
+ provider: "anthropic",
87
+ timestamp: "2026-03-16T12:00:00.000Z"
88
+ }
89
+ ```
90
+
91
+ ## Inspect
92
+
93
+ ```bash
94
+ npx usertrust inspect
95
+ ```
96
+
97
+ ```
98
+ === Vault Report ===
99
+ Chain: 847 events · 12 segments
100
+ Budget: 38,420 / 50,000 UT remaining
101
+ Models: claude-sonnet-4-6 (412) · gpt-4o (289) · gemini-2.0-flash (146)
102
+ Policy: 3 rules active · 0 violations
103
+ PII: 2 warnings · 0 blocks
104
+ Merkle: a3f8c1...d92b (root)
105
+ ```
106
+
107
+ ## CLI
108
+
109
+ All commands support `--json` for machine-readable output.
110
+
111
+ ```bash
112
+ usertrust init # Create .usertrust/ vault
113
+ usertrust inspect # Vault bank statement
114
+ usertrust health # Entropy diagnostics (6 signals, 0-100 score)
115
+ usertrust verify # Verify audit chain integrity
116
+ usertrust snapshot # Checkpoint/restore vault state
117
+ usertrust tb # TigerBeetle process management
118
+ usertrust completions # Shell completions (bash, zsh, fish)
119
+ ```
120
+
121
+ ### JSON output
122
+
123
+ Every command supports `--json` for scripting and CI:
124
+
125
+ ```bash
126
+ usertrust inspect --json | jq '.data.remaining'
127
+ ```
128
+
129
+ ### Shell completions
130
+
131
+ ```bash
132
+ # Bash
133
+ usertrust completions bash > ~/.local/share/bash-completion/completions/usertrust
134
+
135
+ # Zsh
136
+ usertrust completions zsh > "${fpath[1]}/_usertrust"
137
+
138
+ # Fish
139
+ usertrust completions fish > ~/.config/fish/completions/usertrust.fish
140
+ ```
141
+
142
+ ### Error messages
143
+
144
+ All errors include fix suggestions and documentation links:
145
+
146
+ ```
147
+ Ledger unavailable: connection refused
148
+
149
+ Hint: Start TigerBeetle with "npx usertrust tb start" or use { dryRun: true } to skip the ledger.
150
+ Docs: https://usertrust.ai/docs/errors/ledger-unavailable
151
+ ```
152
+
153
+ ## Config
154
+
155
+ Create `.usertrust/usertrust.config.json`:
156
+
157
+ ```json
158
+ {
159
+ "budget": 50000,
160
+ "tier": "pro",
161
+ "pii": "block",
162
+ "board": { "enabled": true, "vetoThreshold": "high" },
163
+ "circuitBreaker": { "failureThreshold": 5, "resetTimeout": 60000 },
164
+ "patterns": { "enabled": true },
165
+ "audit": { "rotation": "daily", "indexLimit": 10000 }
166
+ }
167
+ ```
168
+
169
+ `defineConfig` is available as a TypeScript type-checking helper for validating config objects in your code. The actual config file must be `usertrust.config.json` (JSON format):
170
+
171
+ ```typescript
172
+ import { defineConfig } from "usertrust";
173
+
174
+ // Type-check your config object — useful for programmatic overrides
175
+ const config = defineConfig({
176
+ budget: 50_000,
177
+ tier: "pro",
178
+ pii: "block",
179
+ board: { enabled: true, vetoThreshold: "high" },
180
+ circuitBreaker: { failureThreshold: 5, resetTimeout: 60_000 },
181
+ patterns: { enabled: true },
182
+ audit: { rotation: "daily", indexLimit: 10_000 },
183
+ });
184
+ ```
185
+
186
+ ## Features
187
+
188
+ **Double-entry ledger** — TigerBeetle-backed financial transactions with two-phase lifecycle (PENDING, POST, VOID). Not a counter.
189
+
190
+ **SHA-256 hash-chained audit** — Every event links to the previous event's hash. Tamper-evident by construction. Append-only JSONL.
191
+
192
+ **Merkle proofs (RFC 6962)** — Inclusion and consistency proofs for public verifiability. Any third party can verify a specific event existed in the chain.
193
+
194
+ **Policy engine** — 12 field operators (`eq`, `gt`, `in`, `regex`, etc.) with soft/hard enforcement. Block specific models, cap costs, require approvals.
195
+
196
+ **PII detection** — Luhn-validated credit card numbers, SSN patterns, email addresses, phone numbers, IPv4 addresses. Block or warn before data leaves your network.
197
+
198
+ **Board of Directors** — Heuristic AI oversight layer. Risk and Compliance directors vote on high-stakes operations. Configurable veto thresholds.
199
+
200
+ **Circuit breakers** — Per-provider failure isolation. When a provider starts failing, the breaker opens and requests fail fast instead of cascading.
201
+
202
+ **Pattern memory** — Learns optimal model routing from historical prompt-cost-success data. Feeds routing decisions when connected to proxy.
203
+
204
+ ## Why this exists
205
+
206
+ AI agents operate with financial authority. Every LLM call costs money. Without governance:
207
+
208
+ - There is no audit trail when an agent spends $500 on a hallucinated loop
209
+ - There is no budget enforcement across multiple concurrent agents
210
+ - There is no way to prove what happened after the fact
211
+ - A race condition between two agents can double-spend the same budget
212
+
213
+ A counter in a database is not a financial ledger. `usertrust` uses the same double-entry, two-phase commit pattern that banks use. PENDING holds reserve the budget atomically. POST settles. VOID releases. The audit chain is hash-linked and Merkle-provable.
214
+
215
+ ## Comparison
216
+
217
+ | Feature | usertrust | LiteLLM | Portkey | Langfuse |
218
+ |---------|-----------|---------|---------|----------|
219
+ | Financial ledger | TigerBeetle | Counter | Counter | Observation |
220
+ | Two-phase spend | PENDING/POST/VOID | No | No | No |
221
+ | Hash-chained audit | SHA-256 | No | No | No |
222
+ | Merkle proofs | RFC 6962 | No | No | No |
223
+ | Policy engine | 12 operators | Basic rules | Basic rules | No |
224
+ | PII detection | Luhn + regex | No | No | No |
225
+ | Circuit breakers | Per-provider | Global | Per-provider | No |
226
+ | Offline-first | Local vault | Proxy required | Proxy required | Proxy required |
227
+ | Open source | Apache 2.0 | Apache 2.0 | Proprietary | Apache 2.0 |
228
+
229
+ ## Upgrade path
230
+
231
+ When you outgrow local mode, point at the proxy. One line:
232
+
233
+ ```typescript
234
+ const client = await trust(new Anthropic(), {
235
+ proxy: "https://proxy.usertools.ai",
236
+ key: process.env.USERTOOLS_KEY,
237
+ });
238
+ ```
239
+
240
+ Same API. Same receipts. Now with cross-agent budget enforcement, centralized audit, and real-time dashboards.
241
+
242
+ ## Verify
243
+
244
+ Standalone verification with zero dependencies:
245
+
246
+ ```bash
247
+ npx usertrust-verify .usertrust
248
+ ```
249
+
250
+ ```
251
+ Vault integrity: VERIFIED
252
+ Chain length: 847 events
253
+ Merkle root: a3f8c1...d92b
254
+ Hash algorithm: SHA-256
255
+ First event: 2026-03-01T08:12:44.000Z
256
+ Last event: 2026-03-16T14:33:21.000Z
257
+ All hashes: valid (847/847)
258
+ ```
259
+
260
+ The verify package has zero runtime dependencies. It reads JSONL, recomputes SHA-256 hashes, and checks the chain. Anyone can verify a vault without trusting the usertrust SDK.
261
+
262
+ ## License
263
+
264
+ Apache 2.0
265
+
266
+ ---
267
+
268
+ UserTrust™ is a trademark of Usertools, Inc.
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Shared CLI flag parser — extracts typed flags + positional args from argv.
3
+ *
4
+ * Keeps the individual subcommand files thin by centralising repetitive
5
+ * arg-slicing logic.
6
+ */
7
+ export interface ParsedFlags {
8
+ json: boolean;
9
+ skipVerify: boolean;
10
+ reconfigure: boolean;
11
+ positional: string[];
12
+ }
13
+ export declare function parseFlags(argv?: string[]): ParsedFlags;
14
+ //# sourceMappingURL=flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../../src/cli/flags.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;CACrB;AAID,wBAAgB,UAAU,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,WAAW,CAO9E"}
@@ -0,0 +1,11 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2026 Usertools, Inc.
3
+ const KNOWN_FLAGS = new Set(["--json", "--skip-verify", "--reconfigure"]);
4
+ export function parseFlags(argv = process.argv.slice(2)) {
5
+ const json = argv.includes("--json");
6
+ const skipVerify = argv.includes("--skip-verify");
7
+ const reconfigure = argv.includes("--reconfigure");
8
+ const positional = argv.filter((a) => !KNOWN_FLAGS.has(a));
9
+ return { json, skipVerify, reconfigure, positional };
10
+ }
11
+ //# sourceMappingURL=flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flags.js","sourceRoot":"","sources":["../../src/cli/flags.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAgBjC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;AAE1E,MAAM,UAAU,UAAU,CAAC,OAAiB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,UAAU;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAgCD,wBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAyO5E"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,UAAU;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAgCD,wBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAuO5E"}
package/dist/cli/init.js CHANGED
@@ -82,7 +82,6 @@ export async function run(rootDir, opts) {
82
82
  // Step 1: API key loop
83
83
  const keys = {};
84
84
  const providers = [];
85
- // biome-ignore lint/correctness/noConstantCondition: intentional loop
86
85
  while (true) {
87
86
  const keyResult = await clack.text({
88
87
  message: Object.keys(keys).length === 0
@@ -180,7 +179,6 @@ export async function run(rootDir, opts) {
180
179
  }
181
180
  }
182
181
  // Allow editing individual models
183
- // biome-ignore lint/correctness/noConstantCondition: intentional loop
184
182
  while (true) {
185
183
  const modelResult = await clack.text({
186
184
  message: "Model to edit (empty = accept all):",
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE/F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAQzE,MAAM,WAAW,GAA2B;IAC3C,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,gBAAgB;IACxB,MAAM,EAAE,gBAAgB;CACxB,CAAC;AAEF,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;CAgBtB,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAU,CAAC;AAExF,SAAS,UAAU,CAAC,QAAgB;IACnC,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC;AACrE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAgB,EAAE,IAAiB;IAC5D,MAAM,IAAI,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAEjC,6BAA6B;IAC7B,IAAI,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;QACjD,IAAI,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;gBACd,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,KAAK;gBACd,IAAI,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE;aAC1D,CAAC,CACF,CAAC;QACH,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,OAAO;IACR,CAAC;IAED,sCAAsC;IACtC,IAAI,IAAI,EAAE,CAAC;QACV,WAAW,CAAC,SAAS,EAAE;YACtB,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,EAAE;YACb,OAAO,EAAE,aAAa;YACtB,IAAI,EAAE,EAAE;SACR,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC;YACd,OAAO,EAAE,MAAM;YACf,OAAO,EAAE,IAAI;YACb,IAAI,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC;gBACzB,MAAM,EAAE,uBAAuB;gBAC/B,MAAM,EAAE,sBAAsB;aAC9B;SACD,CAAC,CACF,CAAC;QACF,OAAO;IACR,CAAC;IAED,2BAA2B;IAC3B,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAE9B,uBAAuB;IACvB,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,MAAM,SAAS,GAA8C,EAAE,CAAC;IAEhE,OAAO,IAAI,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;YAClC,OAAO,EACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAC7B,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,uCAAuC;YAC3C,WAAW,EAAE,QAAQ;SACrB,CAAC,CAAC;QAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACnC,OAAO;QACR,CAAC;QAED,MAAM,GAAG,GAAI,SAAoB,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,GAAG,KAAK,EAAE;YAAE,MAAM;QAEtB,IAAI,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;gBACvC,OAAO,EAAE,iDAAiD;gBAC1D,WAAW,EAAE,wBAAwB;aACrC,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACpC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACnC,OAAO;YACR,CAAC;YAED,QAAQ,GAAI,cAAyB,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC3D,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9C,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBAC/E,SAAS;YACV,CAAC;QACF,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC1B,CAAC,CAAC,KAAK,CAAC,cAAc,QAAQ,SAAS,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAClB,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,eAAe,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACP,CAAC,CAAC,IAAI,CAAC,GAAG,QAAQ,2BAA2B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC7D,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;YAC9E,CAAC;QACF,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,QAAQ,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;QACrB,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC3C,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;QACrC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,CAAC,KAAK;gBAAE,OAAO,yBAAyB,CAAC;YAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3D,OAAO,yBAAyB,CAAC;YAClC,CAAC;QACF,CAAC;KACD,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACnC,OAAO;IACR,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAE,YAAuB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IACtE,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IAEtD,gBAAgB;IAChB,IAAI,OAAO,GAA6B,aAAa,CAAC;IACtD,IAAI,WAAmD,CAAC;IAExD,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;QAC1C,OAAO,EAAE,oCAAoC,qBAAqB,GAAG;QACrE,YAAY,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACpC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACnC,OAAO;IACR,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,OAAO,GAAG,QAAQ,CAAC;QACnB,WAAW,GAAG,EAAE,CAAC;QAEjB,0CAA0C;QAC1C,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAElC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC;YACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,WAAW,KAAK,CAAC,UAAU,eAAe,KAAK,CAAC,WAAW,KAAK,CAAC,CAAC;YAC5F,CAAC;QACF,CAAC;QAED,kCAAkC;QAClC,OAAO,IAAI,EAAE,CAAC;YACb,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;gBACpC,OAAO,EAAE,qCAAqC;gBAC9C,WAAW,EAAE,wBAAwB;aACrC,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACnC,OAAO;YACR,CAAC;YAED,MAAM,KAAK,GAAI,WAAsB,CAAC,IAAI,EAAE,CAAC;YAC7C,IAAI,KAAK,KAAK,EAAE;gBAAE,MAAM;YAExB,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBACtC,SAAS;YACV,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;gBACpC,OAAO,EAAE,GAAG,KAAK,4BAA4B;aAC7C,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACnC,OAAO;YACR,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC;gBACrC,OAAO,EAAE,GAAG,KAAK,6BAA6B;aAC9C,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACnC,OAAO;YACR,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;YAExC,IACC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC3B,SAAS,GAAG,CAAC;gBACb,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC5B,UAAU,GAAG,CAAC,EACb,CAAC;gBACF,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;gBAChE,SAAS;YACV,CAAC;YAED,oEAAoE;YACpE,WAAW,CAAC,KAAK,CAAC,GAAG;gBACpB,UAAU,EAAE,SAAS,GAAG,EAAE;gBAC1B,WAAW,EAAE,UAAU,GAAG,EAAE;aAC5B,CAAC;YAEF,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IAED,uBAAuB;IACvB,WAAW,CAAC,SAAS,EAAE;QACtB,MAAM,EAAE,gBAAgB;QACxB,SAAS;QACT,OAAO;QACP,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,IAAI;KACJ,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;AAC9C,CAAC;AAUD,SAAS,WAAW,CAAC,SAAiB,EAAE,IAAe;IACtD,6BAA6B;IAC7B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,eAAe;IACf,MAAM,MAAM,GAA4B;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,wBAAwB;QAClC,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE;QAChD,cAAc,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE;QAC5D,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;QAC7C,KAAK,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;QAC/C,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;KACrB,CAAC;IAEF,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,eAAe;IACf,aAAa,CACZ,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,EACxC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,EAClC,OAAO,CACP,CAAC;IAEF,uBAAuB;IACvB,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAEnF,2BAA2B;IAC3B,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE;YAClE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChE,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,OAAO,GAAG,CAAC;QAC/C,CAAC,CAAC,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAClE,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,KAAK;SACX,CAAC,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,MAAM,gBAAgB,GAAG;;;;CAIzB,CAAC;IACD,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAExE,4CAA4C;IAC5C,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- declare const COMMANDS: readonly ["init", "inspect", "health", "verify", "snapshot", "tb", "pricing", "completions"];
2
+ declare const COMMANDS: readonly ["init", "inspect", "health", "verify", "snapshot", "tb", "pricing", "completions", "secret", "skill"];
3
3
  /** Simple Levenshtein distance — two-row DP, no dependency needed. */
4
4
  declare function levenshtein(a: string, b: string): number;
5
5
  declare function suggestCommand(input: string): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":";AAIA,QAAA,MAAM,QAAQ,8FASJ,CAAC;AAWX,sEAAsE;AACtE,iBAAS,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBjD;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAczD;AAED,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":";AAIA,QAAA,MAAM,QAAQ,iHAWJ,CAAC;AAWX,sEAAsE;AACtE,iBAAS,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBjD;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAczD;AAED,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC"}
package/dist/cli/main.js CHANGED
@@ -10,6 +10,8 @@ const COMMANDS = [
10
10
  "tb",
11
11
  "pricing",
12
12
  "completions",
13
+ "secret",
14
+ "skill",
13
15
  ];
14
16
  const argv = process.argv.slice(2);
15
17
  const jsonFlag = argv.includes("--json");
@@ -75,6 +77,12 @@ switch (command) {
75
77
  case "completions":
76
78
  await import("./completions.js").then((m) => m.run(positional[1], { json: jsonFlag }));
77
79
  break;
80
+ case "secret":
81
+ await import("./secret.js").then((m) => m.run(undefined, { json: jsonFlag }));
82
+ break;
83
+ case "skill":
84
+ await import("./skill.js").then((m) => m.run(undefined, { json: jsonFlag }));
85
+ break;
78
86
  default: {
79
87
  if (command && !command.startsWith("-")) {
80
88
  const suggestion = suggestCommand(command);
@@ -95,6 +103,8 @@ Commands:
95
103
  tb Manage TigerBeetle process
96
104
  pricing Show current rate configuration
97
105
  completions Output shell completion scripts
106
+ secret Manage vault credentials
107
+ skill Verify skill manifests
98
108
 
99
109
  Options:
100
110
  --json Output machine-readable JSON`);
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function run(_unused?: unknown, opts?: {
2
+ json?: boolean;
3
+ }): Promise<void>;
4
+ //# sourceMappingURL=secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.d.ts","sourceRoot":"","sources":["../../src/cli/secret.ts"],"names":[],"mappings":"AAmBA,wBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiKrF"}
@@ -0,0 +1,167 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2026 Usertools, Inc.
3
+ /**
4
+ * CLI: usertrust secret <add|rm|ls|get|rotate>
5
+ *
6
+ * Manages credentials in the encrypted vault store.
7
+ */
8
+ import pc from "picocolors";
9
+ import { createAuditWriter } from "../audit/chain.js";
10
+ import { loadConfig } from "../config.js";
11
+ import { createVaultStore } from "../vault/store.js";
12
+ import { parseFlags } from "./flags.js";
13
+ const SUBCOMMANDS = ["add", "rm", "ls", "get", "rotate"];
14
+ export async function run(_unused, opts) {
15
+ const { json, positional } = parseFlags();
16
+ const jsonOut = opts?.json ?? json;
17
+ // positional: ["secret", sub, ...rest]
18
+ const sub = positional[1];
19
+ if (!sub || !SUBCOMMANDS.includes(sub)) {
20
+ const msg = `Usage: usertrust secret <add|rm|ls|get|rotate>
21
+
22
+ Subcommands:
23
+ add <name> <value> Store a credential
24
+ rm <name> Remove a credential
25
+ ls List stored credentials
26
+ get <name> Retrieve a credential value
27
+ rotate <name> <val> Rotate a credential`;
28
+ if (jsonOut) {
29
+ console.log(JSON.stringify({
30
+ command: "secret",
31
+ success: false,
32
+ data: { error: sub ? `Unknown subcommand: ${sub}` : "Missing subcommand" },
33
+ }));
34
+ }
35
+ else {
36
+ console.log(msg);
37
+ }
38
+ return;
39
+ }
40
+ const cwd = process.cwd();
41
+ const config = await loadConfig(undefined, cwd);
42
+ const audit = createAuditWriter(cwd);
43
+ const vault = await createVaultStore({ vaultBase: cwd, config, audit });
44
+ try {
45
+ switch (sub) {
46
+ case "add": {
47
+ const name = positional[2];
48
+ const value = positional[3];
49
+ if (!name || !value) {
50
+ if (jsonOut)
51
+ console.log(JSON.stringify({
52
+ command: "secret add",
53
+ success: false,
54
+ data: { error: "Name required" },
55
+ }));
56
+ else
57
+ console.log(pc.red("Usage: usertrust secret add <name> <value>"));
58
+ return;
59
+ }
60
+ await vault.add(name, value);
61
+ if (jsonOut)
62
+ console.log(JSON.stringify({ command: "secret add", success: true, data: { name } }));
63
+ else
64
+ console.log(pc.green(`Credential "${name}" stored.`));
65
+ break;
66
+ }
67
+ case "rm": {
68
+ const name = positional[2];
69
+ if (!name) {
70
+ if (jsonOut)
71
+ console.log(JSON.stringify({
72
+ command: "secret rm",
73
+ success: false,
74
+ data: { error: "Name required" },
75
+ }));
76
+ else
77
+ console.log(pc.red("Usage: usertrust secret rm <name>"));
78
+ return;
79
+ }
80
+ await vault.remove(name);
81
+ if (jsonOut)
82
+ console.log(JSON.stringify({ command: "secret rm", success: true, data: { name } }));
83
+ else
84
+ console.log(pc.green(`Credential "${name}" removed.`));
85
+ break;
86
+ }
87
+ case "ls": {
88
+ const entries = await vault.list();
89
+ if (jsonOut) {
90
+ console.log(JSON.stringify({ command: "secret ls", success: true, data: entries }));
91
+ }
92
+ else if (entries.length === 0) {
93
+ console.log(pc.dim("No credentials stored."));
94
+ }
95
+ else {
96
+ for (const e of entries) {
97
+ console.log(`${pc.bold(e.name)} scope=${JSON.stringify(e.scope)} rotated=${e.rotatedAt}`);
98
+ }
99
+ }
100
+ break;
101
+ }
102
+ case "get": {
103
+ const name = positional[2];
104
+ if (!name) {
105
+ if (jsonOut)
106
+ console.log(JSON.stringify({
107
+ command: "secret get",
108
+ success: false,
109
+ data: { error: "Name required" },
110
+ }));
111
+ else
112
+ console.log(pc.red("Usage: usertrust secret get <name>"));
113
+ return;
114
+ }
115
+ const result = await vault.get(name, {
116
+ agent: "cli",
117
+ action: "tool_use",
118
+ });
119
+ if (jsonOut) {
120
+ if (result.granted) {
121
+ process.stdout.write(`${JSON.stringify({ command: "secret get", success: true, data: { name, value: result.value } })}\n`);
122
+ }
123
+ else {
124
+ console.log(JSON.stringify({
125
+ command: "secret get",
126
+ success: false,
127
+ data: { name, error: result.reason },
128
+ }));
129
+ }
130
+ }
131
+ else if (result.granted) {
132
+ process.stdout.write(`${result.value ?? ""}\n`);
133
+ }
134
+ else {
135
+ console.log(pc.red(result.reason ?? "Access denied"));
136
+ }
137
+ break;
138
+ }
139
+ case "rotate": {
140
+ const name = positional[2];
141
+ const value = positional[3];
142
+ if (!name || !value) {
143
+ if (jsonOut)
144
+ console.log(JSON.stringify({
145
+ command: "secret rotate",
146
+ success: false,
147
+ data: { error: "Name required" },
148
+ }));
149
+ else
150
+ console.log(pc.red("Usage: usertrust secret rotate <name> <value>"));
151
+ return;
152
+ }
153
+ await vault.rotate(name, value);
154
+ if (jsonOut)
155
+ console.log(JSON.stringify({ command: "secret rotate", success: true, data: { name } }));
156
+ else
157
+ console.log(pc.green(`Credential "${name}" rotated.`));
158
+ break;
159
+ }
160
+ }
161
+ }
162
+ finally {
163
+ vault.destroy();
164
+ audit.release();
165
+ }
166
+ }
167
+ //# sourceMappingURL=secret.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.js","sourceRoot":"","sources":["../../src/cli/secret.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function run(_unused?: unknown, opts?: {
2
+ json?: boolean;
3
+ }): Promise<void>;
4
+ //# sourceMappingURL=skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../src/cli/skill.ts"],"names":[],"mappings":"AAiBA,wBAAsB,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqGrF"}
@@ -0,0 +1,105 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2026 Usertools, Inc.
3
+ /**
4
+ * CLI: usertrust skill verify <path>
5
+ *
6
+ * Validates a skill manifest against the supply-chain policy.
7
+ */
8
+ import { readFileSync } from "node:fs";
9
+ import pc from "picocolors";
10
+ import { loadConfig } from "../config.js";
11
+ import { validateManifest } from "../supply-chain/manifest.js";
12
+ import { enforceSkillLoad } from "../supply-chain/permissions.js";
13
+ import { verifySignature } from "../supply-chain/sign.js";
14
+ import { parseFlags } from "./flags.js";
15
+ export async function run(_unused, opts) {
16
+ const { json, positional } = parseFlags();
17
+ const jsonOut = opts?.json ?? json;
18
+ // positional: ["skill", "verify", path]
19
+ const action = positional[1];
20
+ const manifestPath = positional[2];
21
+ if (action !== "verify") {
22
+ const msg = action
23
+ ? `Unknown subcommand: ${action}`
24
+ : "Usage: usertrust skill verify <manifest.json>";
25
+ if (jsonOut)
26
+ console.log(JSON.stringify({ command: "skill", success: false, data: { error: msg } }));
27
+ else
28
+ console.log(msg);
29
+ return;
30
+ }
31
+ if (!manifestPath) {
32
+ if (jsonOut)
33
+ console.log(JSON.stringify({
34
+ command: "skill verify",
35
+ success: false,
36
+ data: { error: "Path required" },
37
+ }));
38
+ else
39
+ console.log("Usage: usertrust skill verify <manifest.json>");
40
+ return;
41
+ }
42
+ let rawText;
43
+ try {
44
+ rawText = readFileSync(manifestPath, "utf-8");
45
+ }
46
+ catch {
47
+ const err = `File not found: ${manifestPath}`;
48
+ if (jsonOut)
49
+ console.log(JSON.stringify({ command: "skill verify", success: false, data: { error: err } }));
50
+ else
51
+ console.log(pc.red(err));
52
+ return;
53
+ }
54
+ let raw;
55
+ try {
56
+ raw = JSON.parse(rawText);
57
+ }
58
+ catch {
59
+ const err = `Invalid JSON in ${manifestPath}`;
60
+ if (jsonOut)
61
+ console.log(JSON.stringify({ command: "skill verify", success: false, data: { error: err } }));
62
+ else
63
+ console.log(pc.red(err));
64
+ return;
65
+ }
66
+ let manifest;
67
+ try {
68
+ manifest = validateManifest(raw);
69
+ }
70
+ catch (e) {
71
+ const err = `Schema error: ${e instanceof Error ? e.message : String(e)}`;
72
+ if (jsonOut)
73
+ console.log(JSON.stringify({ command: "skill verify", success: false, data: { error: err } }));
74
+ else
75
+ console.log(pc.red(err));
76
+ return;
77
+ }
78
+ const sigValid = verifySignature(manifest);
79
+ const config = await loadConfig(undefined, process.cwd());
80
+ const result = enforceSkillLoad(manifest, config);
81
+ const output = {
82
+ id: manifest.id,
83
+ publisher: manifest.publisher,
84
+ signatureValid: sigValid,
85
+ permissionsAllowed: result.permissionsAllowed,
86
+ deniedPermissions: result.deniedPermissions,
87
+ manifestHash: result.manifestHash,
88
+ };
89
+ if (jsonOut) {
90
+ const success = sigValid && result.permissionsAllowed;
91
+ console.log(JSON.stringify({
92
+ command: "skill verify",
93
+ success,
94
+ data: success ? output : { ...output, error: "Verification failed" },
95
+ }));
96
+ }
97
+ else {
98
+ console.log(`${pc.bold("Skill:")} ${manifest.id}`);
99
+ console.log(`${pc.bold("Publisher:")} ${manifest.publisher}`);
100
+ console.log(`${pc.bold("Signature:")} ${sigValid ? pc.green("valid") : pc.red("INVALID")}`);
101
+ console.log(`${pc.bold("Permissions:")} ${result.permissionsAllowed ? pc.green("allowed") : pc.red(`denied: ${result.deniedPermissions.join(", ")}`)}`);
102
+ console.log(`${pc.bold("Manifest hash:")} ${result.manifestHash}`);
103
+ }
104
+ }
105
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/cli/skill.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export type { TrustOpts, TrustedClient } from "./govern.js";
3
3
  export { createGovernor } from "./headless.js";
4
4
  export type { Governor, Authorization, AuthorizeParams, SettleParams } from "./headless.js";
5
5
  export { loadConfig, defineConfig } from "./config.js";
6
- export type { TrustedResponse, TrustReceipt, TrustConfig, PolicyRule, FieldCondition, BoardDecision, AuditEvent, LLMClientKind, ActionKind, ActionDescriptor, GovernedActionResult, InjectionDetection, CanaryToken, SkillPermission, SkillManifest, SkillVerification, CredentialScope, CredentialEntry, CredentialAccessResult, } from "./shared/types.js";
6
+ export type { TrustedResponse, TrustReceipt, TrustConfig, PolicyRule, FieldCondition, FieldOperator, PolicyEffect, PolicyEnforcement, PolicySeverity, BoardDecision, AuditEvent, LLMClientKind, ActionKind, ActionDescriptor, GovernedActionResult, InjectionDetection, CanaryToken, SkillPermission, SkillManifest, SkillVerification, CredentialScope, CredentialEntry, CredentialAccessResult, } from "./shared/types.js";
7
7
  export { detectInjection } from "./policy/injection.js";
8
8
  export { generateCanary, injectCanary, detectCanaryLeak } from "./policy/canary.js";
9
9
  export { validateManifest, createUnsignedManifest, hashManifest } from "./supply-chain/manifest.js";
@@ -12,5 +12,17 @@ export { checkPermissions, enforceSkillLoad } from "./supply-chain/permissions.j
12
12
  export { createVaultStore } from "./vault/store.js";
13
13
  export type { VaultStore } from "./vault/store.js";
14
14
  export { checkScope } from "./vault/scope.js";
15
- export { InsufficientBalanceError, PolicyDeniedError, LedgerUnavailableError, AuditDegradedError, VaultNotInitializedError, SkillVerificationError, VaultKeyMissingError, CredentialAccessDeniedError, } from "./shared/errors.js";
15
+ export { InsufficientBalanceError, PolicyDeniedError, AccountNotFoundError, IdempotencyConflictError, LedgerUnavailableError, AuditDegradedError, VaultNotInitializedError, SkillVerificationError, VaultKeyMissingError, CredentialAccessDeniedError, } from "./shared/errors.js";
16
+ export type { GovernedStream } from "./streaming.js";
17
+ export { detectPII } from "./policy/pii.js";
18
+ export type { PIIDetection } from "./policy/pii.js";
19
+ export { hashPrompt, recordPattern, suggestModel, getPatternStats } from "./memory/patterns.js";
20
+ export { buildMerkleTree, generateInclusionProof, verifyInclusionProof, generateConsistencyProof, verifyConsistencyProof, hashLeaf, hashInternal, } from "./audit/merkle.js";
21
+ export type { MerkleInclusionProof, MerkleConsistencyProof, MerkleSibling, } from "./audit/merkle.js";
22
+ export { getModelRates, estimateCost, estimateInputTokens } from "./ledger/pricing.js";
23
+ export type { ModelRates } from "./ledger/pricing.js";
24
+ export { createBoard } from "./board/board.js";
25
+ export type { BoardStats, BoardReviewResult } from "./board/board.js";
26
+ export { CircuitBreaker, CircuitBreakerRegistry, CircuitOpenError } from "./resilience/circuit.js";
27
+ export type { CircuitBreakerSnapshot } from "./resilience/circuit.js";
16
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG5F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGvD,YAAY,EACX,eAAe,EACf,YAAY,EACZ,WAAW,EACX,UAAU,EACV,cAAc,EACd,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGpF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,GAC3B,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG5F,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGvD,YAAY,EACX,eAAe,EACf,YAAY,EACZ,WAAW,EACX,UAAU,EACV,cAAc,EACd,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGpF,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGhG,OAAO,EACN,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,QAAQ,EACR,YAAY,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACX,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,GACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACvF,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGtE,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACnG,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/index.js CHANGED
@@ -18,5 +18,17 @@ export { checkPermissions, enforceSkillLoad } from "./supply-chain/permissions.j
18
18
  export { createVaultStore } from "./vault/store.js";
19
19
  export { checkScope } from "./vault/scope.js";
20
20
  // Errors
21
- export { InsufficientBalanceError, PolicyDeniedError, LedgerUnavailableError, AuditDegradedError, VaultNotInitializedError, SkillVerificationError, VaultKeyMissingError, CredentialAccessDeniedError, } from "./shared/errors.js";
21
+ export { InsufficientBalanceError, PolicyDeniedError, AccountNotFoundError, IdempotencyConflictError, LedgerUnavailableError, AuditDegradedError, VaultNotInitializedError, SkillVerificationError, VaultKeyMissingError, CredentialAccessDeniedError, } from "./shared/errors.js";
22
+ // PII detection
23
+ export { detectPII } from "./policy/pii.js";
24
+ // Pattern memory
25
+ export { hashPrompt, recordPattern, suggestModel, getPatternStats } from "./memory/patterns.js";
26
+ // Merkle proofs
27
+ export { buildMerkleTree, generateInclusionProof, verifyInclusionProof, generateConsistencyProof, verifyConsistencyProof, hashLeaf, hashInternal, } from "./audit/merkle.js";
28
+ // Pricing
29
+ export { getModelRates, estimateCost, estimateInputTokens } from "./ledger/pricing.js";
30
+ // Board
31
+ export { createBoard } from "./board/board.js";
32
+ // Circuit breaker
33
+ export { CircuitBreaker, CircuitBreakerRegistry, CircuitOpenError } from "./resilience/circuit.js";
22
34
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,0CAA0C;AAE1C,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,SAAS;AACT,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAyBvD,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEpF,eAAe;AACf,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEnF,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,GAC3B,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,0CAA0C;AAE1C,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,SAAS;AACT,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA6BvD,sBAAsB;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEpF,eAAe;AACf,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEnF,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,SAAS;AACT,OAAO,EACN,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,GAC3B,MAAM,oBAAoB,CAAC;AAK5B,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,iBAAiB;AACjB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEhG,gBAAgB;AAChB,OAAO,EACN,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,QAAQ,EACR,YAAY,GACZ,MAAM,mBAAmB,CAAC;AAO3B,UAAU;AACV,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGvF,QAAQ;AACR,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,kBAAkB;AAClB,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "usertrust",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "Financial governance for AI agents. Every LLM call becomes an immutable, auditable transaction.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Usertools, Inc. <hello@usertools.ai> (https://usertrust.ai)",