Day 2 afternoon move of a Foundation Sprint. Evaluates the candidate approach set through multiple lenses (4 classic plus at least 1 custom) to surface trade-offs, identify consistent winners and contradictions, and produce a top bet plus a backup plan. Use after Approach Options is signed. Lens scoring is a sense-making tool, not mathematical truth; arbitrary precision is a smell.
npx skills add https://github.com/product-on-purpose/pm-skills --skill tool-foundation-sprint-magic-lenses
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
Day 2 afternoon of a Foundation Sprint. The team evaluates each candidate approach from multiple perspectives, surfaces contradictions, and produces a top bet plus a backup plan. The Decider names both; without an explicit backup, invalidation of the top bet sends the team back to ambiguous debate.
Family contract: docs/reference/skill-families/foundation-sprint-skills-contract.md. This skill is a member of foundation-sprint-skills.
A single bundled artifact with six sections:
See references/TEMPLATE.md for the canonical structure and references/EXAMPLE.md for the Brainshelf example.
| Lens | What it asks | Why it matters |
|---|---|---|
| Customer | Which approach do target customers immediately understand and want? | If customers don't get it, nothing else matters |
| Pragmatic | Which approach can the team ship at quality in [build window]? | Beautiful approaches the team can't ship are not real options |
| Growth | Which approach gives the team a story strong enough to acquire users without paid channels? | Friction at the door tells you about word-of-mouth potential |
| Money | Which approach has the cleanest path to a paying customer? | Strategic clarity must include the revenue path |
| Custom (1+ required) | Team-specific lens that captures what would otherwise be missed | Each team has a unique constraint or opportunity worth a dedicated view |
Custom lens examples: defensibility against a specific competitor, founder excitement, mission fit, learning rate, regulatory risk, partner alignment, hiring leverage.
Facilitator restates the 4 classic lenses and confirms the 1 or more custom lenses the team prepared. If no custom lens is prepared, this skill prompts the team to generate one before proceeding (per ratified spec decision).
For each lens, plot each approach on a 2x2 of (high/low value on that lens) by (high/low feasibility for that lens). Use dot positions rather than numeric scores; arbitrary precision (3.7 vs 3.8) is a smell that the team has confused sense-making with math.
The team discusses each lens briefly before plotting. Decider does not vote in this step; the Decider supervotes at the end.
After all lenses are plotted, the team identifies:
The Decider names the top bet. The chosen approach should be:
The Decider names the backup. The backup is NOT a second-place approach to soothe whoever advocated for it; it is the approach the team will pivot to if the top bet fails validation. The backup MUST be distinct from the top bet in strategic direction.
If the top bet and backup are too similar, the Decider has not named a real backup. The skill prompts for a more distinct alternative.
The Decider authors one paragraph explaining why this top bet over this backup. The rationale will become the spine of the Founding Hypothesis's "why we believe this" section.
The Decider's job during Magic Lenses:
Prerequisites: tool-foundation-sprint-approach-options. The approach set is the load-bearing input.
The skill invokes tool-note-and-vote at least once (for the top bet supervote when scoring is ambiguous). Additional invocations may happen for the custom lens definition if the team has not pre-prepared one.
Next invocation: tool-foundation-sprint-founding-hypothesis at Day 2 end. The top bet, the backup, and the decision rationale flow directly into the Founding Hypothesis template.
This skill ends with a Decider Checkpoint in references/TEMPLATE.md. The Decider signs off on the top bet, the backup, and the decision rationale. Without sign-off, Founding Hypothesis cannot start cleanly.
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take product-on-purpose/tool-foundation-sprint-magic-lenses from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.