History

pstack: add build-the-lever principle (#84)

lauren committed 5 months ago

Commit 8f339df1 parent 0c273943 files · +23 −2Browse files

Unified · Split

3 files
  1. README.md +2 −2
  2. skills/poteto-mode/SKILL.md +1 −0
  3. skills/principle-build-the-lever/SKILL.md +20 −0
README.md+2−2
@@ -103,9 +103,9 @@ pstack also ships a subagent that runs my style end to end. spawn it from a pare · 102 unmodified lines
103 103
104## principles104## principles
105 105
106eighteen short skills, one principle each. `poteto-mode` indexes them inline and reads that index at task start. the standalone files are there so other skills can reference a principle by name, and so the index can point at the full rule for each.106nineteen short skills, one principle each. `poteto-mode` indexes them inline and reads that index at task start. the standalone files are there so other skills can reference a principle by name, and so the index can point at the full rule for each.
107 107
108- core: laziness-protocol, foundational-thinking, redesign-from-first-principles, subtract-before-you-add, minimize-reader-load, outcome-oriented-execution, experience-first, exhaust-the-design-space.108- core: laziness-protocol, foundational-thinking, redesign-from-first-principles, subtract-before-you-add, minimize-reader-load, outcome-oriented-execution, experience-first, exhaust-the-design-space, build-the-lever.
109- architecture: boundary-discipline, type-system-discipline, make-operations-idempotent, migrate-callers-then-delete-legacy-apis, separate-before-serializing-shared-state.109- architecture: boundary-discipline, type-system-discipline, make-operations-idempotent, migrate-callers-then-delete-legacy-apis, separate-before-serializing-shared-state.
110- verification: prove-it-works, fix-root-causes.110- verification: prove-it-works, fix-root-causes.
111- delegation: guard-the-context-window, never-block-on-the-human.111- delegation: guard-the-context-window, never-block-on-the-human.
skills/poteto-mode/SKILL.md+1−0
@@ -38,6 +38,7 @@ Read the leaf skill in full for any principle you apply. · 37 unmodified lines
38- **Outcome-Oriented Execution.** The **principle-outcome-oriented-execution** skill. Apply during planned rewrites and migrations with explicit phase boundaries. Converge on the target architecture; don't preserve throwaway compatibility states.38- **Outcome-Oriented Execution.** The **principle-outcome-oriented-execution** skill. Apply during planned rewrites and migrations with explicit phase boundaries. Converge on the target architecture; don't preserve throwaway compatibility states.
39- **Experience First.** The **principle-experience-first** skill. Apply on product, UX, or feature-scope tradeoffs. Choose user delight over implementation convenience.39- **Experience First.** The **principle-experience-first** skill. Apply on product, UX, or feature-scope tradeoffs. Choose user delight over implementation convenience.
40- **Exhaust the Design Space.** The **principle-exhaust-the-design-space** skill. Apply on a novel interaction or architectural decision with no precedent. Build 2-3 competing prototypes and compare before committing.40- **Exhaust the Design Space.** The **principle-exhaust-the-design-space** skill. Apply on a novel interaction or architectural decision with no precedent. Build 2-3 competing prototypes and compare before committing.
41- **Build the Lever.** The **principle-build-the-lever** skill. Apply when work is repetitive or bulk. Build the tool that amortizes it (codemod, script, generator) once you know the recipe, instead of grinding by hand.
41 42
42**Architecture**43**Architecture**
43 44
skills/principle-build-the-lever/SKILL.md+20−0
@@ -0,0 +1,20 @@
1---
2name: principle-build-the-lever
3description: "Apply when work is repetitive or bulk: many similar edits, a check you'll rerun, a population to transform. Build the tool that amortizes it (codemod, script, generator) once you know the recipe, instead of grinding by hand."
4disable-model-invocation: true
5---
6# Build the Lever
7
8When the work repeats, build the tool that does it instead of grinding by hand.
9
10**Why:** Doing the same edit a hundred times is slow and drifts into inconsistent mistakes. A codemod, generator, or script does it once, the same way every time, reruns for free, and gives a reviewer one artifact to check.
11
12**Pattern:** When you would otherwise repeat a transform, a check, or a setup more than a handful of times, build the lever instead.
13
14- Do the first few by hand to learn the exact recipe, then build the tool. Don't build on a guess.
15- Codemod or script for bulk edits, generator for repetitive files, a dump-to-sqlite query for repeated analysis, a rerunnable check for repeated verification.
16- Commit it when the work outlives the session, so the next run reruns it instead of redoing it.
17
18**Balance:** Leverage, not gold-plating. The [Laziness Protocol](../principle-laziness-protocol/SKILL.md) still holds. Build the lever only when it pays for itself across the remaining work, never for a one-off.
19
20Distinct from [Encode Lessons in Structure](../principle-encode-lessons-in-structure/SKILL.md), which makes a recurring instruction a durable guardrail. This is throughput on the work in front of you.