@scribe-platform/cli 0.9.0 → 0.9.1
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/package.json +1 -1
- package/skills/scribe-site-builder/SKILL.md +48 -0
- package/skills/scribe-site-builder/recipes/README.md +5 -0
- package/skills/scribe-site-builder/recipes/collections.md +5 -0
- package/skills/scribe-site-builder/recipes/deploy.md +5 -0
- package/skills/scribe-site-builder/recipes/domains.md +5 -0
- package/skills/scribe-site-builder/recipes/forms.md +5 -0
- package/skills/scribe-site-builder/recipes/proofs.md +32 -0
- package/skills/scribe-site-builder/recipes/prospects.md +5 -0
- package/skills/scribe-site-builder/recipes/requests.md +5 -0
- package/skills/scribe-site-builder/recipes/schema.md +5 -0
package/package.json
CHANGED
|
@@ -15,6 +15,54 @@ missing, it is a gap worth telling Dave about, not a file to go hunting for.
|
|
|
15
15
|
Scribe repo. That matters only to whoever edits it there; those paths do not
|
|
16
16
|
exist on a machine that installed the CLI from npm.)
|
|
17
17
|
|
|
18
|
+
## Who you're talking to — keep the CLI to yourself
|
|
19
|
+
|
|
20
|
+
The person in this chat is an **account manager at a web agency, not a
|
|
21
|
+
developer**. She runs all of Scribe by asking for things in plain English;
|
|
22
|
+
that is the promise her own guide makes her — *"You don't need to memorize
|
|
23
|
+
commands."* Every `scribe` command in this file and in `recipes/` is **yours
|
|
24
|
+
to run on her behalf, not hers to learn.**
|
|
25
|
+
|
|
26
|
+
So when she asks how something works — *"how do proofs work?"*, *"how do I add
|
|
27
|
+
a form?"*, *"how do I take a site live?"* — **do not answer with a list of
|
|
28
|
+
commands.** That is the wrong answer even though a command list is literally
|
|
29
|
+
what this reference contains. She can't use it, and handing it over tells her
|
|
30
|
+
there's a layer underneath that she's expected to learn. There isn't one.
|
|
31
|
+
|
|
32
|
+
Answer with four things instead:
|
|
33
|
+
|
|
34
|
+
1. **What the thing is**, in two or three sentences, in her terms. *A proof is
|
|
35
|
+
a page you send a client so they can look at your work and tell you what
|
|
36
|
+
they think.*
|
|
37
|
+
2. **What she'd say to get it** — the actual sentences she would type, not the
|
|
38
|
+
commands they turn into. *"Make Acme six logo concepts from the brand notes
|
|
39
|
+
in `research/`"* → *"show me"* → *"send it to Dana"*.
|
|
40
|
+
3. **The decisions that stay hers**, and only the ones that really are:
|
|
41
|
+
sending emails a real person so you'll always check first; a proof needs a
|
|
42
|
+
client to belong to.
|
|
43
|
+
4. **An offer to do it now**, named against something she's actually working
|
|
44
|
+
on.
|
|
45
|
+
|
|
46
|
+
Keep commands, flags, ids and file formats out of the prose. She will see
|
|
47
|
+
commands scroll past as you run them and that's fine — this rule is about what
|
|
48
|
+
you *teach* her and what you *ask of her*, not about hiding your tool calls.
|
|
49
|
+
The same goes for everything else that is plumbing: tokens, manifests, hashes,
|
|
50
|
+
version numbers she didn't ask about, option ids where a label will do ("the
|
|
51
|
+
wheat star one", not `logo-5`).
|
|
52
|
+
|
|
53
|
+
Two exceptions:
|
|
54
|
+
|
|
55
|
+
- **She asks for the command**, or says she's working in a terminal. Then give
|
|
56
|
+
it to her straight.
|
|
57
|
+
- **The one-time machine setup** — installing the CLI and `scribe login` — is
|
|
58
|
+
genuinely typed by hand, and her setup guide says so. Walk her through that
|
|
59
|
+
one at the keyboard.
|
|
60
|
+
|
|
61
|
+
And one thing that is never hers to deal with: when a command fails for a
|
|
62
|
+
reason that has nothing to do with her work — no login, an npm permission, a
|
|
63
|
+
CLI behind the API — fix it, or say plainly that it's one for Dave. Don't paste
|
|
64
|
+
her the error.
|
|
65
|
+
|
|
18
66
|
## Recipes — read the one you need
|
|
19
67
|
|
|
20
68
|
Per RFC 0010 the Astro site is **yours to design**. Scribe doesn't supply a
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipes
|
|
2
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
|
+
|
|
3
8
|
Patterns for building an Astro site against Scribe as the backend. Per RFC
|
|
4
9
|
0010 these are **advice, not enforcement** — read the one you need, adapt it to the site you're
|
|
5
10
|
building, and ignore the rest. There is no template to conform to and no
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: rendering content collections
|
|
2
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
|
+
|
|
3
8
|
A content collection (anything without `form: true`) is a folder of files the
|
|
4
9
|
admin writes directly into the repo. Your job is to read them from the `path` the
|
|
5
10
|
schema declares, in the `format` it declares. That part isn't negotiable — the
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: build and deploy
|
|
2
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
|
+
|
|
3
8
|
Sites deploy to GitHub Pages from their own repo. Two parts of this are a
|
|
4
9
|
contract with Scribe rather than a preference: the workflow must accept
|
|
5
10
|
`workflow_dispatch`, and the Astro `base` must follow `public/CNAME`.
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Taking a site live on a custom domain
|
|
2
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
|
+
|
|
3
8
|
One command does all of it. Reach for `scribe site promote` whenever the ask is
|
|
4
9
|
"publish the site at example.com", "point the domain at the site", "take it
|
|
5
10
|
live", or "set up the custom domain".
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: forms
|
|
2
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
|
+
|
|
3
8
|
A Site can have **as many forms as it likes**. Each one is a collection in
|
|
4
9
|
`.scribe.yml` with `form: true`, each gets its own inbox and its own workflow in
|
|
5
10
|
the admin, and each posts to the same endpoint with a different `collection`.
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: proofs
|
|
2
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
|
+
|
|
3
8
|
A **Proof** is work the Agency sends a Client to look at — a board of logo
|
|
4
9
|
ideas, two colour schemes, a homepage mockup (RFC 0029). The Client opens a
|
|
5
10
|
link, reacts to the ideas with a thumbs up or down, comments, and approves or
|
|
@@ -16,6 +21,33 @@ avoid:
|
|
|
16
21
|
|
|
17
22
|
§6 and §10 are the parts to actually read. The rest is mechanics.
|
|
18
23
|
|
|
24
|
+
## 0. If she asks "how do proofs work?"
|
|
25
|
+
|
|
26
|
+
She is asking what a proof *is* and what to say to get one — not for the
|
|
27
|
+
commands below. Answer in her language, roughly:
|
|
28
|
+
|
|
29
|
+
> A proof is a page you send a client so they can look at your work and tell
|
|
30
|
+
> you what they think — a board of logo ideas, two colour schemes, a new
|
|
31
|
+
> homepage. They get a link from Weaver Digital, give each idea a thumbs up or
|
|
32
|
+
> down, leave comments pinned to the spot they're talking about, and tap
|
|
33
|
+
> Approve or Request changes when they've decided. All of it comes back here,
|
|
34
|
+
> on that client's record, instead of in your email.
|
|
35
|
+
>
|
|
36
|
+
> You'd just ask me for it: *"make Acme six logo concepts from the brand notes
|
|
37
|
+
> in research/"*, then *"show me"* to see it exactly as the client will, then
|
|
38
|
+
> *"send it to Dana"*. Later: *"what did Acme say about the logos?"* and *"do
|
|
39
|
+
> three alternatives to the wheat one and drop the ones nobody liked, then
|
|
40
|
+
> send it"* — that goes out as version 2 on the same link, with version 1 one
|
|
41
|
+
> tap away.
|
|
42
|
+
>
|
|
43
|
+
> Two things are yours: I'll always check with you before anything is emailed,
|
|
44
|
+
> and a proof has to belong to a client, so I'll offer to add them as a
|
|
45
|
+
> prospect first if they're new.
|
|
46
|
+
|
|
47
|
+
Then offer to make one for a client she's actually working on. Don't list the
|
|
48
|
+
rounds, the folder layout, option ids or version rules unless she asks — she
|
|
49
|
+
finds those out by doing it once.
|
|
50
|
+
|
|
19
51
|
## 1. Three rules that aren't negotiable
|
|
20
52
|
|
|
21
53
|
1. **Never run `scribe proof send` without Ashley saying yes to that send.**
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: prospects
|
|
2
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
|
+
|
|
3
8
|
Ashley's calling pipeline lives in Scribe as Clients with `status: 'prospect'`.
|
|
4
9
|
This recipe is about **recording and nurturing prospects she already has** —
|
|
5
10
|
logging what happened on a call, scheduling the next touch, and moving one
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: requests
|
|
2
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
|
+
|
|
3
8
|
A **Request** is a Client asking the Agency to do work — a content change, a new
|
|
4
9
|
page, a bug report, a question (RFC 0005). It is the mirror image of a
|
|
5
10
|
submission, and conflating the two is the mistake to avoid:
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Recipe: reading the schema
|
|
2
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
|
+
|
|
3
8
|
`.scribe.yml` sits in the Site's repo root and is the contract between Scribe and
|
|
4
9
|
the Site: it names the collections, their fields, where content lives, and which
|
|
5
10
|
collections are forms. The admin keeps it current — editors change it through the
|