@heyamiko/amiko-cli 0.9.0-beta.0 → 0.9.0-beta.10

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 CHANGED
@@ -1,4 +1,4 @@
1
- # @heyamiko/amiko-cli (v0.9.0-beta.0)
1
+ # @heyamiko/amiko-cli (v0.9.0-beta.10)
2
2
 
3
3
  Manage wallets, credits, swaps, MPP marketplace services, and your Amiko twin (identity, documents, voice, avatar, friends, feed, Composio apps) from the terminal. Works for both human users and AI agents running on OpenClaw.
4
4
 
@@ -35,18 +35,18 @@ amiko credits balance
35
35
  amiko credits topup 10000 --token AMIKO --yes
36
36
 
37
37
  # Search X/Twitter (1 AMIKO, pass --wallet)
38
- amiko search "AI agents" --wallet <solana-address>
38
+ amiko markets search "AI agents" --wallet <solana-address>
39
39
 
40
40
  # Generate an image (5 AMIKO)
41
- amiko image "a sunset over mountains" --wallet <solana-address>
41
+ amiko markets image "a sunset over mountains" --wallet <solana-address>
42
42
 
43
43
  # Swap tokens on Solana
44
- amiko swap quote 1.0 SOL USDC
45
- amiko swap send 1.0 SOL USDC --yes
44
+ amiko wallets swap quote 1.0 SOL USDC
45
+ amiko wallets swap send 1.0 SOL USDC --yes
46
46
 
47
47
  # Call any MPP service
48
- amiko service list
49
- amiko service call POST /v1/sfx '{"text":"thunder","duration_seconds":5}'
48
+ amiko markets service list
49
+ amiko markets service call POST /v1/sfx '{"text":"thunder","duration_seconds":5}'
50
50
  ```
51
51
 
52
52
  ## Credits
@@ -82,7 +82,7 @@ amiko credits topup 10000 --token AMIKO # 10,000 credits in AMIKO
82
82
  ```bash
83
83
  amiko credits topup 10000 --token USDC --chain base # USDC on Base
84
84
  amiko credits topup 5000 --method mpp # MPP 402 payment
85
- amiko credits topup 10000 --wallet Gu2b...QVya # specific wallet
85
+ amiko credits topup 10000 --wallet Gu2b...QVya # specific wallet (else defaults to your Solana wallet)
86
86
  ```
87
87
 
88
88
  **Supported tokens:** AMIKO, SOL, USDC, USDT
@@ -93,9 +93,9 @@ amiko credits topup 10000 --wallet Gu2b...QVya # specific wallet
93
93
  ## Search
94
94
 
95
95
  ```bash
96
- amiko search "AI agents" # search X/Twitter (1 AMIKO)
97
- amiko search "bitcoin" --token USDC # pay with USDC instead
98
- amiko search "news" --raw # raw JSON output
96
+ amiko markets search "AI agents" # search X/Twitter (1 AMIKO)
97
+ amiko markets search "bitcoin" --token USDC # pay with USDC instead
98
+ amiko markets search "news" --raw # raw JSON output
99
99
  ```
100
100
 
101
101
  Pays 1 AMIKO per search via Crossmint wallet transfer. Tries Solana wallet first, falls back to EVM.
@@ -103,12 +103,12 @@ Pays 1 AMIKO per search via Crossmint wallet transfer. Tries Solana wallet first
103
103
  ## Image Generation
104
104
 
105
105
  ```bash
106
- amiko image "a sunset over mountains" # gpt-image-1 (default)
107
- amiko image "logo" --background transparent # transparent background
108
- amiko image "cat" --model dall-e-3 # DALL-E 3
109
- amiko image "portrait" --size 1024x1792 --quality high # portrait, high quality
110
- amiko image "icon" --format webp # webp output
111
- amiko image "banner" --raw # raw JSON
106
+ amiko markets image "a sunset over mountains" # gpt-image-1 (default)
107
+ amiko markets image "logo" --background transparent # transparent background
108
+ amiko markets image "cat" --model dall-e-3 # DALL-E 3
109
+ amiko markets image "portrait" --size 1024x1792 --quality high # portrait, high quality
110
+ amiko markets image "icon" --format webp # webp output
111
+ amiko markets image "banner" --raw # raw JSON
112
112
  ```
113
113
 
114
114
  Costs 5 AMIKO per image. Returns a Supabase Storage URL.
@@ -118,24 +118,24 @@ Image generation typically takes 20–60s. In non-TTY environments (agents, pipe
118
118
  ## Amazon
119
119
 
120
120
  ```bash
121
- amiko amazon search "usb c cable" # product search (1 AMIKO)
122
- amiko amazon quote B01GGKYKQM # price quote (free)
121
+ amiko markets amazon search "usb c cable" # product search (1 AMIKO)
122
+ amiko markets amazon quote B01GGKYKQM # price quote (free)
123
123
  ```
124
124
 
125
125
  ## Swap
126
126
 
127
127
  ```bash
128
- amiko swap quote <amount> <from> <to> # get Jupiter quote
129
- amiko swap send <amount> <from> <to> # execute swap via Crossmint
130
- amiko swap tokens # list supported tokens
128
+ amiko wallets swap quote <amount> <from> <to> # get Jupiter quote
129
+ amiko wallets swap send <amount> <from> <to> # execute swap via Crossmint
130
+ amiko wallets swap tokens # list supported tokens
131
131
  ```
132
132
 
133
133
  **Examples:**
134
134
 
135
135
  ```bash
136
- amiko swap quote 1.0 SOL USDC
137
- amiko swap send 0.5 USDC AMIKO --yes
138
- amiko swap send 100 AMIKO SOL --slippage 100
136
+ amiko wallets swap quote 1.0 SOL USDC
137
+ amiko wallets swap send 0.5 USDC AMIKO --yes
138
+ amiko wallets swap send 100 AMIKO SOL --slippage 100
139
139
  ```
140
140
 
141
141
  Swaps execute via Jupiter on Solana. Supports SOL, USDC, USDT, AMIKO, PYUSD, BONK, JUP, RAY, JitoSOL, mSOL, or any mint address. `swap send` is hard-gated: in a non-interactive shell you must pass `--yes` after quoting the cost to the user (`Solana gas + 10bps platform fee`).
@@ -143,12 +143,12 @@ Swaps execute via Jupiter on Solana. Supports SOL, USDC, USDT, AMIKO, PYUSD, BON
143
143
  ## Bridge
144
144
 
145
145
  ```bash
146
- amiko bridge quote <amount> # cross-chain USDC quote via Across Protocol
147
- amiko bridge send <amount> # execute bridge transfer (gated — requires --yes in non-TTY)
148
- amiko bridge send <amount> --raw # print transaction JSON without sending (no gate)
149
- amiko bridge status <txHash> # check bridge status
150
- amiko bridge routes # available bridge routes
151
- amiko bridge limits # min/max limits per route
146
+ amiko wallets bridge quote <amount> # cross-chain USDC quote via Across Protocol
147
+ amiko wallets bridge send <amount> # execute bridge transfer (gated — requires --yes in non-TTY)
148
+ amiko wallets bridge send <amount> --raw # print transaction JSON without sending (no gate)
149
+ amiko wallets bridge status <txHash> # check bridge status
150
+ amiko wallets bridge routes # available bridge routes
151
+ amiko wallets bridge limits # min/max limits per route
152
152
  ```
153
153
 
154
154
  Default route: Solana → Tempo. Use `--from` and `--to` flags for other chains. Like `swap send`, `bridge send` refuses to run in a non-interactive shell without `--yes` so agents must quote the Across fee + gas to the user before executing.
@@ -158,24 +158,24 @@ Default route: Solana → Tempo. Use `--from` and `--to` flags for other chains.
158
158
  Call any endpoint on the Amiko marketplace with automatic AMIKO payment:
159
159
 
160
160
  ```bash
161
- amiko service list # all services + prices
162
- amiko service call <METHOD> <path> [body]
161
+ amiko markets service list # all services + prices
162
+ amiko markets service call <METHOD> <path> [body]
163
163
  ```
164
164
 
165
165
  **Examples:**
166
166
 
167
167
  ```bash
168
168
  # Sound effects ($0.05) — returns { url, format, service }
169
- amiko service call POST /v1/sfx '{"text":"Thunder with heavy rain","duration_seconds":5}'
169
+ amiko markets service call POST /v1/sfx '{"text":"Thunder with heavy rain","duration_seconds":5}'
170
170
 
171
171
  # Music generation ($0.10) — returns { url, format, service }
172
- amiko service call POST /v1/music '{"prompt":"Lo-fi chill beat","music_length_ms":30000}'
172
+ amiko markets service call POST /v1/music '{"prompt":"Lo-fi chill beat","music_length_ms":30000}'
173
173
 
174
174
  # Text-to-speech (1 AMIKO) — returns { url, format, service }
175
- amiko service tts 21m00Tcm4TlvDq8ikWAM "Hello world"
175
+ amiko markets service tts 21m00Tcm4TlvDq8ikWAM "Hello world"
176
176
 
177
177
  # Composition plan ($0.02)
178
- amiko service call POST /v1/music/plan '{"prompt":"Epic orchestral piece"}'
178
+ amiko markets service call POST /v1/music/plan '{"prompt":"Epic orchestral piece"}'
179
179
  ```
180
180
 
181
181
  Audio and image endpoints upload to Supabase Storage and return permanent URLs.
@@ -194,7 +194,7 @@ Every paid / value-moving command (`image`, `search`, `amazon search`, `service
194
194
  Action: Generate image: a sunset over mountains
195
195
 
196
196
  Quote the cost to the user, get their explicit approval, then re-run with --yes:
197
- amiko image "a sunset over mountains" --yes
197
+ amiko markets image "a sunset over mountains" --yes
198
198
  ```
199
199
 
200
200
  This makes cost confirmation effectively mandatory regardless of which model drives the agent — weak models can no longer silently burn tokens by ignoring the skill docs. The same refusal fires for `swap send` (Solana gas + 10 bps platform fee) and `bridge send` (Across fee + gas), so an agent cannot move tokens without a round-trip through user approval.
@@ -215,7 +215,7 @@ JSON `error` / `message` / `detail` fields are extracted when present; raw body
215
215
  ## Other Commands
216
216
 
217
217
  ```bash
218
- amiko discovery # MPP service info + pricing
218
+ amiko markets discover # MPP service info + pricing
219
219
  amiko config show # view config
220
220
  amiko config set <key> <value> # set config value
221
221
  amiko update # update CLI to latest (full twin refresh — no restart needed)
@@ -252,7 +252,7 @@ Agents auto-authenticate via `.amiko.json` — no manual connect needed. The pla
252
252
  ```bash
253
253
  # Agent environment — just works
254
254
  amiko credits balance
255
- amiko search "trending topics"
255
+ amiko markets search "trending topics"
256
256
  amiko credits topup 10000 --token AMIKO --yes
257
257
  ```
258
258
 
@@ -265,7 +265,6 @@ Supported keys (both camelCase and SCREAMING_SNAKE_CASE):
265
265
  - `amikoTwinId` / `AMIKO_TWIN_ID` — twin identifier (needed for paid ops)
266
266
  - `amikoUserId` / `AMIKO_USER_ID` — user identifier (optional, for MPP topup)
267
267
  - `amikoPlatformUrl` / `AMIKO_PLATFORM_URL` — platform base URL override
268
- - `billingBase` — billing API URL override
269
268
  - `apiBase` — MPP service URL override
270
269
 
271
270
  ## Configuration
@@ -274,7 +273,6 @@ Defaults (no config file needed — override in `.amiko.json` if needed):
274
273
 
275
274
  | Key | Default |
276
275
  |-----|---------|
277
- | `billingBase` | `https://billing.heyamiko.com` |
278
276
  | `apiBase` | `https://mpp.amikomarkets.com` |
279
277
  | `platformUrl` | `https://platform.heyamiko.com` |
280
278
 
@@ -296,13 +294,13 @@ src/
296
294
  │ ├── config.ts # config management
297
295
  │ ├── update.ts # self-update
298
296
  │ ├── accounts.ts # accounts, info (twin identity readout)
299
- │ ├── twin.ts # twin:update (name/description/public)
297
+ │ ├── twin.ts # twin update (name/description/public)
300
298
  │ ├── docs.ts # RAG documents (list, upload, delete, presign)
301
- │ ├── voice.ts # voice:design, voice:create, voice:clone, voice:reset
302
- │ ├── avatar.ts # avatar:update
299
+ │ ├── voice.ts # voice design, voice create, voice clone, voice reset
300
+ │ ├── avatar.ts # avatar update
303
301
  │ ├── friends.ts # friends list, add, accept, remove
304
- │ ├── feed.ts # feed, post:create, post:comment
305
- │ └── composio.ts # composio:connect, composio:disconnect
302
+ │ ├── feed.ts # feed, post create, post comment
303
+ │ └── composio.ts # composio connect, composio disconnect
306
304
  └── lib/
307
305
  ├── config.ts # defaults + resolved auth wrapper
308
306
  ├── agent-config.ts # .amiko.json reader + auth resolution
@@ -325,56 +323,55 @@ The CLI also manages the twin's identity, documents, voice, avatar, friends, fee
325
323
  # Identity
326
324
  amiko accounts # show resolved identity (mode, platform, user, twin, wallets)
327
325
  amiko info # fetch twin info (name, description, voice, avatar, visibility)
328
- amiko twin:update --name "New Name"
329
- amiko twin:update --description "Bio"
330
- amiko twin:update --public true --yes # change public visibility (destructive)
326
+ amiko twin update --name "New Name"
327
+ amiko twin update --description "Bio"
328
+ amiko twin update --public true --yes # change public visibility (destructive)
331
329
 
332
330
  # Documents (RAG)
333
- amiko docs # list
334
- amiko docs:upload ./notes.pdf # path, URL, or `- --stdin`
335
- amiko docs:delete <docId> --yes
336
- amiko docs:presign ./file.pdf # presigned S3 URL only
331
+ amiko docs list # list
332
+ amiko docs upload ./notes.pdf # path, URL, or `- --stdin`
333
+ amiko docs delete <docId> --yes
334
+ amiko docs presign ./file.pdf # presigned S3 URL only
337
335
 
338
336
  # Voice
339
- amiko voice:design --description "warm, low, male, confident, measured"
340
- amiko voice:create --sample <generated_voice_id>
341
- amiko voice:clone ./me.mp3
342
- amiko voice:reset --yes
337
+ amiko voice design --description "warm, low, male, confident, measured"
338
+ amiko voice create --sample <generated_voice_id>
339
+ amiko voice clone ./me.mp3
340
+ amiko voice reset --yes
343
341
 
344
342
  # Avatar
345
- amiko avatar:update --file ./portrait.png --yes
343
+ amiko avatar update --file ./portrait.png --yes
346
344
 
347
345
  # Friends
348
- amiko friends # list
349
- amiko friends:add --id <userId>
350
- amiko friends:accept <friendshipId>
351
- amiko friends:remove <friendshipId> --yes
346
+ amiko friends list # list
347
+ amiko friends add --id <userId>
348
+ amiko friends accept <friendshipId>
349
+ amiko friends remove <friendshipId> --yes
352
350
 
353
351
  # Feed & posts
354
352
  amiko feed # friends feed (default)
355
353
  amiko feed --type for_you --limit 20
356
- amiko post:create --content "hello from the CLI" # public post
357
- amiko post:create --content "private note" --visibility private
358
- amiko post:create --content "look" --media https://...jpg
359
- amiko post:comment --id <postId> --comment "great post"
360
- amiko post:comment --id <postId> --comment "nice!" --media https://...jpg
354
+ amiko post create --content "hello from the CLI" # public post
355
+ amiko post create --content "private note" --visibility private
356
+ amiko post create --content "look" --media https://...jpg
357
+ amiko post comment --id <postId> --comment "great post"
358
+ amiko post comment --id <postId> --comment "nice!" --media https://...jpg
361
359
 
362
360
  # Composio
363
- amiko composio:connect --app gmail # prints OAuth URL
364
- amiko composio:disconnect --app gmail --yes
361
+ amiko composio connect --app gmail # prints OAuth URL
362
+ amiko composio disconnect --app gmail --yes
365
363
  ```
366
364
 
367
365
  Every new command accepts `--json` for structured output and `--twin <id>` where a target twin is needed.
368
366
 
369
- **Destructive or identity-changing commands** (`docs:delete`, `friends:remove`, `composio:disconnect`, `voice:reset`, `avatar:update`, `twin:update --public`) prompt for confirmation in a TTY and require `--yes` in non-interactive shells.
367
+ **Destructive or identity-changing commands** (`docs delete`, `friends remove`, `composio disconnect`, `voice reset`, `avatar update`, `twin update --public`) prompt for confirmation in a TTY and require `--yes` in non-interactive shells.
370
368
 
371
369
  ## API Endpoints
372
370
 
373
371
  | Client | Base URL | Purpose |
374
372
  |--------|----------|---------|
375
- | Amiko Web | `platform.heyamiko.com` | Twin identity, wallet balances, docs, voice, avatar, friends, feed, Composio |
376
- | MPP API | `mpp.amikomarkets.com` | Marketplace services, search, image, audio |
377
- | Billing API | `billing.heyamiko.com` | Credits, topup, wallet transfers/swaps, keys |
373
+ | Platform | `platform.heyamiko.com` | Twin identity, wallets, credits, transfers/swaps, docs, voice, avatar, friends, feed, Composio |
374
+ | MPP API | `mpp.amikomarkets.com` | Marketplace services: search, image, amazon, audio |
378
375
 
379
376
  ## Build
380
377
 
@@ -385,6 +382,23 @@ npm publish
385
382
 
386
383
  ## Changelog
387
384
 
385
+ ### 0.9.0-beta.10
386
+
387
+ - **Rename**: top-level `market` command group is now `markets` (e.g. `amiko markets search`, `amiko markets image`).
388
+ - `wallets create --chain` now accepts only `solana | base` (devnet/sepolia variants removed from the CLI surface).
389
+ - `SKILL.md` rewritten with a top-level command overview, `--wallet` default explainer, and a "run from your workspace folder" note.
390
+
391
+ ### 0.9.0-beta.9
392
+
393
+ - `amiko wallets create --chain solana|base` — create a new wallet for the twin (Crossmint custodian by default).
394
+ - `--wallet` is now optional on all paid commands (`markets search`, `markets image`, `markets amazon search`, `markets service *`, `wallets swap send`). If omitted, the CLI auto-uses the twin's active Solana wallet. Pass `--wallet <address>` to override.
395
+ - `wallets bridge quote/send` — `--depositor` now defaults to your wallet on the origin chain (Solana for `--from solana`, Base for `--from base`).
396
+ - Help text and `SKILL.md` updated to document the new default.
397
+
398
+ ### 0.9.0-beta.7
399
+
400
+ - **Breaking**: colon-style commands are now subcommand groups. `twin:update` → `twin update`, `docs:upload` → `docs upload`, `voice:design` → `voice design`, `avatar:update` → `avatar update`, `friends:add` → `friends add`, `post:create` → `post create`, `composio:connect` → `composio connect`, etc. No aliases — scripts and skills that used the old names must be updated. Bare `docs` and `friends` now require `list` (e.g. `amiko docs list`).
401
+
388
402
  ### 0.9.0-beta.0
389
403
 
390
404
  - **Breaking**: auth simplified to `.amiko.json` + `amikoTwinToken` only. Removed `apiKey`, `privyToken`, `platformKey`, `connectedKeyId`, `agentWallets`, and `~/.amiko/config.json`.