Apply Lens
apply_lensApply a systems thinking model to analyze a current problem, structuring narrative analysis and findings for multi-perspective insight.
Instructions
Apply a systems thinking model to the current problem.
IMPORTANT: The "analysis" parameter is your narrative analysis text. The "findings" parameter is a JSON object where keys are the model's required field names and values are your findings for each. Do NOT pass finding fields as top-level parameters — they must be nested inside the "findings" object.
Example call structure: { "sessionId": "abc123", "modelId": "stock-and-flow", "analysis": "Your narrative analysis through this lens...", "findings": { "stocks": "Your finding about stocks...", "inflows": "Your finding about inflows...", "outflows": "Your finding about outflows...", "equilibrium_analysis": "Your finding about equilibrium..." } }
Available models: blast-radius (Blast Radius), contract-boundaries (Contract Boundaries), conways-law (Conway's Law), coupling-cohesion (Coupling & Cohesion), data-transformation-fidelity (Data Transformation Fidelity), error-propagation (Error Propagation), failure-modes (Failure Modes), idempotency (Idempotency), kiss (KISS), modularity (Modularity), separation-of-concerns (Separation of Concerns), state-ownership (State Ownership), causal-loop-diagrams (Causal Loop Diagrams), feedback-loops (Feedback & Feedforward Loops), local-vs-global (Local vs Global Optimization), source-sink (Source & Sink), stock-and-flow (Stock & Flow), system-dynamics (System Dynamics), buffers (Buffers & Buffer Sizing), constraints (Constraint Analysis), leverage-points (Leverage Points), migration (Migration), queuing-theory (Queuing Theory), domain-modeling (Domain Modeling Lens), event-driven (Event-Driven Lens), functional (Functional Lens), adversarial (Adversarial Analysis), build-vs-buy (Build vs. Buy), circle-of-competence (Circle of Competence), dependency-risk (Dependency Risk), goodharts-law (Goodhart's Law), hanlons-razor (Hanlon's Razor), inversion (Inversion), map-vs-territory (Map vs Territory), margin-of-safety (Margin of Safety), occams-razor (Occam's Razor), reversibility (Reversibility), second-order-thinking (Second-Order Thinking), back-pressure (Back Pressure), error-budgets (Error Budgets), graceful-degradation (Graceful Degradation), observability-gaps (Observability Gaps), operational-complexity (Operational Complexity), denormalization (Denormalization), normalization (Normalization), attack-surface (Attack Surface), cia-triad (CIA Triad), defense-in-depth (Defense in Depth), least-privilege (Principle of Least Privilege), trust-boundaries (Trust Boundaries), binary-search (Binary Search), bottom-up (Bottom-Up), caches (Caches), parallelism (Parallelism), top-down (Top-Down), whats-changed (What's Changed)
IMPORTANT: Do NOT stop after one lens. Apply 2-4 lenses per session to get genuine multi-perspective insight. The response includes prior findings from earlier lenses — use these to identify connections and build on previous analysis. When you've built enough perspective, call synthesize to integrate across lenses.
Can be called multiple times per session. Allowed after synthesize.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| modelId | Yes | Model to apply (e.g. 'queuing-theory', 'bottom-up') | |
| analysis | Yes | Your analysis through this lens | |
| findings | Yes | Model-specific findings keyed by required field names | |
| nextLens | No | Which lens you want to apply next | |
| sessionId | Yes | Session ID from start_analysis | |
| confidence | No | Confidence in this analysis | |
| observations | No | Emergent insights outside the model template |