@ravi-hq/ravi 0.5.4 → 0.5.5
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 -69
- package/dist/auth.d.ts +2 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/bin/ravi-secrets.d.ts +3 -3
- package/dist/bin/ravi-secrets.js +7 -7
- package/dist/bin/ravi-secrets.js.map +1 -1
- package/dist/channels/email-trusted.d.ts.map +1 -1
- package/dist/channels/email-trusted.js +5 -7
- package/dist/channels/email-trusted.js.map +1 -1
- package/dist/channels/email-untrusted.d.ts.map +1 -1
- package/dist/channels/email-untrusted.js +5 -7
- package/dist/channels/email-untrusted.js.map +1 -1
- package/dist/channels/email.d.ts +12 -12
- package/dist/channels/email.d.ts.map +1 -1
- package/dist/channels/email.js +48 -49
- package/dist/channels/email.js.map +1 -1
- package/dist/cli.d.ts +15 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +271 -211
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +62 -22
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +75 -33
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +5 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -26
- package/dist/index.js.map +1 -1
- package/dist/sse-pool.d.ts +5 -2
- package/dist/sse-pool.d.ts.map +1 -1
- package/dist/sse-pool.js +9 -7
- package/dist/sse-pool.js.map +1 -1
- package/dist/sse.d.ts +7 -21
- package/dist/sse.d.ts.map +1 -1
- package/dist/sse.js +10 -33
- package/dist/sse.js.map +1 -1
- package/dist/tools/contacts.d.ts +14 -0
- package/dist/tools/contacts.d.ts.map +1 -0
- package/dist/tools/contacts.js +186 -0
- package/dist/tools/contacts.js.map +1 -0
- package/dist/tools/email-send.d.ts.map +1 -1
- package/dist/tools/email-send.js +11 -4
- package/dist/tools/email-send.js.map +1 -1
- package/dist/tools/identity.d.ts +2 -2
- package/dist/tools/identity.d.ts.map +1 -1
- package/dist/tools/identity.js +14 -6
- package/dist/tools/identity.js.map +1 -1
- package/dist/tools/inbox.js +7 -7
- package/dist/tools/inbox.js.map +1 -1
- package/dist/tools/passwords.d.ts.map +1 -1
- package/dist/tools/passwords.js +20 -7
- package/dist/tools/passwords.js.map +1 -1
- package/dist/tools/secrets.d.ts +15 -0
- package/dist/tools/secrets.d.ts.map +1 -0
- package/dist/tools/{vault.js → secrets.js} +23 -23
- package/dist/tools/secrets.js.map +1 -0
- package/dist/tools/sms-send.d.ts.map +1 -1
- package/dist/tools/sms-send.js +3 -1
- package/dist/tools/sms-send.js.map +1 -1
- package/dist/types.d.ts +18 -12
- package/dist/types.d.ts.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +4 -13
- package/dist/channels/sms-trusted.d.ts +0 -161
- package/dist/channels/sms-trusted.d.ts.map +0 -1
- package/dist/channels/sms-trusted.js +0 -306
- package/dist/channels/sms-trusted.js.map +0 -1
- package/dist/channels/sms-untrusted.d.ts +0 -124
- package/dist/channels/sms-untrusted.d.ts.map +0 -1
- package/dist/channels/sms-untrusted.js +0 -269
- package/dist/channels/sms-untrusted.js.map +0 -1
- package/dist/channels/sms.d.ts +0 -269
- package/dist/channels/sms.d.ts.map +0 -1
- package/dist/channels/sms.js +0 -380
- package/dist/channels/sms.js.map +0 -1
- package/dist/tools/vault.d.ts +0 -15
- package/dist/tools/vault.d.ts.map +0 -1
- package/dist/tools/vault.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/tools/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,4DAA4D;IAC5D,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACtF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAID,mEAAmE;AACnE,eAAO,MAAM,aAAa,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/tools/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAIlD;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,4DAA4D;IAC5D,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACtF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAID,mEAAmE;AACnE,eAAO,MAAM,aAAa,EAAE,cAAc,EAqEzC,CAAC"}
|
package/dist/tools/identity.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Identity management tools for the Ravi OpenClaw plugin.
|
|
3
3
|
*
|
|
4
4
|
* Provides tools to list, create, and inspect Ravi identities. Each identity
|
|
5
|
-
* bundles an email address, phone number, and encrypted
|
|
5
|
+
* bundles an email address, phone number, and encrypted secrets store into a coherent
|
|
6
6
|
* persona for AI agents.
|
|
7
7
|
*
|
|
8
8
|
* @module tools/identity
|
|
@@ -13,8 +13,8 @@ export const identityTools = [
|
|
|
13
13
|
{
|
|
14
14
|
name: "ravi_identity_list",
|
|
15
15
|
description: "List all Ravi identities for the authenticated account. " +
|
|
16
|
-
"Each identity bundles a unique email address, phone number, and encrypted
|
|
17
|
-
"Returns an array of objects with uuid, name,
|
|
16
|
+
"Each identity bundles a unique email address, phone number, and encrypted secrets store into a coherent agent persona. " +
|
|
17
|
+
"Returns an array of objects with uuid, name, inbox, and phone fields. " +
|
|
18
18
|
"Account-level operation — does not require a specific identity to be configured.",
|
|
19
19
|
parameters: {
|
|
20
20
|
type: "object",
|
|
@@ -28,7 +28,9 @@ export const identityTools = [
|
|
|
28
28
|
{
|
|
29
29
|
name: "ravi_identity_create",
|
|
30
30
|
description: "Create a new Ravi identity. This provisions a unique email address, " +
|
|
31
|
-
"a phone number, and an encrypted
|
|
31
|
+
"a phone number, and an encrypted secrets store — all bundled under the given name. " +
|
|
32
|
+
"Optionally specify a custom email local part (e.g. 'shopping' → shopping@<your-domain>). " +
|
|
33
|
+
"Requires an active paid subscription — returns HTTP 402 if the account doesn't have one. " +
|
|
32
34
|
"Use the identity name (not the account owner's personal name) when filling out forms or registering on websites. " +
|
|
33
35
|
"Account-level operation — does not require an existing identity to be configured.",
|
|
34
36
|
parameters: {
|
|
@@ -38,11 +40,17 @@ export const identityTools = [
|
|
|
38
40
|
type: "string",
|
|
39
41
|
description: "Display name for the new identity (e.g. 'Research Agent', 'Customer Support')",
|
|
40
42
|
},
|
|
43
|
+
email: {
|
|
44
|
+
type: "string",
|
|
45
|
+
description: "Optional custom email local part (e.g. 'shopping', 'research-bot'). " +
|
|
46
|
+
"Must be 3-30 chars, lowercase alphanumeric with dots/hyphens, no consecutive dots/hyphens. " +
|
|
47
|
+
"If omitted, a random address is auto-generated. Returns 409 if already taken.",
|
|
48
|
+
},
|
|
41
49
|
},
|
|
42
50
|
required: ["name"],
|
|
43
51
|
},
|
|
44
52
|
handler: async (params, { client }) => {
|
|
45
|
-
return client.createIdentity(params.name);
|
|
53
|
+
return client.createIdentity(params.name, params.email);
|
|
46
54
|
},
|
|
47
55
|
},
|
|
48
56
|
{
|
|
@@ -52,7 +60,7 @@ export const identityTools = [
|
|
|
52
60
|
"or fill in a signup form. Returns { email: string, phone: string }. " +
|
|
53
61
|
"The phone is in E.164 format (e.g. +15551234567). " +
|
|
54
62
|
"This is NOT the account owner's info — it's the identity's provisioned contact details. " +
|
|
55
|
-
"
|
|
63
|
+
"For the identity name (e.g. for form fields or email signatures), use ravi_identity_list.",
|
|
56
64
|
parameters: {
|
|
57
65
|
type: "object",
|
|
58
66
|
properties: {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/tools/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAsCH,+EAA+E;AAE/E,mEAAmE;AACnE,MAAM,CAAC,MAAM,aAAa,GAAqB;IAC7C;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,0DAA0D;YAC1D,
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/tools/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAsCH,+EAA+E;AAE/E,mEAAmE;AACnE,MAAM,CAAC,MAAM,aAAa,GAAqB;IAC7C;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,0DAA0D;YAC1D,yHAAyH;YACzH,wEAAwE;YACxE,kFAAkF;QACpF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACrC,OAAO,MAAM,CAAC,cAAc,EAAE,CAAC;QACjC,CAAC;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,sEAAsE;YACtE,qFAAqF;YACrF,2FAA2F;YAC3F,2FAA2F;YAC3F,mHAAmH;YACnH,mFAAmF;QACrF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,+EAA+E;iBAC7F;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,sEAAsE;wBACtE,6FAA6F;wBAC7F,+EAA+E;iBAClF;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,IAAc,EAAE,MAAM,CAAC,KAA2B,CAAC,CAAC;QAC1F,CAAC;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,iFAAiF;YACjF,iGAAiG;YACjG,sEAAsE;YACtE,oDAAoD;YACpD,0FAA0F;YAC1F,2FAA2F;QAC7F,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACrC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvC,MAAM,CAAC,QAAQ,EAAE;gBACjB,MAAM,CAAC,QAAQ,EAAE;aAClB,CAAC,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1B,CAAC;KACF;CACF,CAAC"}
|
package/dist/tools/inbox.js
CHANGED
|
@@ -57,10 +57,9 @@ export const inboxTools = [
|
|
|
57
57
|
name: "ravi_inbox_sms",
|
|
58
58
|
description: "List SMS conversations grouped by phone number. Each conversation shows the latest message preview, " +
|
|
59
59
|
"message count, and unread count. Pass unread=true to filter to conversations with new messages. " +
|
|
60
|
-
"Use conversation_id with ravi_read_sms to read the full thread. " +
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"Encrypted previews are automatically decrypted.",
|
|
60
|
+
"Use conversation_id with ravi_read_sms to read the full thread and extract OTP codes. " +
|
|
61
|
+
"Encrypted previews are automatically decrypted. " +
|
|
62
|
+
"To reply to an SMS, use ravi_sms_send with the sender's phone number.",
|
|
64
63
|
parameters: {
|
|
65
64
|
type: "object",
|
|
66
65
|
properties: {
|
|
@@ -85,7 +84,7 @@ export const inboxTools = [
|
|
|
85
84
|
{
|
|
86
85
|
name: "ravi_read_email",
|
|
87
86
|
description: "Read all messages in an email thread. Returns the full conversation with each message's " +
|
|
88
|
-
"id, from_email, to_email, cc (comma-separated CC recipients), subject, text_content, html_content, is_read status, and attachments array. " +
|
|
87
|
+
"id, from_email, from_display_name, to_email, cc (comma-separated CC recipients), subject, text_content, html_content, is_read status, and attachments array. " +
|
|
89
88
|
"Check the cc field to see who else is in the conversation — use this when deciding who to include in reply CC. " +
|
|
90
89
|
"Each attachment object has uuid, filename, content_type, size (bytes), is_inline, and download_url. " +
|
|
91
90
|
"Pass download_attachments=true to download all attachments to a temp directory — each attachment " +
|
|
@@ -145,11 +144,12 @@ export const inboxTools = [
|
|
|
145
144
|
{
|
|
146
145
|
name: "ravi_read_sms",
|
|
147
146
|
description: "Read all SMS messages in a conversation. Returns each message's id, body, direction " +
|
|
148
|
-
"(
|
|
147
|
+
"(incoming/outgoing), is_read status, and timestamp. " +
|
|
149
148
|
"Tip: to extract OTP/verification codes, look for 4-8 digit numbers in the body text — " +
|
|
150
149
|
"e.g. match /[0-9]{4,8}/ against each message body. SMS delivery takes 2-10 seconds, " +
|
|
151
150
|
"so poll with a short delay if you just triggered a verification. " +
|
|
152
|
-
"Encrypted bodies are automatically decrypted."
|
|
151
|
+
"Encrypted bodies are automatically decrypted. " +
|
|
152
|
+
"To reply to an SMS, use ravi_sms_send with the sender's phone number from the conversation.",
|
|
153
153
|
parameters: {
|
|
154
154
|
type: "object",
|
|
155
155
|
properties: {
|
package/dist/tools/inbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/tools/inbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAqB;IAC1C;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,sFAAsF;YACtF,uGAAuG;YACvG,iHAAiH;YACjH,qGAAqG;YACrG,+DAA+D;YAC/D,mEAAmE;QACrE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,gFAAgF;iBAC9F;aACF;YACD,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAe,EAAE,EAAE;YAClF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAA6B,CAAC,CAAC;YACpF,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,IAAI,MAAM,CAAC,OAAO;wBAAE,MAAM,CAAC,OAAO,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;oBAC/F,IAAI,MAAM,CAAC,OAAO;wBAAE,MAAM,CAAC,OAAO,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,sGAAsG;YACtG,kGAAkG;YAClG,
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/tools/inbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passwords.d.ts","sourceRoot":"","sources":["../../src/tools/passwords.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AAI5C,0EAA0E;AAC1E,eAAO,MAAM,aAAa,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"passwords.d.ts","sourceRoot":"","sources":["../../src/tools/passwords.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AAI5C,0EAA0E;AAC1E,eAAO,MAAM,aAAa,EAAE,cAAc,EAoOzC,CAAC"}
|
package/dist/tools/passwords.js
CHANGED
|
@@ -21,7 +21,7 @@ export const passwordTools = [
|
|
|
21
21
|
description: "List all saved website credentials. Returns domain, username (decrypted), and notes for each entry. " +
|
|
22
22
|
"Passwords are intentionally hidden in list view for security — use ravi_passwords_get with a specific UUID " +
|
|
23
23
|
"to retrieve the decrypted password when you actually need it. " +
|
|
24
|
-
"For API keys and env vars, use
|
|
24
|
+
"For API keys and env vars, use ravi_secrets_list instead — passwords are for website credentials only.",
|
|
25
25
|
parameters: {
|
|
26
26
|
type: "object",
|
|
27
27
|
properties: {},
|
|
@@ -76,9 +76,10 @@ export const passwordTools = [
|
|
|
76
76
|
description: "Create a new password entry for a website. All sensitive fields (username, password, notes) " +
|
|
77
77
|
"are E2E encrypted before being sent to the server. " +
|
|
78
78
|
"Domain auto-cleaning: URLs like 'https://mail.google.com/inbox' are normalized to 'google.com'. " +
|
|
79
|
+
"If no password is provided, a strong random password is auto-generated and returned in the response. " +
|
|
79
80
|
"Best practice: store credentials immediately after signing up for a service, so you " +
|
|
80
|
-
"don't lose the password.
|
|
81
|
-
"For API keys and env vars (not website logins), use
|
|
81
|
+
"don't lose the password. " +
|
|
82
|
+
"For API keys and env vars (not website logins), use ravi_secrets_set instead.",
|
|
82
83
|
parameters: {
|
|
83
84
|
type: "object",
|
|
84
85
|
properties: {
|
|
@@ -92,11 +93,12 @@ export const passwordTools = [
|
|
|
92
93
|
},
|
|
93
94
|
password: {
|
|
94
95
|
type: "string",
|
|
95
|
-
description: "Password for the account. Will be E2E encrypted before storage."
|
|
96
|
+
description: "Password for the account. Will be E2E encrypted before storage. " +
|
|
97
|
+
"If omitted, a strong random password is auto-generated.",
|
|
96
98
|
},
|
|
97
99
|
notes: {
|
|
98
100
|
type: "string",
|
|
99
|
-
description: "Optional notes (e.g. '2FA enabled', 'recovery codes
|
|
101
|
+
description: "Optional notes (e.g. '2FA enabled', 'recovery codes stored securely')",
|
|
100
102
|
},
|
|
101
103
|
},
|
|
102
104
|
required: ["domain"],
|
|
@@ -114,13 +116,24 @@ export const passwordTools = [
|
|
|
114
116
|
if (params.username !== undefined) {
|
|
115
117
|
data.username = await crypto.encrypt(params.username);
|
|
116
118
|
}
|
|
119
|
+
// Auto-generate a strong password when none is provided
|
|
120
|
+
let generatedPassword;
|
|
117
121
|
if (params.password !== undefined) {
|
|
118
122
|
data.password = await crypto.encrypt(params.password);
|
|
119
123
|
}
|
|
124
|
+
else {
|
|
125
|
+
generatedPassword = await client.generatePassword({});
|
|
126
|
+
data.password = await crypto.encrypt(generatedPassword);
|
|
127
|
+
}
|
|
120
128
|
if (params.notes !== undefined) {
|
|
121
129
|
data.notes = await crypto.encrypt(params.notes);
|
|
122
130
|
}
|
|
123
|
-
|
|
131
|
+
const entry = await client.createPassword(data);
|
|
132
|
+
// Include the plaintext generated password so the agent can use it
|
|
133
|
+
if (generatedPassword) {
|
|
134
|
+
return { ...entry, generated_password: generatedPassword };
|
|
135
|
+
}
|
|
136
|
+
return entry;
|
|
124
137
|
},
|
|
125
138
|
},
|
|
126
139
|
{
|
|
@@ -150,7 +163,7 @@ export const passwordTools = [
|
|
|
150
163
|
},
|
|
151
164
|
notes: {
|
|
152
165
|
type: "string",
|
|
153
|
-
description: "New notes (e.g. '2FA enabled', 'recovery codes
|
|
166
|
+
description: "New notes (e.g. '2FA enabled', 'recovery codes stored securely')",
|
|
154
167
|
},
|
|
155
168
|
},
|
|
156
169
|
required: ["uuid"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passwords.js","sourceRoot":"","sources":["../../src/tools/passwords.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAKzC,+EAA+E;AAE/E,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAqB;IAC7C;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,sGAAsG;YACtG,6GAA6G;YAC7G,gEAAgE;YAChE,
|
|
1
|
+
{"version":3,"file":"passwords.js","sourceRoot":"","sources":["../../src/tools/passwords.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Secret management tools for the Ravi OpenClaw plugin.
|
|
3
|
+
*
|
|
4
|
+
* Provides tools to list, retrieve, and store key-value secrets in the Ravi
|
|
5
|
+
* secrets store. When a {@link CryptoManager} is available in the tool context, values
|
|
6
|
+
* are automatically decrypted on read and encrypted on write using E2E
|
|
7
|
+
* NaCl SealedBox encryption.
|
|
8
|
+
*
|
|
9
|
+
* @module tools/secrets
|
|
10
|
+
*/
|
|
11
|
+
import type { ToolDefinition, ToolContext } from "./identity.js";
|
|
12
|
+
export type { ToolDefinition, ToolContext };
|
|
13
|
+
/** Tools for managing secrets in the Ravi secrets store (list, get, set). */
|
|
14
|
+
export declare const secretsTools: ToolDefinition[];
|
|
15
|
+
//# sourceMappingURL=secrets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/tools/secrets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAIjE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AAI5C,6EAA6E;AAC7E,eAAO,MAAM,YAAY,EAAE,cAAc,EAiHxC,CAAC"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Secret management tools for the Ravi OpenClaw plugin.
|
|
3
3
|
*
|
|
4
4
|
* Provides tools to list, retrieve, and store key-value secrets in the Ravi
|
|
5
|
-
*
|
|
5
|
+
* secrets store. When a {@link CryptoManager} is available in the tool context, values
|
|
6
6
|
* are automatically decrypted on read and encrypted on write using E2E
|
|
7
7
|
* NaCl SealedBox encryption.
|
|
8
8
|
*
|
|
9
|
-
* @module tools/
|
|
9
|
+
* @module tools/secrets
|
|
10
10
|
*/
|
|
11
11
|
import { tryDecrypt } from "../utils.js";
|
|
12
|
-
// ───
|
|
13
|
-
/** Tools for managing secrets in the Ravi
|
|
14
|
-
export const
|
|
12
|
+
// ─── Secrets Tools ──────────────────────────────────────────────────────────
|
|
13
|
+
/** Tools for managing secrets in the Ravi secrets store (list, get, set). */
|
|
14
|
+
export const secretsTools = [
|
|
15
15
|
{
|
|
16
|
-
name: "
|
|
17
|
-
description: "List all secret keys stored in the Ravi
|
|
18
|
-
"values are hidden in list view for security. Use
|
|
16
|
+
name: "ravi_secrets_list",
|
|
17
|
+
description: "List all secret keys stored in the Ravi secrets store. Returns key names and UUIDs — " +
|
|
18
|
+
"values are hidden in list view for security. Use ravi_secrets_get with a specific key to retrieve the value. " +
|
|
19
19
|
"For website credentials (domain + username + password), use ravi_passwords_list instead.",
|
|
20
20
|
parameters: {
|
|
21
21
|
type: "object",
|
|
@@ -27,16 +27,16 @@ export const vaultTools = [
|
|
|
27
27
|
return Promise.all(secrets.map(async (s) => {
|
|
28
28
|
const result = { ...s, value: "[hidden]" };
|
|
29
29
|
if (crypto && s.notes) {
|
|
30
|
-
result.notes = await tryDecrypt(crypto, s.notes, "
|
|
30
|
+
result.notes = await tryDecrypt(crypto, s.notes, "secrets.notes");
|
|
31
31
|
}
|
|
32
32
|
return result;
|
|
33
33
|
}));
|
|
34
34
|
},
|
|
35
35
|
},
|
|
36
36
|
{
|
|
37
|
-
name: "
|
|
38
|
-
description: "Get a secret from the Ravi
|
|
39
|
-
"Response includes the secret's UUID (needed for
|
|
37
|
+
name: "ravi_secrets_get",
|
|
38
|
+
description: "Get a secret from the Ravi secrets store by key name. The value is automatically decrypted. " +
|
|
39
|
+
"Response includes the secret's UUID (needed for ravi_secrets_delete). " +
|
|
40
40
|
"Use this to retrieve API keys, tokens, or any sensitive configuration values at runtime. " +
|
|
41
41
|
"Keys follow the convention: UPPERCASE_WITH_UNDERSCORES (e.g. OPENAI_API_KEY, STRIPE_SECRET_KEY).",
|
|
42
42
|
parameters: {
|
|
@@ -54,17 +54,17 @@ export const vaultTools = [
|
|
|
54
54
|
const secret = await client.getSecret(params.key);
|
|
55
55
|
if (crypto) {
|
|
56
56
|
if (secret.value)
|
|
57
|
-
secret.value = await tryDecrypt(crypto, secret.value, "
|
|
57
|
+
secret.value = await tryDecrypt(crypto, secret.value, "secrets.value");
|
|
58
58
|
if (secret.notes)
|
|
59
|
-
secret.notes = await tryDecrypt(crypto, secret.notes, "
|
|
59
|
+
secret.notes = await tryDecrypt(crypto, secret.notes, "secrets.notes");
|
|
60
60
|
}
|
|
61
61
|
return secret;
|
|
62
62
|
},
|
|
63
63
|
},
|
|
64
64
|
{
|
|
65
|
-
name: "
|
|
66
|
-
description: "Store a secret in the Ravi
|
|
67
|
-
"
|
|
65
|
+
name: "ravi_secrets_set",
|
|
66
|
+
description: "Store a secret in the Ravi secrets store. The value is E2E encrypted before being sent to the server. " +
|
|
67
|
+
"Fails if a secret with the same key already exists — use ravi_secrets_delete first, then re-create. " +
|
|
68
68
|
"Use this to store API keys, tokens, or any sensitive configuration values securely. " +
|
|
69
69
|
"Keys must be UPPERCASE_WITH_UNDERSCORES (e.g. OPENAI_API_KEY). " +
|
|
70
70
|
"For website login credentials (domain + username + password), use ravi_passwords_create instead.",
|
|
@@ -102,15 +102,15 @@ export const vaultTools = [
|
|
|
102
102
|
},
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
|
-
name: "
|
|
106
|
-
description: "Delete a secret from the Ravi
|
|
107
|
-
"Use
|
|
105
|
+
name: "ravi_secrets_delete",
|
|
106
|
+
description: "Delete a secret from the Ravi secrets store by UUID. This is permanent and cannot be undone. " +
|
|
107
|
+
"Use ravi_secrets_list or ravi_secrets_get to find the UUID of the secret to delete.",
|
|
108
108
|
parameters: {
|
|
109
109
|
type: "object",
|
|
110
110
|
properties: {
|
|
111
111
|
uuid: {
|
|
112
112
|
type: "string",
|
|
113
|
-
description: "UUID of the
|
|
113
|
+
description: "UUID of the secret to delete (from ravi_secrets_list or ravi_secrets_get)",
|
|
114
114
|
},
|
|
115
115
|
},
|
|
116
116
|
required: ["uuid"],
|
|
@@ -121,4 +121,4 @@ export const vaultTools = [
|
|
|
121
121
|
},
|
|
122
122
|
},
|
|
123
123
|
];
|
|
124
|
-
//# sourceMappingURL=
|
|
124
|
+
//# sourceMappingURL=secrets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/tools/secrets.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-send.d.ts","sourceRoot":"","sources":["../../src/tools/sms-send.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,eAAe,CAAC;AAEjE,qCAAqC;AACrC,eAAO,MAAM,YAAY,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"sms-send.d.ts","sourceRoot":"","sources":["../../src/tools/sms-send.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,eAAe,CAAC;AAEjE,qCAAqC;AACrC,eAAO,MAAM,YAAY,EAAE,cAAc,EA8BxC,CAAC"}
|
package/dist/tools/sms-send.js
CHANGED
|
@@ -10,9 +10,11 @@ export const smsSendTools = [
|
|
|
10
10
|
{
|
|
11
11
|
name: "ravi_sms_send",
|
|
12
12
|
description: "Send an SMS message from the active identity's phone number. " +
|
|
13
|
+
"IMPORTANT: If you only have the recipient's name (e.g. 'text Bob'), use ravi_contacts_search first " +
|
|
14
|
+
"to look up their phone number. If multiple contacts match, confirm with the user before sending. " +
|
|
13
15
|
"The identity must have a provisioned phone number (check with ravi_get_info). " +
|
|
14
16
|
"SMS messages are plain text only, max 1600 characters. " +
|
|
15
|
-
"The sent message will appear in the SMS inbox as an
|
|
17
|
+
"The sent message will appear in the SMS inbox as an outgoing message.",
|
|
16
18
|
parameters: {
|
|
17
19
|
type: "object",
|
|
18
20
|
properties: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sms-send.js","sourceRoot":"","sources":["../../src/tools/sms-send.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,qCAAqC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAqB;IAC5C;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,+DAA+D;YAC/D,gFAAgF;YAChF,yDAAyD;YACzD,uEAAuE;QACzE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qEAAqE;wBACrE,sDAAsD;iBACzD;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD;iBAClE;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAmB,EAAE,MAAM,CAAC,IAAc,CAAC,CAAC;QAC3E,CAAC;KACF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"sms-send.js","sourceRoot":"","sources":["../../src/tools/sms-send.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,qCAAqC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAqB;IAC5C;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,+DAA+D;YAC/D,qGAAqG;YACrG,mGAAmG;YACnG,gFAAgF;YAChF,yDAAyD;YACzD,uEAAuE;QACzE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qEAAqE;wBACrE,sDAAsD;iBACzD;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oDAAoD;iBAClE;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;QACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACpC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAmB,EAAE,MAAM,CAAC,IAAc,CAAC,CAAC;QAC3E,CAAC;KACF;CACF,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -104,7 +104,7 @@ export interface PasswordEntry {
|
|
|
104
104
|
created_dt: string;
|
|
105
105
|
updated_dt: string;
|
|
106
106
|
}
|
|
107
|
-
/**
|
|
107
|
+
/** Secret entry from GET /api/secrets/ */
|
|
108
108
|
export interface SecretEntry {
|
|
109
109
|
uuid: string;
|
|
110
110
|
key: string;
|
|
@@ -115,6 +115,20 @@ export interface SecretEntry {
|
|
|
115
115
|
created_dt: string;
|
|
116
116
|
updated_dt: string;
|
|
117
117
|
}
|
|
118
|
+
/** Contact entry from GET /api/contacts/ */
|
|
119
|
+
export interface ContactEntry {
|
|
120
|
+
uuid: string;
|
|
121
|
+
email: string;
|
|
122
|
+
phone_number: string;
|
|
123
|
+
display_name: string;
|
|
124
|
+
nickname: string;
|
|
125
|
+
is_trusted: boolean;
|
|
126
|
+
source: "auto" | "manual";
|
|
127
|
+
interaction_count: number;
|
|
128
|
+
last_interaction_dt: string | null;
|
|
129
|
+
created_dt: string;
|
|
130
|
+
updated_dt: string;
|
|
131
|
+
}
|
|
118
132
|
/** Encryption metadata from GET /api/encryption/ */
|
|
119
133
|
export interface EncryptionMeta {
|
|
120
134
|
id: number;
|
|
@@ -141,14 +155,6 @@ export interface EmailEvent {
|
|
|
141
155
|
attachments: number;
|
|
142
156
|
in_reply_to: string | null;
|
|
143
157
|
}
|
|
144
|
-
/** Real-time SMS event from the SSE stream */
|
|
145
|
-
export interface SmsEvent {
|
|
146
|
-
id: string;
|
|
147
|
-
from_number: string;
|
|
148
|
-
body: string;
|
|
149
|
-
conversation_id: string;
|
|
150
|
-
created_dt: string;
|
|
151
|
-
}
|
|
152
158
|
/** Structured logger available to gateway adapters. */
|
|
153
159
|
export interface GatewayLogger {
|
|
154
160
|
info: (...args: unknown[]) => void;
|
|
@@ -194,7 +200,7 @@ export interface PluginRuntimeSubset {
|
|
|
194
200
|
*
|
|
195
201
|
* Passed by the ChannelManager to `gateway.startAccount()`. The generic
|
|
196
202
|
* parameter `TAccount` is the channel-specific account config type
|
|
197
|
-
* (e.g. {@link EmailAccountConfig}
|
|
203
|
+
* (e.g. {@link EmailAccountConfig}).
|
|
198
204
|
*/
|
|
199
205
|
export interface BaseGatewayContext<TAccount> {
|
|
200
206
|
/** Full OpenClaw gateway configuration. */
|
|
@@ -212,13 +218,13 @@ export interface BaseGatewayContext<TAccount> {
|
|
|
212
218
|
* Configuration shape for the Ravi OpenClaw plugin.
|
|
213
219
|
*
|
|
214
220
|
* Auth credentials (tokens, keypair) are stored in ~/.ravi/auth.json
|
|
215
|
-
* (managed by `openclaw ravi
|
|
221
|
+
* (managed by `openclaw ravi onboard`). The OpenClaw config only needs
|
|
216
222
|
* the identity UUID to scope this agent to a specific Ravi identity.
|
|
217
223
|
*/
|
|
218
224
|
export interface RaviPluginConfig {
|
|
219
225
|
/** Identity UUID — maps this OpenClaw agent to a Ravi identity.
|
|
220
226
|
* Set in the OpenClaw agent config (each agent binds to one identity).
|
|
221
|
-
* Optional at install time; set automatically by `openclaw ravi
|
|
227
|
+
* Optional at install time; set automatically by `openclaw ravi onboard`. */
|
|
222
228
|
identityUuid?: string;
|
|
223
229
|
/** When false, emails from unknown senders are silently dropped. Defaults to true. */
|
|
224
230
|
externalEmail?: boolean;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "ravi",
|
|
3
3
|
"name": "Ravi",
|
|
4
|
-
"description": "Identity provider for AI agents — email, phone, passwords,
|
|
4
|
+
"description": "Identity provider for AI agents — email, phone, passwords, secrets, and more.",
|
|
5
5
|
"configSchema": {
|
|
6
6
|
"type": "object",
|
|
7
7
|
"properties": {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ravi-hq/ravi",
|
|
3
|
-
"version": "0.5.
|
|
4
|
-
"description": "OpenClaw plugin for Ravi — identity provider for AI agents. Email
|
|
3
|
+
"version": "0.5.5",
|
|
4
|
+
"description": "OpenClaw plugin for Ravi — identity provider for AI agents. Email channels + full agent toolbox.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"type": "module",
|
|
@@ -21,23 +21,14 @@
|
|
|
21
21
|
],
|
|
22
22
|
"channels": [
|
|
23
23
|
{
|
|
24
|
-
"id": "ravi-email",
|
|
24
|
+
"id": "ravi-email-owner",
|
|
25
25
|
"label": "Ravi Email",
|
|
26
|
-
"docsPath": "/channels/ravi-email",
|
|
26
|
+
"docsPath": "/channels/ravi-email-owner",
|
|
27
27
|
"blurb": "Email channel for AI agents via Ravi identity provider",
|
|
28
28
|
"aliases": [
|
|
29
29
|
"ravi-mail",
|
|
30
30
|
"ravi"
|
|
31
31
|
]
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
"id": "ravi-sms",
|
|
35
|
-
"label": "Ravi SMS",
|
|
36
|
-
"docsPath": "/channels/ravi-sms",
|
|
37
|
-
"blurb": "SMS channel for AI agents via Ravi identity provider",
|
|
38
|
-
"aliases": [
|
|
39
|
-
"ravi-text"
|
|
40
|
-
]
|
|
41
32
|
}
|
|
42
33
|
]
|
|
43
34
|
},
|