@ravi-hq/ravi 0.1.0 → 0.2.0
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 +56 -6
- package/dist/auth.d.ts +39 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +97 -0
- package/dist/auth.js.map +1 -0
- package/dist/bin/ravi-secrets.d.ts +23 -0
- package/dist/bin/ravi-secrets.d.ts.map +1 -0
- package/dist/bin/ravi-secrets.js +113 -0
- package/dist/bin/ravi-secrets.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +142 -188
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +4 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +26 -17
- package/dist/client.js.map +1 -1
- package/dist/crypto.d.ts +13 -0
- package/dist/crypto.d.ts.map +1 -1
- package/dist/crypto.js +45 -5
- package/dist/crypto.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +68 -46
- package/dist/index.js.map +1 -1
- package/dist/service.d.ts +7 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +11 -0
- package/dist/service.js.map +1 -1
- package/dist/sse.d.ts +9 -0
- package/dist/sse.d.ts.map +1 -1
- package/dist/sse.js +20 -2
- package/dist/sse.js.map +1 -1
- package/dist/tools/email-send.js +1 -1
- package/dist/tools/email-send.js.map +1 -1
- package/dist/tools/feedback.d.ts +2 -3
- package/dist/tools/feedback.d.ts.map +1 -1
- package/dist/tools/feedback.js +26 -18
- package/dist/tools/feedback.js.map +1 -1
- package/dist/tools/inbox.d.ts.map +1 -1
- package/dist/tools/inbox.js +15 -56
- package/dist/tools/inbox.js.map +1 -1
- package/dist/tools/passwords.d.ts.map +1 -1
- package/dist/tools/passwords.js +21 -51
- package/dist/tools/passwords.js.map +1 -1
- package/dist/tools/vault.d.ts.map +1 -1
- package/dist/tools/vault.js +4 -8
- package/dist/tools/vault.js.map +1 -1
- package/dist/types.d.ts +10 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +6 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +18 -0
- package/dist/utils.js.map +1 -1
- package/openclaw.plugin.json +3 -23
- package/package.json +5 -3
- package/skills/CLAUDE.md +0 -36
- package/skills/ravi/SKILL.md +0 -46
- package/skills/ravi-email-send/SKILL.md +0 -44
- package/skills/ravi-feedback/SKILL.md +0 -37
- package/skills/ravi-identity/SKILL.md +0 -50
- package/skills/ravi-inbox/SKILL.md +0 -58
- package/skills/ravi-login/SKILL.md +0 -42
- package/skills/ravi-passwords/SKILL.md +0 -48
- package/skills/ravi-vault/SKILL.md +0 -54
package/skills/ravi/SKILL.md
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi
|
|
3
|
-
description: Overview of Ravi and when to use each tool. Ravi gives AI agents real email inboxes, phone numbers, and an encrypted credential vault. Do NOT use for tasks unrelated to agent identity, email, phone, or credentials.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi — Identity Provider for AI Agents
|
|
7
|
-
|
|
8
|
-
Ravi gives you (the agent) your own email address, phone number, and encrypted credential vault. One identity bundles all three into a coherent persona.
|
|
9
|
-
|
|
10
|
-
## When to Use Each Tool
|
|
11
|
-
|
|
12
|
-
| I need to... | Use tool / skill |
|
|
13
|
-
|--------------|------------------|
|
|
14
|
-
| Get my email address and phone number | `ravi_get_info` |
|
|
15
|
-
| List or create identities | `ravi_identity_list`, `ravi_identity_create` |
|
|
16
|
-
| Read incoming SMS or email (OTPs, verification links) | `ravi_inbox_sms`, `ravi_inbox_email` |
|
|
17
|
-
| Read a specific thread or conversation | `ravi_read_email`, `ravi_read_sms` |
|
|
18
|
-
| Send an email or reply to one | `ravi_email_compose`, `ravi_email_reply` |
|
|
19
|
-
| Store, retrieve, or delete website passwords | `ravi_passwords_create`, `ravi_passwords_get`, `ravi_passwords_delete` |
|
|
20
|
-
| Store or retrieve API keys and secrets | `ravi_vault_set`, `ravi_vault_get` |
|
|
21
|
-
| Submit feedback, report bugs | `ravi_feedback` |
|
|
22
|
-
|
|
23
|
-
## Quick Start
|
|
24
|
-
|
|
25
|
-
```
|
|
26
|
-
# Get your email and phone
|
|
27
|
-
ravi_get_info()
|
|
28
|
-
|
|
29
|
-
# Check for unread SMS
|
|
30
|
-
ravi_inbox_sms(unread: true)
|
|
31
|
-
|
|
32
|
-
# Send an email
|
|
33
|
-
ravi_email_compose(to: "user@example.com", subject: "Hello", body: "Hi there")
|
|
34
|
-
|
|
35
|
-
# Store a website password
|
|
36
|
-
ravi_passwords_create(domain: "example.com", username: "me@ravi.app", password: "S3cret!")
|
|
37
|
-
|
|
38
|
-
# Store an API key
|
|
39
|
-
ravi_vault_set(key: "OPENAI_API_KEY", value: "sk-...")
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
## Key Rules
|
|
43
|
-
|
|
44
|
-
- **E2E encryption is transparent** — the plugin handles encrypt/decrypt. You see plaintext.
|
|
45
|
-
- **Auth errors** — if tools fail with auth errors, ask the user to run `openclaw ravi login`.
|
|
46
|
-
- **Install:** `openclaw plugin add ravi`
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-email-send
|
|
3
|
-
description: Send, compose, or reply to emails from your Ravi email address. Do NOT use for reading incoming email (use ravi-inbox) or for credentials (use ravi-passwords or ravi-vault).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Email — Send
|
|
7
|
-
|
|
8
|
-
Compose new emails or reply to existing ones from your Ravi email address.
|
|
9
|
-
|
|
10
|
-
## Compose a New Email
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
ravi_email_compose(
|
|
14
|
-
to: "recipient@example.com",
|
|
15
|
-
subject: "Subject line",
|
|
16
|
-
body: "Plain text body content. Newlines are preserved."
|
|
17
|
-
)
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
The `body` is plain text. The plugin wraps it in HTML automatically.
|
|
21
|
-
|
|
22
|
-
## Reply to an Email
|
|
23
|
-
|
|
24
|
-
```
|
|
25
|
-
# Reply to sender only
|
|
26
|
-
ravi_email_reply(message_id: 42, body: "Thanks for the update.")
|
|
27
|
-
|
|
28
|
-
# Reply to all recipients
|
|
29
|
-
ravi_email_reply(message_id: 42, body: "Noted, thanks everyone.", reply_all: true)
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
Get the `message_id` from `ravi_read_email` (the `id` field on each message).
|
|
33
|
-
|
|
34
|
-
## Workflow Example
|
|
35
|
-
|
|
36
|
-
1. Read inbox: `ravi_inbox_email(unread: true)`
|
|
37
|
-
2. Read thread: `ravi_read_email(thread_id: "abc123")`
|
|
38
|
-
3. Reply: `ravi_email_reply(message_id: 10, body: "Got it, thanks!")`
|
|
39
|
-
|
|
40
|
-
## Important Notes
|
|
41
|
-
|
|
42
|
-
- **Plain text body** — the plugin converts plain text to HTML automatically. No need for HTML tags.
|
|
43
|
-
- **Rate limits** — 60 emails/hour, 500/day. On 429 errors, wait and retry.
|
|
44
|
-
- **To read emails**, use the `ravi-inbox` skill tools instead.
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-feedback
|
|
3
|
-
description: Send feedback to the Ravi team — bugs, feature requests, praise, frustrations, suggestions. Do NOT use for general email sending (use ravi-email-send).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Feedback
|
|
7
|
-
|
|
8
|
-
Send feedback, bug reports, feature requests, or suggestions to the Ravi team.
|
|
9
|
-
|
|
10
|
-
## Send Feedback
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
ravi_feedback(message: "The vault tools are great but batch import would be useful")
|
|
14
|
-
|
|
15
|
-
# With a category
|
|
16
|
-
ravi_feedback(message: "SMS delivery is slow in EU regions", category: "bug")
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
**Categories:** `bug`, `feature`, `help`, `other`
|
|
20
|
-
|
|
21
|
-
## When to Use
|
|
22
|
-
|
|
23
|
-
Proactively share feedback when you notice anything worth mentioning:
|
|
24
|
-
|
|
25
|
-
- **Bugs** — something is not working as expected
|
|
26
|
-
- **Friction** — a workflow that is harder than it should be
|
|
27
|
-
- **Missing features** — something you wish existed
|
|
28
|
-
- **Positive feedback** — something that works well
|
|
29
|
-
- **Suggestions** — ideas that would improve the agent experience
|
|
30
|
-
- **Confusion** — unclear behavior or naming
|
|
31
|
-
|
|
32
|
-
The Ravi team reads every message and builds based on agent feedback.
|
|
33
|
-
|
|
34
|
-
## Important Notes
|
|
35
|
-
|
|
36
|
-
- **Requires authentication** — the user must be logged in via `openclaw ravi login`
|
|
37
|
-
- Feedback is sent from the user's Ravi account so the team can follow up
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-identity
|
|
3
|
-
description: Manage Ravi identities — list, create, and get your agent's email and phone. Do NOT use for reading messages (use ravi-inbox), sending email (use ravi-email-send), or credentials (use ravi-passwords or ravi-vault).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Identity
|
|
7
|
-
|
|
8
|
-
You have access to Ravi tools that give you your own phone number, email address, and credential vault.
|
|
9
|
-
|
|
10
|
-
## Get Your Identity
|
|
11
|
-
|
|
12
|
-
Use `ravi_get_info` to retrieve your active identity's email and phone:
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
ravi_get_info()
|
|
16
|
-
# Returns: { email: "janedoe@ravi.app", phone: "+15551234567" }
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Use this email for signups and this phone for SMS verification.
|
|
20
|
-
|
|
21
|
-
## List Identities
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
ravi_identity_list()
|
|
25
|
-
# Returns: [{ uuid, name, email, phone, created_dt }, ...]
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
Each identity has its own email, phone, and vault.
|
|
29
|
-
|
|
30
|
-
## Create a New Identity
|
|
31
|
-
|
|
32
|
-
Only create when the user explicitly asks for one. New identities require a paid plan.
|
|
33
|
-
|
|
34
|
-
```
|
|
35
|
-
ravi_identity_create(name: "Project Name")
|
|
36
|
-
# Provisions a new email, phone, and vault
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## Important Notes
|
|
40
|
-
|
|
41
|
-
- **Identities are permanent** — each has its own email, phone, and vault. Do not create new ones unless asked.
|
|
42
|
-
- **Auth errors** — if tools fail, ask the user to run `openclaw ravi login`.
|
|
43
|
-
- **Identity name for forms** — when signing up for services, use the identity name (from `ravi_identity_list`) as "your" name, not the account owner's name.
|
|
44
|
-
|
|
45
|
-
## Related Skills
|
|
46
|
-
|
|
47
|
-
- **ravi-inbox** — Read SMS and email messages
|
|
48
|
-
- **ravi-email-send** — Compose and reply to emails
|
|
49
|
-
- **ravi-passwords** — Store and retrieve website credentials
|
|
50
|
-
- **ravi-vault** — Store and retrieve key-value secrets
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-inbox
|
|
3
|
-
description: Read incoming SMS or email messages — OTPs, verification codes, verification links, incoming mail. Do NOT use for sending email (use ravi-email-send) or managing credentials (use ravi-passwords or ravi-vault).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Inbox
|
|
7
|
-
|
|
8
|
-
Read SMS and email messages received at your Ravi identity. Use this after triggering verifications, 2FA, or when expecting incoming messages.
|
|
9
|
-
|
|
10
|
-
## SMS (OTPs, verification codes)
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
# List SMS conversations (grouped by sender)
|
|
14
|
-
ravi_inbox_sms()
|
|
15
|
-
|
|
16
|
-
# Only conversations with unread messages
|
|
17
|
-
ravi_inbox_sms(unread: true)
|
|
18
|
-
|
|
19
|
-
# Read all messages in a specific conversation
|
|
20
|
-
ravi_read_sms(conversation_id: "1_+15559876543")
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
**Response shape — conversation list:**
|
|
24
|
-
Each conversation includes `conversation_id`, `from_number`, `phone_number`, `preview`, `message_count`, `unread_count`, and `latest_message_dt`.
|
|
25
|
-
|
|
26
|
-
**Response shape — conversation detail:**
|
|
27
|
-
Each message includes `id`, `from_number`, `to_number`, `body`, `direction`, `is_read`, and `created_dt`.
|
|
28
|
-
|
|
29
|
-
## Email (verification links, confirmations)
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
# List email threads
|
|
33
|
-
ravi_inbox_email()
|
|
34
|
-
|
|
35
|
-
# Only threads with unread messages
|
|
36
|
-
ravi_inbox_email(unread: true)
|
|
37
|
-
|
|
38
|
-
# Read all messages in a specific thread
|
|
39
|
-
ravi_read_email(thread_id: "abc123")
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
**Response shape — thread detail:**
|
|
43
|
-
Each message includes `id`, `from_email`, `to_email`, `subject`, `text_content`, `html_content`, `is_read`, and `created_dt`.
|
|
44
|
-
|
|
45
|
-
## Quick Recipes
|
|
46
|
-
|
|
47
|
-
### Extract an OTP from SMS
|
|
48
|
-
|
|
49
|
-
Call `ravi_inbox_sms(unread: true)`, then look for numeric codes (4-8 digits) in the `preview` field.
|
|
50
|
-
|
|
51
|
-
### Extract a verification link from email
|
|
52
|
-
|
|
53
|
-
Call `ravi_inbox_email(unread: true)` to find the thread, then `ravi_read_email(thread_id: ...)` and look for URLs in `text_content`.
|
|
54
|
-
|
|
55
|
-
## Important Notes
|
|
56
|
-
|
|
57
|
-
- **Poll, don't rush** — SMS/email delivery takes 2-10 seconds. Wait before checking.
|
|
58
|
-
- **Encrypted fields are decrypted automatically** — you see plaintext subjects, previews, and bodies.
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-login
|
|
3
|
-
description: Sign up for and log into services using your Ravi identity — handles forms, 2FA, OTPs, and credential storage. Also covers authenticating the Ravi plugin itself.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Login
|
|
7
|
-
|
|
8
|
-
End-to-end workflows for signing up, logging in, and completing verification using your Ravi identity.
|
|
9
|
-
|
|
10
|
-
## Authenticate the Plugin
|
|
11
|
-
|
|
12
|
-
If tools fail with auth errors, the user needs to run the CLI login:
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
openclaw ravi login
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
This opens a browser for device-code authentication. The user saves the token to their OpenClaw config.
|
|
19
|
-
|
|
20
|
-
Check status with: `openclaw ravi status`
|
|
21
|
-
|
|
22
|
-
## Sign Up for a Service
|
|
23
|
-
|
|
24
|
-
1. **Get your identity:** `ravi_get_info()` for your email and phone
|
|
25
|
-
2. **Get your name:** `ravi_identity_list()` and use the identity `name` field for form fields (not the account owner)
|
|
26
|
-
3. **Create credentials:** `ravi_passwords_create(domain: "example.com", username: email, password: "StrongPass!")`
|
|
27
|
-
4. **Fill the signup form** with your email, phone, name, and password
|
|
28
|
-
5. **Wait for verification:** pause 5 seconds, then check `ravi_inbox_sms(unread: true)` or `ravi_inbox_email(unread: true)`
|
|
29
|
-
6. **Extract OTP or link** from the message and complete verification
|
|
30
|
-
|
|
31
|
-
## Log Into a Service
|
|
32
|
-
|
|
33
|
-
1. **Find credentials:** `ravi_passwords_list()` and match by domain
|
|
34
|
-
2. **Get password:** `ravi_passwords_get(uuid: ...)` for the decrypted password
|
|
35
|
-
3. **Fill the login form** with username and password
|
|
36
|
-
4. **Handle 2FA:** if prompted, wait 5 seconds, then `ravi_inbox_sms(unread: true)` to get the OTP code
|
|
37
|
-
|
|
38
|
-
## Tips
|
|
39
|
-
|
|
40
|
-
- **Poll, don't rush** — SMS/email delivery takes 2-10 seconds. Wait before checking inbox.
|
|
41
|
-
- **Store credentials immediately** — create a password entry during signup so you do not lose it.
|
|
42
|
-
- **Identity name for forms** — use the identity name from `ravi_identity_list`, not the owner name.
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-passwords
|
|
3
|
-
description: Store and retrieve website credentials — E2E encrypted password manager for domain/username/password entries. Do NOT use for API keys/secrets (use ravi-vault) or reading messages (use ravi-inbox).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Passwords
|
|
7
|
-
|
|
8
|
-
Store and retrieve passwords for websites and services. All fields are E2E encrypted — the plugin handles encryption/decryption transparently.
|
|
9
|
-
|
|
10
|
-
## Tools
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
# List all entries (passwords hidden in list view)
|
|
14
|
-
ravi_passwords_list()
|
|
15
|
-
# Returns: [{ uuid, domain, username, created_dt }, ...]
|
|
16
|
-
|
|
17
|
-
# Get a specific entry with decrypted password
|
|
18
|
-
ravi_passwords_get(uuid: "abc-123")
|
|
19
|
-
# Returns: { uuid, domain, username, password, notes, created_dt }
|
|
20
|
-
|
|
21
|
-
# Create a new entry
|
|
22
|
-
ravi_passwords_create(domain: "github.com", username: "me@ravi.app", password: "S3cret!")
|
|
23
|
-
|
|
24
|
-
# Create with just a domain (useful if you'll set password later)
|
|
25
|
-
ravi_passwords_create(domain: "example.com")
|
|
26
|
-
|
|
27
|
-
# Delete an entry
|
|
28
|
-
ravi_passwords_delete(uuid: "abc-123")
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Signup Workflow
|
|
32
|
-
|
|
33
|
-
1. Get your identity: `ravi_get_info()` to get your email
|
|
34
|
-
2. Create credentials: `ravi_passwords_create(domain: "example.com", username: email, password: "StrongPass1!")`
|
|
35
|
-
3. Use the returned `password` in the signup form
|
|
36
|
-
4. Wait for verification: `ravi_inbox_sms(unread: true)` or `ravi_inbox_email(unread: true)`
|
|
37
|
-
|
|
38
|
-
## Login Workflow
|
|
39
|
-
|
|
40
|
-
1. Find credentials: `ravi_passwords_list()` and look for the matching domain
|
|
41
|
-
2. Get password: `ravi_passwords_get(uuid: ...)` to get the decrypted password
|
|
42
|
-
3. Use `username` and `password` to log in
|
|
43
|
-
|
|
44
|
-
## Important Notes
|
|
45
|
-
|
|
46
|
-
- **Passwords hidden in list view** — `ravi_passwords_list` shows `[hidden]` for passwords. Use `ravi_passwords_get` to see the actual password.
|
|
47
|
-
- **E2E encryption is transparent** — you see plaintext values.
|
|
48
|
-
- **For API keys and env vars**, use `ravi_vault_set` / `ravi_vault_get` instead.
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ravi-vault
|
|
3
|
-
description: Store and retrieve key-value secrets — E2E encrypted vault for API keys and env vars. Do NOT use for website passwords (use ravi-passwords) or reading messages (use ravi-inbox).
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Ravi Vault
|
|
7
|
-
|
|
8
|
-
Store and retrieve key-value secrets (API keys, environment variables, tokens). Values are E2E encrypted — the plugin handles encryption/decryption transparently. Keys are stored in plaintext for lookup.
|
|
9
|
-
|
|
10
|
-
## Tools
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
# Store a secret (creates or updates)
|
|
14
|
-
ravi_vault_set(key: "OPENAI_API_KEY", value: "sk-abc123...")
|
|
15
|
-
|
|
16
|
-
# Retrieve a secret (decrypted)
|
|
17
|
-
ravi_vault_get(key: "OPENAI_API_KEY")
|
|
18
|
-
# Returns: { uuid, key, value, created_dt, updated_dt }
|
|
19
|
-
|
|
20
|
-
# List all secret keys (values not included)
|
|
21
|
-
ravi_vault_list()
|
|
22
|
-
# Returns: [{ uuid, key, created_dt, updated_dt }, ...]
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Common Use Cases
|
|
26
|
-
|
|
27
|
-
### Store API keys for later use
|
|
28
|
-
|
|
29
|
-
```
|
|
30
|
-
ravi_vault_set(key: "OPENAI_API_KEY", value: "sk-abc123...")
|
|
31
|
-
ravi_vault_set(key: "ANTHROPIC_API_KEY", value: "sk-ant-...")
|
|
32
|
-
ravi_vault_set(key: "GITHUB_TOKEN", value: "ghp_...")
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
### Retrieve a key at runtime
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
result = ravi_vault_get(key: "OPENAI_API_KEY")
|
|
39
|
-
# Use result.value in API calls
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### List available keys
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
ravi_vault_list()
|
|
46
|
-
# See what secrets are stored without exposing values
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Important Notes
|
|
50
|
-
|
|
51
|
-
- **Keys are unique per identity** — setting an existing key updates it.
|
|
52
|
-
- **Keys are plaintext** — only values are encrypted. Use descriptive names like `OPENAI_API_KEY`.
|
|
53
|
-
- **E2E encryption is transparent** — you see plaintext values.
|
|
54
|
-
- **For website credentials** (domain + username + password), use `ravi_passwords_create` / `ravi_passwords_get` instead.
|