domani-cli 0.4.14 → 0.4.44

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.
Files changed (3) hide show
  1. package/README.md +42 -9
  2. package/dist/domani.cjs +229 -189
  3. package/package.json +14 -12
package/README.md CHANGED
@@ -4,8 +4,8 @@ Domains and email - for humans and AI agents.
4
4
 
5
5
  Register domains, manage DNS, create mailboxes, send and receive email. From your terminal, your agent, or the web.
6
6
 
7
- [![npm version](https://img.shields.io/npm/v/domani.svg)](https://www.npmjs.com/package/domani)
8
- [![license](https://img.shields.io/npm/l/domani.svg)](https://github.com/gwendall/domani/blob/main/LICENSE)
7
+ [![npm version](https://img.shields.io/npm/v/domani-cli.svg)](https://www.npmjs.com/package/domani-cli)
8
+ [![license](https://img.shields.io/npm/l/domani-cli.svg)](https://github.com/gwendall/domani/blob/main/LICENSE)
9
9
 
10
10
  ## How it works
11
11
 
@@ -13,7 +13,7 @@ domani gives you one account and multiple ways in:
13
13
 
14
14
  - **[Web](https://domani.run)** - Dashboard with a full inbox (compose, reply, threads), DNS editor, domain management
15
15
  - **CLI** - This package. Everything the web app does, from your terminal
16
- - **[MCP Server](https://domani.run/mcp)** - 65 tools for Claude Code, Cursor, Windsurf, and any MCP-compatible agent
16
+ - **[MCP Server](https://domani.run/mcp)** - typed tools for Claude Code, Cursor, Codex, and any MCP-compatible agent
17
17
  - **[OpenClaw](https://openclaw.com)** - `clawhub install domani`
18
18
  - **[Agent Skill](https://domani.run/skill.md)** - Step-by-step guide your agent can follow. Install with `npx skills add domani.run`
19
19
  - **[REST API](https://domani.run/docs)** - Direct HTTP access to everything
@@ -26,6 +26,30 @@ All interfaces share the same API key and the same data.
26
26
  npm install -g domani-cli
27
27
  ```
28
28
 
29
+ ## Secure MCP bridge
30
+
31
+ Agent plugins can use Domani without placing an API key in a prompt, shell
32
+ history, or editor configuration:
33
+
34
+ ```bash
35
+ domani login
36
+ domani mcp serve
37
+ ```
38
+
39
+ `domani login` stores the credential in the operating-system keychain when one
40
+ is available. The stdio bridge resolves it locally and forwards MCP requests to
41
+ `https://domani.run/mcp`; stdout remains reserved for JSON-RPC messages.
42
+
43
+ For an agent acting on someone else's behalf, request a scoped, expiring
44
+ credential instead of their account key:
45
+
46
+ ```bash
47
+ domani login --scopes domains:read,search --label "Project agent" --expires-in 86400
48
+ ```
49
+
50
+ The approval screen shows the requested access and the resulting credential is
51
+ stored in the keychain without being printed.
52
+
29
53
  This installs the `domani` command. Or run directly with `npx`:
30
54
 
31
55
  ```bash
@@ -75,7 +99,9 @@ domani email inbox hello@startup.dev --direction in
75
99
  domani email forward hello@startup.dev --forward-to me@gmail.com
76
100
 
77
101
  # Webhook for inbound emails (for bots, support systems, etc.)
78
- domani email webhook hello@startup.dev --url https://myapp.dev/hooks/email
102
+ # CURSOR_AUTH contains the complete value, e.g. "Bearer sender-key"
103
+ domani email webhook hello@startup.dev --url https://myapp.dev/hooks/email \
104
+ --authorization-env CURSOR_AUTH
79
105
 
80
106
  # Export DNS records before making changes
81
107
  domani dns startup.dev snapshot
@@ -96,7 +122,8 @@ domani schema buy --json
96
122
  domani search <name> [tlds...] Check availability across TLDs (--expand for 30+)
97
123
  domani suggest <prompt> AI-powered domain suggestions (--style, --lang, --tlds)
98
124
  domani buy <domains...> Purchase one or more domains
99
- domani transfer <domain> Transfer from another registrar
125
+ domani adopt <domain> Inspect and plan a safe connection or transfer
126
+ domani transfer <domain> Transfer registration, preserving current nameservers
100
127
  domani renew <domain> Renew a domain (--years 1-10)
101
128
  domani import <domain> Import a domain you own elsewhere (DNS monitoring only)
102
129
  domani list List your domains
@@ -111,10 +138,15 @@ domani whois <domain> WHOIS/RDAP lookup
111
138
  domani email list List all mailboxes
112
139
  domani email create user@domain Create a mailbox
113
140
  domani email delete user@domain Delete a mailbox
114
- domani email inbox user@domain List messages (--direction in|out)
141
+ domani email inbox user@domain List messages (--folder, --view, --direction)
142
+ domani email folders user@domain List folder and view counts
143
+ domani email archive user@domain --message-ids m1,m2
144
+ domani email trash user@domain --message-ids m1
145
+ domani email restore user@domain --message-ids m1
146
+ domani email read|unread|star|unstar user@domain --message-ids m1,m2
115
147
  domani email send user@domain Send an email (--to, --subject, --body, --cc, --bcc)
116
148
  domani email forward user@domain Forward inbound to a personal address (--forward-to)
117
- domani email webhook user@domain Forward inbound as JSON to your endpoint (--url)
149
+ domani email webhook user@domain Forward inbound as JSON (--url, --authorization-env, --api-key-env, --clear-headers)
118
150
  domani email setup --domain <domain> Auto-configure MX, SPF, DKIM, DMARC
119
151
  domani email status --domain <domain> Check email DNS health
120
152
  domani email connect --domain <domain> <provider> Connect external provider (Gmail, Fastmail, Proton)
@@ -155,7 +187,7 @@ domani billing Add or update payment method (opens browser)
155
187
  domani invoices List payment invoices
156
188
  domani token Print your API key
157
189
  domani tokens [list|create|revoke] Manage API tokens (scoped, expiring)
158
- domani webhooks [action] Manage webhook endpoints
190
+ domani webhooks [action] Manage webhook endpoints (auth headers via --authorization-env/--api-key-env)
159
191
  ```
160
192
 
161
193
  ### Introspection
@@ -218,7 +250,8 @@ domani buy myapp.dev # Charged to saved card
218
250
  |--------|-------------|
219
251
  | `domani login` | Interactive login (opens browser) |
220
252
  | `$DOMANI_API_KEY` | API key as environment variable |
221
- | `~/.domani/config.json` | Saved credentials from `domani login` |
253
+ | OS keychain | Credential saved by `domani login` when available |
254
+ | `~/.domani/config.json` | Non-secret CLI settings, plus legacy fallback on systems without a keychain |
222
255
 
223
256
  The CLI checks `$DOMANI_API_KEY` first, then falls back to `~/.domani/config.json`.
224
257