@ouro.bot/cli 0.1.0-alpha.236 → 0.1.0-alpha.238
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/changelog.json +5 -3
- package/dist/heart/config-registry.js +26 -27
- package/dist/heart/core.js +0 -17
- package/dist/heart/daemon/cli-render.js +129 -46
- package/dist/heart/daemon/daemon.js +4 -0
- package/dist/heart/daemon/socket-client.js +1 -0
- package/dist/nerves/coverage/file-completeness.js +2 -0
- package/dist/repertoire/ado-semantic.js +0 -5
- package/dist/repertoire/commerce-errors.js +109 -0
- package/dist/repertoire/commerce-self-test.js +156 -0
- package/dist/repertoire/duffel-client.js +185 -0
- package/dist/repertoire/guardrails.js +11 -2
- package/dist/repertoire/mcp-client.js +1 -0
- package/dist/repertoire/mcp-manager.js +53 -1
- package/dist/repertoire/stripe-client.js +131 -0
- package/dist/repertoire/tools-base.js +6 -0
- package/dist/repertoire/tools-config.js +6 -87
- package/dist/repertoire/tools-flight.js +224 -0
- package/dist/repertoire/tools-github.js +0 -1
- package/dist/repertoire/tools-stripe.js +180 -0
- package/dist/repertoire/tools-teams.js +0 -3
- package/dist/repertoire/tools-user-profile.js +144 -0
- package/dist/repertoire/tools.js +1 -15
- package/dist/repertoire/user-profile.js +118 -0
- package/dist/senses/inner-dialog.js +0 -1
- package/dist/senses/teams.js +0 -48
- package/package.json +3 -2
- package/skills/agent-commerce.md +106 -0
- package/skills/commerce-setup-guide.md +116 -0
- package/skills/commerce-setup.md +84 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Commerce Setup Wizard
|
|
2
|
+
|
|
3
|
+
Step-by-step guide for setting up the agent's commerce infrastructure: payment, booking, and accommodation APIs.
|
|
4
|
+
|
|
5
|
+
last_verified: 2026-04-06
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
- Agent vault must be set up (run `vault_setup` tool if not done)
|
|
10
|
+
- Vault must be reachable at the configured server URL
|
|
11
|
+
|
|
12
|
+
## Step 1: Stripe Issuing (Payments)
|
|
13
|
+
|
|
14
|
+
1. Create a Stripe account at https://dashboard.stripe.com
|
|
15
|
+
2. Enable Stripe Issuing (requires business verification)
|
|
16
|
+
3. Create a restricted API key at https://dashboard.stripe.com/apikeys
|
|
17
|
+
- Enable only `issuing_cards:write` and `issuing_cards:read` permissions
|
|
18
|
+
4. Store the key in the vault: `credential_store stripe.com --password <restricted_key> --notes "Stripe Issuing restricted key"`
|
|
19
|
+
|
|
20
|
+
### Verification
|
|
21
|
+
Run `stripe_list_cards` to verify the key works. Expected: empty list or existing cards.
|
|
22
|
+
|
|
23
|
+
## Step 2: Duffel (Flights)
|
|
24
|
+
|
|
25
|
+
1. Create a Duffel account at https://app.duffel.com
|
|
26
|
+
2. Generate a sandbox API token at https://app.duffel.com/tokens
|
|
27
|
+
- Start with sandbox mode for testing
|
|
28
|
+
- Switch to live mode when ready for real bookings
|
|
29
|
+
3. Store the key in the vault: `credential_store duffel.com --password <api_token> --notes "Duffel API token (sandbox)"`
|
|
30
|
+
|
|
31
|
+
### Verification
|
|
32
|
+
Run `flight_search` with any route (e.g., SFO to JFK). Expected: list of flight offers.
|
|
33
|
+
|
|
34
|
+
## Step 3: LiteAPI (Hotels)
|
|
35
|
+
|
|
36
|
+
1. Create a LiteAPI account at https://dashboard.liteapi.travel
|
|
37
|
+
2. Get your sandbox API key from the dashboard
|
|
38
|
+
3. Store the key in the vault: `credential_store liteapi.travel --password <api_key> --notes "LiteAPI sandbox key"`
|
|
39
|
+
4. Configure the MCP server in agent.json:
|
|
40
|
+
```json
|
|
41
|
+
{
|
|
42
|
+
"mcpServers": {
|
|
43
|
+
"liteapi": {
|
|
44
|
+
"command": "npx",
|
|
45
|
+
"args": ["tsx", "src/index.ts"],
|
|
46
|
+
"cwd": "/path/to/liteapi-mcp-server",
|
|
47
|
+
"env": {
|
|
48
|
+
"LITEAPI_API_KEY": "vault:liteapi.travel/apiKey"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Verification
|
|
56
|
+
The LiteAPI MCP server will start automatically when the agent boots. Check agent logs for `mcp.connect_end` event for the liteapi server.
|
|
57
|
+
|
|
58
|
+
## Step 4: User Profile
|
|
59
|
+
|
|
60
|
+
Store the human's travel profile:
|
|
61
|
+
```
|
|
62
|
+
user_profile_store '{"legalName": {"first": "...", "last": "..."}, "email": "...", "phone": "...", "preferences": {}}'
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Optional but recommended fields: dateOfBirth, passport, driverLicense, addresses, loyaltyPrograms.
|
|
66
|
+
|
|
67
|
+
## Self-Test
|
|
68
|
+
|
|
69
|
+
After setup, run the commerce self-test to verify all services:
|
|
70
|
+
- Stripe: creates and deactivates a test virtual card
|
|
71
|
+
- Duffel: runs a test flight search
|
|
72
|
+
- LiteAPI: verifies the API key is stored in the vault
|
|
73
|
+
|
|
74
|
+
The self-test reports per-service health with actionable error messages:
|
|
75
|
+
- "Flights working, hotels not yet -- LiteAPI key missing."
|
|
76
|
+
- "Your Duffel key returned 401. Verify it at app.duffel.com/tokens."
|
|
77
|
+
|
|
78
|
+
## Security Model
|
|
79
|
+
|
|
80
|
+
- All API keys stored in the agent's Vaultwarden vault (not env vars)
|
|
81
|
+
- Card numbers never appear in model context or logs
|
|
82
|
+
- Virtual cards are single-use by default, deactivated after each transaction
|
|
83
|
+
- User profile access requires family trust level
|
|
84
|
+
- Vault credentials are resolved at MCP server startup, not at runtime
|