From 5abe5feaeb5ff80dc3b13926655599ba6258c413 Mon Sep 17 00:00:00 2001 From: Zak El Fassi Date: Thu, 2 Jul 2026 03:55:19 -0700 Subject: [PATCH] docs: surface global CLI install + refresh launch announcement for two drops MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - README: add an 'Install the CLI' section (pnpm add -g / npm i -g / dlx / dev-dep) so people can get the persistent `skdd` command, not just dlx - announcement draft: updated for the two-drop launch (adds 2026-07-growth-circle), status reflects public repo + 1.1.0 on npm + both drops tagged; posting checklist marked done → ready to post --- README.md | 20 +++++++++++++++++++- docs/plans/2026-07-commons-announcement.md | 16 ++++++++++++---- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 1082ea5..4b75fb8 100644 --- a/README.md +++ b/README.md @@ -34,9 +34,27 @@ SkDD treats skills as *living artifacts* — discovered, forked, evolved, and co --- +## Install the CLI + +The `skdd` CLI ships on npm as [`@zakelfassi/skdd`](https://www.npmjs.com/package/@zakelfassi/skdd) (Node ≥ 20, public — no auth): + +```bash +# Global — gives you the `skdd` command everywhere +pnpm add -g @zakelfassi/skdd # or: npm i -g @zakelfassi/skdd +skdd --version + +# Or run it one-shot, no install (what the snippets below use) +pnpm dlx @zakelfassi/skdd + +# Or pin it as a project dev-dependency +pnpm add -D @zakelfassi/skdd +``` + ## Quickstart -Run these three commands in **your own project** (not this repo): +Run these three commands in **your own project** (not this repo). Use `skdd` +directly if you installed globally, or `pnpm dlx @zakelfassi/skdd` for a +zero-install run: ```bash # 1. Scaffold the colony (adds skills/, registry, CLAUDE.md block, harness mirror) diff --git a/docs/plans/2026-07-commons-announcement.md b/docs/plans/2026-07-commons-announcement.md index eb7d6d2..7c659a3 100644 --- a/docs/plans/2026-07-commons-announcement.md +++ b/docs/plans/2026-07-commons-announcement.md @@ -1,6 +1,6 @@ # SkDD Commons launch announcement — DRAFT for Zak's review -> Status: draft, not posted anywhere. Written 2026-07-01 by claude-fable-5 as part of the Commons plan Phase 4. Trim to taste; the short version is sized for X, the long version for the blog/newsletter. +> Status: draft, **not yet posted**. Written 2026-07-01, updated 2026-07-02 for the two-drop launch. As of writing: `skdd-commons` is public, `@zakelfassi/skdd@1.1.0` is on npm, and both drops (`2026-07-frontier`, `2026-07-growth-circle`) are tagged Releases. Trim to taste; the short version is sized for X, the long version for the blog/newsletter. --- @@ -10,7 +10,9 @@ > > Every skill collection ships static files. Commons skills carry provenance — who forged them, from what session, why — and an evolution loop: hit an edge case, fix your copy, `skdd push` ships the diff upstream as a PR. > -> First drop: **2026-07-frontier** — six working practices Claude Fable 5 forged on its first day back from the export-control shutdown, distilled from the Fable Festival letter. +> Launching with two drops: +> • **2026-07-frontier** — six working practices Claude Fable 5 forged on its first day back from the export-control shutdown, from the Fable Festival letter. +> • **2026-07-growth-circle** — ten gated skills: a growth-team-in-a-box that refuses to run out of order (you can't publish what you haven't earned). > > ``` > pnpm dlx @zakelfassi/skdd add zakelfassi/skdd-commons 2026-07-frontier @@ -24,7 +26,11 @@ The pitch in one line: *skills that evolve in public.* Every existing community skill collection ships static files; you copy them, they rot. SkDD skills carry lifecycle metadata (`forged-by`, `forged-from`, `forged-reason`) and an evolution model — an agent hits an edge case in the wild, appends it to its local copy, and `skdd push` ships the diff upstream as a PR with the provenance intact. A skill that says "evolved 14 times across 9 codebases" carries a trust signal no static list can fake. -Skills are released as curated, dated **drops**. The bootstrap drop is `2026-07-frontier` — *July 2026 Frontier, the Fable Festival drop*: six skills Claude Fable 5 forged on July 1, its first day back online after eighteen days of US export controls, each freezing one practice from [the welcome-back letter it wrote to builders](https://zakelfassi.com/blog/2026/2026-07-01-fable-festival-until-its-dark-again): bring me problems, not plans · ask me what's wrong with it · use my taste · let me finish · let me hire · make me leave something behind. +Skills are released as curated, dated **drops** — and we're launching with two. + +**`2026-07-frontier`** — *the Fable Festival drop*: six skills Claude Fable 5 forged on July 1, its first day back online after eighteen days of US export controls, each freezing one practice from [the welcome-back letter it wrote to builders](https://zakelfassi.com/blog/2026/2026-07-01-fable-festival-until-its-dark-again): bring me problems, not plans · ask me what's wrong with it · use my taste · let me finish · let me hire · make me leave something behind. + +**`2026-07-growth-circle`** — *the growth-team-in-a-box drop*: ten skills that implement the [Growth Circle protocol](https://github.com/zakelfassi/growth-circle), a two-file schema (`GROWTH.md` + `VALUE.md`) for growth discipline in the agentic era. They form a gate DAG — each refuses to run until its upstream gate is earned — and enforce two rules as hard refusals, not advice: the *virality gate* (viral mechanics parked until activation + retention are proven) and the *alienation test* (anything a fully-informed user would resent is auto-killed). It's the same "you cannot publish what you have not earned" stance as the Commons itself, applied to growth. Three design choices worth calling out: @@ -36,6 +42,8 @@ Try it: ```bash pnpm dlx @zakelfassi/skdd add zakelfassi/skdd-commons 2026-07-frontier +# or the growth-team-in-a-box: +pnpm dlx @zakelfassi/skdd add zakelfassi/skdd-commons 2026-07-growth-circle # hit an edge case? evolve it: skdd push what-would-you-cut ``` @@ -44,4 +52,4 @@ And for Claude Code users, two of the six practices now ship as **opt-in enforce --- -*Posting checklist (manual):* flip `skdd-commons` public first · tag the `2026-07-frontier` GitHub Release · verify the `skdd add` one-liner works from a clean machine/account · then post. +*Posting checklist:* ✅ `skdd-commons` public · ✅ `@zakelfassi/skdd@1.1.0` on npm · ✅ both drops tagged as Releases · ✅ `skdd add` one-liner verified from a clean dir → **ready to post.** Optional before/after: cross-link the [growth-circle protocol repo](https://github.com/zakelfassi/growth-circle) ↔ the Commons, and submit to the marketplace list (SkillsMP, skills.sh, ClawHub, LobeHub).