@dropthis/cli 0.9.3 → 0.11.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 CHANGED
@@ -88,18 +88,19 @@ dropthis ./dist --url
88
88
  dropthis publish ./dist \
89
89
  --title "Launch page" \
90
90
  --visibility unlisted \
91
- --password s3cret \
92
91
  --entry index.html \
93
92
  --expires-at 2026-12-31T00:00:00Z
94
93
  ```
95
94
 
95
+ `publish` always creates a NEW drop with a new URL. To change a drop you already published, use `update-content` or `update-settings` with its `drop_…` id — never publish again.
96
+
96
97
  All publish flags:
97
98
 
98
99
  | Flag | Description |
99
100
  |------|-------------|
100
101
  | `--title <title>` | Drop title |
101
102
  | `--visibility <public\|unlisted>` | Drop visibility |
102
- | `--password <password>` | Set password protection |
103
+ | `--password <password>` | Set password protection (ships with Pro; not enabled on any tier yet) |
103
104
  | `--noindex` | Prevent search indexing |
104
105
  | `--entry <path>` | Entry file for directories |
105
106
  | `--content-type <mime>` | MIME type (required for stdin) |
@@ -141,6 +142,33 @@ dropthis update-content drop_abc123 ./dist-v2 --if-revision 1
141
142
 
142
143
  `update-content` replaces the files at the URL; `update-settings` changes title, visibility, password, noindex, expiry, or metadata. Creating a new drop is always `publish` — neither update command makes a new URL.
143
144
 
145
+ With `--if-revision`, a concurrent edit fails with a 409 instead of clobbering. The error shows the drop's `current_revision` and how to retry:
146
+
147
+ ```text
148
+ ✗ Revision mismatch
149
+ The drop changed since it was last read. Re-read it with GET /v1/drops/{drop_id} and retry with if_revision: 2 (sent as the If-Revision header).
150
+ Current revision: 2 — retry with --if-revision 2
151
+ ```
152
+
153
+ In JSON mode the same error carries `current_revision` and a `next_action` field.
154
+
155
+ ## Pull (read back)
156
+
157
+ Download what a drop is serving — by `drop_…` id, drop URL, or slug. URLs and slugs are resolved to your own drops; the local copy is also the rollback path (pull an old state, then `update-content` it back):
158
+
159
+ ```bash
160
+ # By id, into ./drop_abc123/
161
+ dropthis pull drop_abc123
162
+
163
+ # By URL — resolves the slug to your drop, writes into ./abc123/
164
+ dropthis pull https://abc123.dropthis.app
165
+
166
+ # Choose the output directory
167
+ dropthis pull drop_abc123 -o ./site
168
+ ```
169
+
170
+ Pull fetches the current deployment's file manifest and writes every file into the output directory. It is owner-side read-back via the API — it works regardless of any viewer password. Custom-domain URLs are not resolvable yet; use the `drop_…` id instead.
171
+
144
172
  ## Commands
145
173
 
146
174
  ```bash
@@ -149,6 +177,7 @@ dropthis publish [input...] # Same as above, explicit form
149
177
 
150
178
  dropthis update-content <drop-id> [input] # Replace a drop's content (same URL)
151
179
  dropthis update-settings <drop-id> # Change title/visibility/password/expiry/metadata
180
+ dropthis pull <id|url> [-o <dir>] # Download a drop's files to a local directory
152
181
  dropthis get <drop-id> # Show drop details
153
182
  dropthis list # List your drops
154
183
  dropthis delete <drop-id> # Delete a drop (--yes to confirm)
@@ -233,6 +262,14 @@ Reports CLI version, auth source (`env`, `flag`, `storage`, or `missing`), and c
233
262
  {"ok":true,"version":"0.4.1","auth":{"source":"env"},"storage":{"backend":"secure"}}
234
263
  ```
235
264
 
265
+ ## Pricing tiers
266
+
267
+ - **Free ($0)** — drops expire after 7 days, 5 MB per drop, dropthis badge.
268
+ - **Personal ($5/mo)** — drops stay live while subscribed (no expiry), no badge, 100 MB per drop, 2 GB account storage.
269
+ - **Pro ($19/mo)** — everything in Personal plus password protection, custom domains, and analytics.
270
+
271
+ `dropthis account` shows your active tier and its limits. Note: password protection ships with Pro and is not enabled on any tier yet — the API rejects the `--password` option until then.
272
+
236
273
  ## Agent skills
237
274
 
238
275
  For AI coding agents (Cursor, Claude Code, Windsurf, etc.), install the [dropthis-skills](https://github.com/dropthis-dev/dropthis-skills) package: