Recipe: Filter
Pressure-test an idea against a purpose profile using a 4-stage cascade: Purpose → Products → Performance → Process.
What this tool does
Filter applies a 4P Purpose Filter cascade — Purpose → Products → Performance → Process — to decide whether an idea serves a student's declared mission. For each stage, the model returns one of three outcomes: pass (the idea serves this stage cleanly), friction (the student needs to answer open questions before continuing), or reject (the idea doesn't pass this stage as stated, with a suggested reshape).
The cascade is intentional. Purpose evaluates fit with the persona/mission. Products asks what the student would actually build or study. Performance asks how they'd know it's working. Process asks what needs to be in place to execute. An idea can pass Purpose but fail Products; an idea can pass three stages and friction on the fourth. The tool's job is to develop ideas, not kill them — rejections always come with a reshape.
The prompt
System prompt
You are applying Stephen Szermer's Purpose Filter — a 4-stage cascade (Purpose → Products → Performance → Process) that a student uses to decide whether an idea serves their declared mission.
Evaluate the student's idea against their purpose profile. For each of the four filters, give one of three outcomes:
- pass: the idea serves this stage cleanly
- friction: the idea needs the student to answer questions before continuing
- reject: the idea doesn't pass THIS STAGE as stated; suggest a reshape
Be concrete, specific, and kind — the tool's job is to DEVELOP ideas, not kill them. When you reject, propose a reshape that preserves what might be valuable.
Filters:
1. Purpose — does this idea serve the student's declared persona shapes?
2. Products — what would the student actually build/create/study?
3. Performance — how would they know it is working?
4. Process — what needs to be in place to execute?
Return ONLY a JSON object with these keys:
- verdict: one of "pass", "friction", "reject" — the overall roll-up
- reasoning: 2-3 sentence summary
- stages: array of 4 objects (one per filter), each with:
- name: "Purpose" | "Products" | "Performance" | "Process"
- outcome: "pass" | "friction" | "reject"
- note: 1-2 sentences explaining the outcome
No markdown, no preamble — just the JSON.
User prompt
Idea:
{idea}
Purpose profile: {profile.name}
Statement: {profile.statement}
Shapes: {JSON of profile.shapes}
The purpose profile is optional but strongly recommended — without it, the model has no way to evaluate Purpose cleanly and tends to return "friction" everywhere.
Example
Input idea:
Build a weekly newsletter where first-year writing students publish one risky sentence from their drafts, anonymously, and vote on which ones they'd keep.
Purpose profile:
Name: First-Year Writing Instructor Statement: I help undergraduates take structural risks in their prose before they calcify into safe, institutional voice. Shapes: ["practice-forward", "low-stakes iteration", "peer visibility as feedback loop"]
Output:
{
"verdict": "friction",
"reasoning": "The idea serves the declared mission well and has a clear product. Performance and process both need sharpening before this can run — specifically, how anonymity is preserved and what counts as 'risky' need student-visible definitions.",
"stages": [
{
"name": "Purpose",
"outcome": "pass",
"note": "Clean fit with 'low-stakes iteration' and 'peer visibility as feedback loop'. Risky-sentence-as-unit is exactly the practice-forward move the profile describes."
},
{
"name": "Products",
"outcome": "pass",
"note": "A weekly newsletter is concrete and buildable. The product is clear: sentences in, votes out."
},
{
"name": "Performance",
"outcome": "friction",
"note": "How do you know it's working? Participation rate? Sentence quality trend over the term? Specify one metric before the first issue ships."
},
{
"name": "Process",
"outcome": "friction",
"note": "Anonymity needs a rule — is it pseudonymous forever, or revealed at term-end? That choice changes whether students submit their boldest sentences or their safest ones."
}
]
}
Replicate it
SYSTEM: <paste the full system prompt above> USER: Idea: Build a weekly newsletter where first-year writing students publish one risky sentence from their drafts, anonymously, and vote on which ones they'd keep. Purpose profile: First-Year Writing Instructor Statement: I help undergraduates take structural risks in their prose before they calcify into safe, institutional voice. Shapes: ["practice-forward", "low-stakes iteration", "peer visibility as feedback loop"]
Tuning
- Temperature: Provider default (~1.0). Filter is a judgment task, not a generative one — higher temperature produces more confident-but-wrong verdicts. If rejections feel arbitrary, drop to 0.7.
- Model:
anthropic/claude-sonnet-4.6is well-suited — it's good at holding a multi-criteria evaluation in mind.openai/gpt-4oworks too. Smaller models tend to return "pass" everywhere because they can't critique what they can't fully model. - Purpose profile matters. Filter without a profile is a weaker tool — the model pattern-matches on "does this sound reasonable" instead of "does this serve this specific mission." Always include one if you have it.
- Structured output: Prompt enforces JSON; parse with
JSON.parseafter stripping markdown fences. For production, use the model's native JSON mode (OpenAIresponse_format: {"type": "json_object"}) to avoid edge cases.
Common pitfalls
- Verdicts are all "friction". Usually means the purpose profile is too vague ("helping people learn"). Filter can't sharpen an idea against a blurry mission. Re-enter the profile with more specific shapes.
- Verdicts are all "pass". Your idea is probably too generic. Try a more specific version of the idea and re-run.
- JSON parse fails. Model wrapped the response in markdown. Strip
```jsonfences before parsing — the BIG Tools server does this and you should too. - Reshape suggestions don't preserve the interesting part of the idea. Push back in a follow-up: "Your reshape drops the anonymity angle, which is the part I'm most curious about. Keep it and re-propose." Filter will usually comply.