@scribe-platform/cli 0.9.1 → 0.10.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.
Files changed (50) hide show
  1. package/README.md +1 -1
  2. package/dist/commands/build.d.ts.map +1 -1
  3. package/dist/commands/build.js +4 -2
  4. package/dist/commands/build.js.map +1 -1
  5. package/dist/commands/content.d.ts.map +1 -1
  6. package/dist/commands/content.js +5 -1
  7. package/dist/commands/content.js.map +1 -1
  8. package/dist/commands/proof.d.ts.map +1 -1
  9. package/dist/commands/proof.js +6 -6
  10. package/dist/commands/proof.js.map +1 -1
  11. package/dist/commands/prospect.d.ts.map +1 -1
  12. package/dist/commands/prospect.js +4 -2
  13. package/dist/commands/prospect.js.map +1 -1
  14. package/dist/commands/request.d.ts.map +1 -1
  15. package/dist/commands/request.js +8 -4
  16. package/dist/commands/request.js.map +1 -1
  17. package/dist/commands/schema.js +1 -1
  18. package/dist/commands/schema.js.map +1 -1
  19. package/dist/commands/site.d.ts.map +1 -1
  20. package/dist/commands/site.js +5 -2
  21. package/dist/commands/site.js.map +1 -1
  22. package/dist/commands/submission.d.ts.map +1 -1
  23. package/dist/commands/submission.js +4 -1
  24. package/dist/commands/submission.js.map +1 -1
  25. package/dist/commands/update.js.map +1 -1
  26. package/dist/commands/user.d.ts +11 -0
  27. package/dist/commands/user.d.ts.map +1 -0
  28. package/dist/commands/user.js +88 -0
  29. package/dist/commands/user.js.map +1 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +2 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/lib/client.d.ts +37 -0
  34. package/dist/lib/client.d.ts.map +1 -1
  35. package/dist/lib/client.js +22 -7
  36. package/dist/lib/client.js.map +1 -1
  37. package/dist/lib/proof-folder.d.ts.map +1 -1
  38. package/dist/lib/proof-folder.js +10 -3
  39. package/dist/lib/proof-folder.js.map +1 -1
  40. package/dist/lib/proof-preview.d.ts.map +1 -1
  41. package/dist/lib/proof-preview.js.map +1 -1
  42. package/dist/lib/proof-push.d.ts.map +1 -1
  43. package/dist/lib/proof-push.js +6 -1
  44. package/dist/lib/proof-push.js.map +1 -1
  45. package/dist/lib/skill.js +1 -1
  46. package/package.json +2 -2
  47. package/skills/scribe-site-builder/SKILL.md +4 -3
  48. package/skills/scribe-site-builder/recipes/README.md +6 -4
  49. package/skills/scribe-site-builder/recipes/client-logins.md +74 -0
  50. package/skills/scribe-site-builder/recipes/domains.md +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"proof-push.js","sourceRoot":"","sources":["../../src/lib/proof-push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAIxD;;;;;;;;GAQG;AAEH,uGAAuG;AACvG,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAI7B;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAyB,EAAE,KAAiB,EAAE,YAA0B,KAAK;IAC5G,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,gBAAgB,CAAC,CAAC,CAAC;IAC/H,4EAA4E;IAC5E,sFAAsF;IACtF,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACjG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,CAAC,IAAI,YAAY,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAI,KAAU,EAAE,IAAY,EAAE,EAA8B;IAClF,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QAC9E,OAAO,IAAI,GAAG,KAAK,CAAC,MAAM;YAAE,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAO/B;IACC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE;QAChE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3E,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;KACxB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAC/F,MAAM,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACxE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;AAClI,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAM/B;IACC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAClE,MAAM,IAAI,WAAW,CAAC,GAAG,GAAG,qEAAqE,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/E,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,0EAA0E;QAC1E,uEAAuE;QACvE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,CAAC,IAAI,YAAY,GAAG,EAAE,CAAC,CAAC;QAErG,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7F,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,GAAG,KAAK,KAAK,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,yDAAyD,CAAC,CAAC;QAElH,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8DAA8D;AAC9D,MAAM,OAAO,WAAY,SAAQ,KAAK;CAAG;AAEzC,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,GAAa,EAAE,OAAyB;IAClF,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,IAAI,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,EAAE,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"proof-push.js","sourceRoot":"","sources":["../../src/lib/proof-push.ts"],"names":[],"mappings":"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"}
package/dist/lib/skill.js CHANGED
@@ -95,7 +95,7 @@ export function reportSkillInstall() {
95
95
  console.log(`Skill: installed scribe-site-builder to ${tildify(skill.dest)}.`);
96
96
  }
97
97
  else if (skill.status === 'missing-source') {
98
- console.warn("Skill: this install is missing its bundled copy of scribe-site-builder — tell Dave.");
98
+ console.warn('Skill: this install is missing its bundled copy of scribe-site-builder — tell Dave.');
99
99
  }
100
100
  }
101
101
  //# sourceMappingURL=skill.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@scribe-platform/cli",
3
- "version": "0.9.1",
4
- "description": "Command-line interface for Scribe CMS — scaffold sites, edit content, and triage form submissions from the terminal",
3
+ "version": "0.10.0",
4
+ "description": "Command-line interface for Scribe CMS \u2014 scaffold sites, edit content, and triage form submissions from the terminal",
5
5
  "license": "MIT",
6
6
  "author": "Dave Weaver",
7
7
  "homepage": "https://github.com/scribe-platform/scribe/tree/main/packages/cli#readme",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: scribe-site-builder
3
- description: Guides building a website on Scribe CMS end to end — designing the Astro site freely against Scribe as its backend, editing the `.scribe.yml` schema, adding one or many forms, the local dev loop, pushing content, and deploying — using the `scribe` CLI and the recipes in `recipes/`. Also the reference for working an existing Scribe site (adding fields/collections, publishing content, triaging form submissions and inquiries, renaming, archiving, restoring or deleting a site), for taking a site live on a custom domain — checking whether a client has a domain, buying one, DNS/CNAME setup, GitHub Pages domain config, HTTPS — for the queue of requests clients have sent the agency (triaging, claiming, replying, closing), for the agency's prospect pipeline (logging calls, follow-ups, won/lost), and for proofs — sending a client work to review (logo boards, mockups, colour schemes), reading what they said, and sending the next version. Use whenever the user wants to build/create/start a new website or site with Scribe, add a form to a site, work on an existing Scribe site, publish/launch/go live with a site, point a site at a domain, set up or fix a custom domain or DNS for a Scribe site, work the inquiries a site has received, triage or reply to a client's request for work, log a call or follow-up with a prospect or client, wants to send a client something to look at or approve (logo ideas, mockups, options, a proof), asks what a client said about work they were sent, wants to do another round or version of something a client reviewed, or asks about the `scribe` CLI.
3
+ description: Guides building a website on Scribe CMS end to end — designing the Astro site freely against Scribe as its backend, editing the `.scribe.yml` schema, adding one or many forms, the local dev loop, pushing content, and deploying — using the `scribe` CLI and the recipes in `recipes/`. Also the reference for working an existing Scribe site (adding fields/collections, publishing content, triaging form submissions and inquiries, renaming, archiving, restoring or deleting a site), for taking a site live on a custom domain — checking whether a client has a domain, buying one, DNS/CNAME setup, GitHub Pages domain config, HTTPS — for the queue of requests clients have sent the agency (triaging, claiming, replying, closing), for the agency's prospect pipeline (logging calls, follow-ups, won/lost), and for proofs — sending a client work to review (logo boards, mockups, colour schemes), reading what they said, and sending the next version. Use whenever the user wants to build/create/start a new website or site with Scribe, add a form to a site, work on an existing Scribe site, publish/launch/go live with a site, point a site at a domain, set up or fix a custom domain or DNS for a Scribe site, work the inquiries a site has received, triage or reply to a client's request for work, log a call or follow-up with a prospect or client, wants to send a client something to look at or approve (logo ideas, mockups, options, a proof), asks what a client said about work they were sent, wants to do another round or version of something a client reviewed, wants to give a client a login or sign-in for their own site, set someone up to edit their own content, re-send or fix a sign-in link that expired or didn't arrive, or asks about the `scribe` CLI.
4
4
  ---
5
5
 
6
6
  # Building a site with Scribe
@@ -79,6 +79,7 @@ instead of reading all of them:
79
79
  | [`recipes/requests.md`](./recipes/requests.md) | working the queue of jobs clients have asked the agency for |
80
80
  | [`recipes/prospects.md`](./recipes/prospects.md) | logging calls and follow-ups on prospects (not site-building) |
81
81
  | [`recipes/proofs.md`](./recipes/proofs.md) | sending a client work to review — logo boards, mockups, options — and working the rounds |
82
+ | [`recipes/client-logins.md`](./recipes/client-logins.md) | giving a client's own people a sign-in, and fixing a link that expired or never arrived |
82
83
 
83
84
  [`recipes/README.md`](./recipes/README.md) lists the five things that are a hard
84
85
  contract (because Scribe writes into the repo) as opposed to advice.
@@ -384,8 +385,8 @@ scribe request status <id> <open|in-progress|waiting-on-you|done|cancelled>
384
385
  lossless, with each submission's events nested under it.
385
386
  - `submission delete` is permanent, cascades the submission's history, and needs a
386
387
  **staff** role — a site user's API key gets a 403. It prompts for the id unless
387
- `--yes` is passed. There is deliberately no equivalent in the admin UI, so don't go
388
- looking for a delete button on the inbox.
388
+ `--yes` is passed. Staff also have a **Delete** button on a submission's page in the
389
+ admin app (site users don't); either way, confirm with Ashley before deleting.
389
390
  - **`scribe request` is the other queue, and the opposite direction.** A submission is
390
391
  a Visitor contacting the *client*; a Request is the **client contacting the agency**
391
392
  to ask for work. One cross-site queue, staff-only, nothing in any repo. Three things
@@ -20,11 +20,13 @@ generated config to keep in sync.
20
20
  | [`requests.md`](./requests.md) | working the queue of jobs clients have asked the agency for |
21
21
  | [`prospects.md`](./prospects.md) | recording and nurturing prospects in the calling pipeline |
22
22
  | [`proofs.md`](./proofs.md) | sending a client work to review (logo boards, mockups) and working the rounds |
23
+ | [`client-logins.md`](./client-logins.md) | giving a client's own people a sign-in, and fixing a link that didn't work |
23
24
 
24
- `requests.md`, `prospects.md` and `proofs.md` are the odd ones out — they're
25
- about the agency's own work (its queue, its sales pipeline, and the work it
26
- sends clients to review) rather than anything in a Site's repo, and they live
27
- here because the `scribe` CLI is the interface for all of it.
25
+ `requests.md`, `prospects.md`, `proofs.md` and `client-logins.md` are the odd
26
+ ones out — they're about the agency's own work (its queue, its sales pipeline,
27
+ the work it sends clients to review, and who can sign in) rather than anything
28
+ in a Site's repo, and they live here because the `scribe` CLI is the interface
29
+ for all of it.
28
30
 
29
31
  ## The part that isn't advice
30
32
 
@@ -0,0 +1,74 @@
1
+ # Recipe: client logins
2
+
3
+ > **The commands below are yours to run, not hers to read.** If she's asking
4
+ > what this is or how to do it, answer it the way *Who you're talking to* in
5
+ > [`../SKILL.md`](../SKILL.md) says to: what it is, what she'd say to get it,
6
+ > what's her call, and an offer to do it now.
7
+
8
+ Giving a Client's own people a sign-in, so they can edit their Site's content
9
+ and work their own inquiries. Her guide for this is *Client logins*.
10
+
11
+ ## 1. The rule that matters
12
+
13
+ **No password is ever created, shown, or sent.** Creating a Site user mints a
14
+ set-your-password **link**; the person redeems it and chooses their own. There
15
+ is no path where Ashley reads a credential to a client, and there should not
16
+ be one.
17
+
18
+ If she asks for "his password", that is the one request to answer with the
19
+ thing rather than the literal ask: she wants him able to sign in, and a fresh
20
+ link is how. Say so plainly — it takes one sentence and it is the whole point
21
+ of the design.
22
+
23
+ ## 2. The commands
24
+
25
+ ```
26
+ scribe user list <site>
27
+
28
+ scribe user add <site> --name "Mark Pawling" --email mark@pawlingmasonry.com
29
+
30
+ scribe user invite <site> mark@pawlingmasonry.com # a fresh link
31
+ scribe user invite <site> mark@pawlingmasonry.com --send-email
32
+
33
+ scribe user extend <site> mark@pawlingmasonry.com # revive the link he already has
34
+ ```
35
+
36
+ `add` creates the account and prints a link. `invite` issues another link for
37
+ somebody who already has an account. Both take `--json`.
38
+
39
+ **`--send-email` is opt-in, and that is deliberate — never add it unless she
40
+ asked.** Everything else here is reversible; emailing a real client is not. If
41
+ she hasn't said how she wants it delivered, hand her the link and ask.
42
+
43
+ ## 3. What to tell her when a link doesn't work
44
+
45
+ Three failures, three different answers, and getting them the right way round
46
+ saves a phone call:
47
+
48
+ | She says | What happened | What to do |
49
+ |---|---|---|
50
+ | "He never got the email" | Spam, most likely | Give her the link to text. **Any link already sent still works** — a new one does not cancel it |
51
+ | "His link expired" | Past 7 days | `scribe user extend` — the link already in his messages starts working again, so nothing has to be re-sent |
52
+ | "It says already used" | He has a password | He needs **Forgot your password?** on the sign-in page. `extend` reports 0 here, which is the same answer |
53
+
54
+ Extending is the one worth reaching for first when the link is already out
55
+ there: a new link means she has to deliver it again, an extension doesn't.
56
+
57
+ ## 4. Why several live links is fine
58
+
59
+ Issuing an invite does **not** revoke earlier ones. The raw token only exists
60
+ at the moment it is created — everything stored is a bcrypt hash — so a link
61
+ she has already texted can never be shown again, and superseding it would
62
+ silently strand it.
63
+
64
+ Redeeming any one link burns all the others for that person, so a spare can
65
+ never set the password a second time. That property is what makes multiple live
66
+ links safe, and it is worth not breaking.
67
+
68
+ ## 5. Scope
69
+
70
+ A Site user sees their own Site and nothing else — never another Client, never
71
+ the agency's own pages. One person needing access to **two** Clients' Sites is
72
+ not this recipe: it crosses RFC 0006's client-group invariant, `grantSiteAccess`
73
+ will refuse it, and it is a conversation with Dave rather than a command to
74
+ find.
@@ -111,7 +111,10 @@ certificate, and promote will refuse with a `cloudflare-proxied` message.
111
111
  `www` is not automatic. If a bare domain is the target and the client also wants
112
112
  `www.example.com` to work, add a `www` CNAME → `<org>.github.io` at the
113
113
  registrar; GitHub then redirects it to the apex on its own. Nothing in Scribe
114
- needs to change for that.
114
+ needs to change for that. Promote (and `--dns-only`) checks it for a bare
115
+ domain and prints a `!` warning naming the record to add if `www` is missing
116
+ or still answered by a registrar's parking wildcard. The site is live either
117
+ way; add the record, and `www` works once DNS catches up — no re-run needed.
115
118
 
116
119
  ## Re-running is the fix
117
120