@ghostystudio/cli 0.68.0 → 0.70.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 +38 -1
- package/dist/index.js +4194 -3497
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -13,9 +13,12 @@ npm i -g @ghostystudio/cli && ghosty login
|
|
|
13
13
|
## Commands
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
+
ghosty login [--device] [--profile NAME] # browser OAuth2; --device = link + code (SSH, CI)
|
|
17
|
+
ghosty logout # signs out and revokes this device's session
|
|
16
18
|
ghosty whoami
|
|
17
19
|
ghosty usage # plan and usage this week / month (also: ghosty me usage)
|
|
18
20
|
ghosty usage --workspace SLUG [--by agent,day] [--days 14] # a workspace's turns and tokens per agent/day (owner or staff)
|
|
21
|
+
ghosty plan open [workspace|personal] # pay, change plan or manage billing (opens the browser)
|
|
19
22
|
ghosty engines ls [--models] # valid --engine / --model values and what each model costs
|
|
20
23
|
ghosty bags ls|create|set|rm <workspace> ["bag"] [--tokens 20M] [--recurring on|off] [--hard-cap on|off] [--note] # token bags (changing: staff)
|
|
21
24
|
ghosty spaces create <slug> [--combo …: staff] [--dry-run] # yours, trial
|
|
@@ -32,6 +35,9 @@ ghosty agents set <id> --prompt-base <base-id> --prompt-overlay overlay.json [--
|
|
|
32
35
|
ghosty agents share|unshare <id> <email> [--role editor|admin] # share without handing it over · agents shares <id> lists them
|
|
33
36
|
ghosty agents teams ls|on|off|rm <id> [workspace] [--handle x] # which Teams workspaces it answers in, and its @handle there
|
|
34
37
|
ghosty agents archive|restore <id> # archive: stops answering, deleted after 7 days unless restored
|
|
38
|
+
ghosty agents token rotate|revoke <id> [--yes] # owner only: rotate prints the new gat_ token once
|
|
39
|
+
ghosty agents memory ls|add|edit|rm|enable|disable <id> … # rules its team taught it (--scope wa) and its promos (--promo --title --details --from --until)
|
|
40
|
+
ghosty agents transfer <id> --to EMAIL [--workspace SLUG] [--dry-run] # hand it over with box, memory and files · --workspace SLUG|none: move it between your workspaces
|
|
35
41
|
ghosty agents rm <id> [--from-workspace] [--yes] # --from-workspace: turn it off in Teams first
|
|
36
42
|
ghosty agents set <id> [--tool wa:tool=off,…] [--bag NAME|none] [--avatar URL|FILE]
|
|
37
43
|
ghosty agents restart <id>
|
|
@@ -50,6 +56,8 @@ ghosty agents doctor <id> [--verbose] # exits 1 when it finds a
|
|
|
50
56
|
ghosty agents docs ls|grant|revoke <id> [doc] [--write] [--no-deliver]
|
|
51
57
|
ghosty agents docs add <id> --url URL | --file PATH [--description TEXT] [--grant read|write|no]
|
|
52
58
|
ghosty agents set <id> --voice elevenlabs:ID --voice-replies auto --auto-stage on
|
|
59
|
+
ghosty agents set <id> --web-search on|off --email-any on|off --extensions developer=off,… # native web search · email anyone from customer channels · its box's extensions
|
|
60
|
+
ghosty agents set <id> --chat-starters "a|b" --channel-roles teams=equipo,programado=cliente # suggestions in its OWN chat (the widget's are embed --starters) · who talks on each channel
|
|
53
61
|
|
|
54
62
|
ghosty files ls|get|put|rm <id> [path] [--file LOCAL] [--out LOCAL]
|
|
55
63
|
ghosty skills ls|get|add|rm <id> [slug] [--file SKILL.md | --dir FOLDER] [--out DIR] # get without --out only lists
|
|
@@ -60,9 +68,11 @@ ghosty turns ls <id> [--errors | --status running|done|stopp
|
|
|
60
68
|
ghosty turns ls --workspace SLUG --quota-hits [--days 14] # messages that got no turn because the balance ran out
|
|
61
69
|
ghosty turns show <id> [turn-id|last] # what came in, what it answered, where the time went [--full]
|
|
62
70
|
ghosty turns grep <id> "text" # what the customer or the agent said, and its turn [--since 7d] [--role user|agent]
|
|
71
|
+
ghosty turns jobs <id> # its background jobs from your chats (video, audio, captions, downloads; 24 h) · stop: turns cancel
|
|
63
72
|
ghosty channels whatsapp ls|enable|disable <id> [number] [--dry-run]
|
|
64
73
|
ghosty channels whatsapp link|unlink <id> --integration ID --answer on|off [--forward] [--dry-run] # bring a WABA number from Formmy
|
|
65
74
|
ghosty channels whatsapp history <id> --integration ID [--days 7] [--dry-run] # its recent cards, messages and orders (no duplicates)
|
|
75
|
+
ghosty channels whatsapp|messenger connect <id> # opens Channels to connect with Meta (browser sign-in)
|
|
66
76
|
ghosty channels wa import <id> --from-file F | --from-dir DIR --own-number yes|no [--dry-run] # personal WhatsApp session, no QR
|
|
67
77
|
ghosty channels wa pair|status|pause <id> [--phone N]
|
|
68
78
|
ghosty channels wa groups ls|enable|disable|set|create <id> [group] [--role equipo|cliente] [--wake mention|all] [--dry-run] # personal WhatsApp groups
|
|
@@ -73,6 +83,7 @@ ghosty cards ls <id> [--q TEXT] [--limit 20] #
|
|
|
73
83
|
ghosty cards show <id> <folio|phone|id> [--limit 20] # a card's thread, attachments and whether gs kept a copy
|
|
74
84
|
ghosty cards archive <id> --integration X | --column X | --before 30d [--dry-run]
|
|
75
85
|
ghosty mcp get|set <id> [--file servers.json] # http headers accept ${turn.token} (per-turn key)
|
|
86
|
+
ghosty mcp connect <id> --name N --url https://… [--from-env VAR] [--no-open] # one remote MCP by URL; OAuth in the browser if it asks
|
|
76
87
|
|
|
77
88
|
ghosty try <id> "message" [--session] [--reset]
|
|
78
89
|
ghosty try <id> "message" --waba --session PHONE [--media FILE [--as-formmy]] [--history FILE] # real WhatsApp path, nothing sent
|
|
@@ -80,6 +91,9 @@ ghosty try <id> --replay FILE --out DIR [--max 15] [--concurrency 8] [--resume]
|
|
|
80
91
|
ghosty chat <id> ["message"] [--conversation ID]
|
|
81
92
|
ghosty conversations ls <id>
|
|
82
93
|
ghosty conversations show <id> <conversation-id> [--limit 20] # what was said
|
|
94
|
+
ghosty conversations continue|model|share <id> <conversation-id> [model] [--off] # new linked thread · its model · read-only link
|
|
95
|
+
ghosty conversations permission <id> <conversation-id> [allow|deny] [--id P] [--always] # what the turn waits for, and answer it
|
|
96
|
+
ghosty conversations subagents <id> <conversation-id> [stop <task-id>] # its native subagents
|
|
83
97
|
|
|
84
98
|
ghosty schedule add <id> "what to do" --in 30m | --at ISO [--every 12h --until ISO] [--conversation ID] [--title T]
|
|
85
99
|
ghosty schedule ls <id>
|
|
@@ -89,16 +103,24 @@ ghosty teams post <workspace>#<room>[/<thread-id>] "msg" [--wait] # write ther
|
|
|
89
103
|
|
|
90
104
|
ghosty me files ls|get|export|upload|rm [--q TEXT] [--kind image|video|audio|document|other] [--cursor C]
|
|
91
105
|
ghosty me memories ls|add|edit|rm
|
|
106
|
+
ghosty me docs ls|get|export|check|tts|restore <doc> # editable docs your agents delivered: versions, PDF/Markdown, spelling, read aloud [--rev N]
|
|
92
107
|
ghosty conversations archive|rm <id> --kind test|channel|personal [--before 7d] [--dry-run]
|
|
93
108
|
ghosty agents docs dedupe [--dry-run] # your account: merge documents with the same content
|
|
94
109
|
# Ghosty staff
|
|
95
110
|
ghosty conversations ls --user EMAIL [--since 30d] · conversations show <id> <conv> --why|--tools
|
|
96
111
|
ghosty turns stats [--since 14d] [--all] · push log --user EMAIL [--since 2d]
|
|
112
|
+
ghosty support ls|show|reply --all [--status open|waiting_customer|resolved] · support resolve|reopen <id> · support link <id> <issue|PR>
|
|
113
|
+
ghosty staff ls [staff] [client] [--all] · staff assign|unassign <staff> <client> [--reason] # staff on client accounts (logged)
|
|
114
|
+
ghosty settings ls|set|unset <KEY> [value] # platform switches (+id/-id edits a list)
|
|
97
115
|
ghosty agents doctor --user EMAIL [agent] [--turns 8] · usage --images [--plan free] [--by user]
|
|
98
116
|
ghosty novedades ls|create|set|test|send|rm [--title] [--body] [--image FILE] [--link] [--to] [--publish] [--at]
|
|
99
117
|
ghosty sites ls [--house] · sites publish <file.html|folder> [--title] [--slug S] [--site <slug|id>] · sites slug <slug|id> <new-slug> # house sites on EasyBits
|
|
100
118
|
ghosty credentials ls|set|rm [provider] [--from-env VAR] # never as an argument
|
|
101
119
|
ghosty connectors ls|connect|disconnect [id] [--q TEXT] [--from-env VAR] [--no-open] # Shopify, Stripe, monday…
|
|
120
|
+
ghosty support open --title T --body TEXT · support ls | show <id> | reply <id> --body TEXT # ask Ghosty for help; answered by email
|
|
121
|
+
ghosty browser logout # revoke your terminal agents' browser tokens and disconnect Ghosty for Chrome
|
|
122
|
+
ghosty audit ls [--workspace SLUG] [--agent ID] [--actor EMAIL] [--action A] [--since 24h] [--limit N] # who changed what
|
|
123
|
+
ghosty factory runs ls|show|why|stats|rename [--workspace SLUG] [--room R] [--status S] [show --timing] [why --refresh] # Software Factory runs
|
|
102
124
|
ghosty docs
|
|
103
125
|
|
|
104
126
|
ghosty partner ls|enable|credentials|agent|tenants|audit|try # one agent for each of YOUR customers: ghosty partner --help
|
|
@@ -114,6 +136,21 @@ Every command has its own help with examples: `ghosty <command> --help` or `ghos
|
|
|
114
136
|
|
|
115
137
|
Exit codes: `0` ok · `1` API error · `2` usage error · `3` not signed in.
|
|
116
138
|
|
|
139
|
+
### Changes in 0.70.0
|
|
140
|
+
|
|
141
|
+
- `agents set --web-search on|off`, `--chat-starters "a|b"` (suggestions in the agent's OWN chat; the widget's stay in `agents embed --starters`, and `agents set --starters` now says so), `--channel-roles teams=equipo,programado=cliente`, `--extensions developer=off` and `--email-any on|off` (owner only).
|
|
142
|
+
- `mcp connect <id> --name N --url https://… [--from-env VAR] [--no-open]`: one remote MCP by its URL, without writing servers.json; if it asks for OAuth, the sign-in opens in the browser and gs adds it when you finish.
|
|
143
|
+
- `conversations continue|model|permission|share|subagents <id> <conv>`: carry on in a new linked thread, change its model, answer a permission the turn is waiting for (`allow|deny`, `--always`, `--id`), share it read-only (`--off`), list or stop native subagents. `chat` now prints each permission request with the command to answer it.
|
|
144
|
+
- `turns jobs <id>`: background jobs from your chats (video, audio, captions, downloads; 24 h). Read-only: stop them with `turns cancel`; repeating work is `schedule --every`.
|
|
145
|
+
- `me docs ls|get|export|check|tts|restore <doc>`: the editable docs your agents deliver (id or /app/docs/… link): versions, PDF/Markdown, spelling, read aloud.
|
|
146
|
+
- `agents token rotate|revoke <id>` (owner only), `agents memory …` (its team's rules and its promos) and `agents transfer <id> --to EMAIL | --workspace SLUG|none [--dry-run]`, on new `api/v2` routes.
|
|
147
|
+
- `channels whatsapp|messenger connect <id>` and `plan open [workspace|personal]` open the right page in the browser (Meta sign-in and billing stay on the web).
|
|
148
|
+
- README: login/logout, support, browser, audit, factory, staff and settings were missing.
|
|
149
|
+
|
|
150
|
+
### Changes in 0.69.0
|
|
151
|
+
|
|
152
|
+
- `factory runs why` puts an unmet plan criterion on top (`approved_unmet_criterion`): approved without the preview a criterion asked for, merged without preview, smoke failed on the merged commit, or a CI criterion approved with CI `none`. Each one is listed with the criterion's text and the evidence (`acceptance[]` in `--json`). A saved analysis is redone if the run had events after it.
|
|
153
|
+
|
|
117
154
|
### Changes in 0.68.0
|
|
118
155
|
|
|
119
156
|
- New `spaces members ls|add|rm <workspace> [email]`: a workspace's people without the Members screen (owner, admin or staff). `--role admin` lets them invite and remove; `--until 2026-10-28` or `--until 14d` gives a temporary seat that is removed automatically — for reviewer accounts (Meta, Google, Apple).
|
|
@@ -169,7 +206,7 @@ Exit codes: `0` ok · `1` API error · `2` usage error · `3` not signed in.
|
|
|
169
206
|
|
|
170
207
|
### Changes in 0.56.0
|
|
171
208
|
|
|
172
|
-
- `factory runs why <run> [--refresh]`: why a run got stuck or failed — category, impact, the critical step with its evidence and what to change next time (a healthy run doesn't call the model).
|
|
209
|
+
- `factory runs why <run> [--refresh]`: why a run got stuck or failed — category, impact, the critical step with its evidence and what to change next time (a healthy run doesn't call the model). It first checks the approved plan's criteria against the verdict: a criterion "in the preview" approved without the preview ready comes out on top as `approved_unmet_criterion`.
|
|
173
210
|
- `factory runs show --timing` lists stuck patterns (a command open 8+ min, the same command repeated, errors in a row, going back and forth, apt install in a box); `runs stats` counts runs with stuck alerts.
|
|
174
211
|
|
|
175
212
|
### Changes in 0.55.0
|