sproutkit-code 1.5.2 → 1.6.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.
@@ -93,6 +93,36 @@ you can parse results reliably, then summarise them for the user in prose.
93
93
  - The banner exists to stop clients using a free demo as their real site, so
94
94
  do NOT run this just because a site looks finished.
95
95
 
96
+ - **Set up the agency's identity** — `sproutkit brand --show`
97
+ - Their name, logo, address, VAT and bank details. This is what appears on
98
+ invoices and letters, in the site footer credit, on the demo banner and in
99
+ the `/admin` title — so clients see the AGENCY, not Sproutkit.
100
+ - Set fields with `sproutkit brand --name "X" --email y@z.com --vat-rate 20`.
101
+ - Invoices refuse to render until at least a name is set.
102
+
103
+ - **Invoice a client** — `sproutkit invoice <leadId> --items "Website build:1200,Booking:450" --json`
104
+ - Renders a PDF on the agency's letterhead and returns its path. Quantities:
105
+ `--items "Monthly hosting:12x25"`. `--due <days>` sets payment terms.
106
+ - `sproutkit invoice list [--unpaid]` and `sproutkit invoice paid INV-2026-001`.
107
+ - Money is parsed strictly — "600" and "600.50" are fine, "6.789" is refused.
108
+
109
+ - **Write a letter or proposal** — `sproutkit letter <leadId> --subject "..." --body "..."`
110
+ - Same letterhead as invoices. `--body-file <path>` for longer text.
111
+
112
+ - **Log how a business responded** — `sproutkit reply <leadId> --interested --json`
113
+ - Also `--not-interested`, `--no-answer`, `--wrong-number`, `--callback`, `--note "..."`.
114
+ - SMS/WhatsApp replies are invisible to Sproutkit, so this is how a reply gets
115
+ into the pipeline. 'interested' moves them to Replied; 'not-interested' to Dead.
116
+
117
+ - **See who needs chasing** — `sproutkit followups [--days 3] --json`
118
+ - Leads contacted a while ago that never replied, plus funnel stats
119
+ (contacted, replied, reply rate, interested, won).
120
+
121
+ - **Prove the site is working** — `sproutkit report <leadId> --json`
122
+ - Calls, booking clicks and views for the last 30 days vs the previous 30.
123
+ This is the retainer/renewal evidence. Sites built before analytics shipped
124
+ need a `regenerate` first.
125
+
96
126
  - **Run the full pipeline for many clients** — `sproutkit pipeline x3 --json` (optional `--book`, `--limit 10`, `--ids 3,5`)
97
127
  - Builds → (optionally adds booking) → prepares outreach for several clients
98
128
  CONCURRENTLY (capped at 4), refilling as each finishes. Use for "run the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sproutkit-code",
3
- "version": "1.5.2",
3
+ "version": "1.6.0",
4
4
  "description": "Sproutkit in your terminal — find leads, build sites, run outreach, all via chat.",
5
5
  "bin": {
6
6
  "sproutkit": "./dist/index.js"
@@ -29,7 +29,8 @@
29
29
  "dependencies": {
30
30
  "@anthropic-ai/sdk": "^0.30.1",
31
31
  "axios": "^1.7.1",
32
- "node-sqlite3-wasm": "^0.8.20"
32
+ "node-sqlite3-wasm": "^0.8.20",
33
+ "pdfkit": "^0.20.1"
33
34
  },
34
35
  "devDependencies": {
35
36
  "@types/node": "^20.14.0",