Description
Power-Up Playbooks are curated knowledge indexes that define what a capability should retrieve over. A Playbook groups ordered references into named sections, and each reference can target a whole Dotabase, one Dotabase row, a Page, or a saved vault query. Authors can optionally expand beyond literal members through selected knowledge-graph edge types and a bounded depth.
The feature includes a real member-model service rather than only a template. It supports section and member mutations, bulk additions, reordering, retrieval-scope settings, editor projections, and scope-source reads. Writes flow through the standard row service so membership changes also reconcile member_of graph edges.
Selling Points
- Focuses an invocation on a curated knowledge set instead of searching the entire workspace.
- Organizes heterogeneous sources into clear ordered sections with notes and stable member identities.
- Reuses one maintained context set across multiple capabilities rather than repeating inline references.
- Expands retrieval through chosen graph relationships with a hard depth bound.
- Keeps graph membership synchronized when sources are added, moved, or removed.
User Story
A product lead creates a launch Playbook with sections for customer research, approved messaging, technical constraints, and counterexamples. The Playbook references individual rows, a whole research Dotabase, and one saved query. A research capability invokes that Playbook and retrieves from the curated set plus one level of selected graph neighbors.
Extension Surface
packages/superpowers/src/internal/services/playbook-service.ts is the primary extension surface: callers can add, update, move, remove, and bulk-add generalized references and configure graph expansion. packages/superpowers/src/internal/templates/playbook.template.ts binds starter-section seeding and membership-edge reconciliation, allowing the member model to extend through standard row mutations.
Capabilities & Limits
Playbooks can seed a useful initial section structure, organize mixed source types, expose literal editor membership, reconcile source-to-Playbook edges, and feed an access-filtered scope resolver. Retrieval scope supports selected edge types and depths from one through the fixed maximum of two.
A Playbook is a lens, not a sequence of actions: it does not execute procedural steps like a Prompt Chain. The package’s raw scope-source method intentionally does not perform access filtering; the downstream search resolver owns that gate. Malformed present membership data fails the mutation rather than being overwritten. Playbook import is a separate API-owned overlap and is not part of this candidate’s ownership claim.
Implementation Map
packages/superpowers/src/internal/templates/playbook.template.tspackages/superpowers/src/internal/services/playbook-service.tspackages/dotabases/src/behaviors/playbook-edges/index.tspackages/search/src/internal/scope/playbook-scope-resolver.tsapps/web/src/modules/dotabases/playbook-editor/PlaybookEditor.tsx