skills/assistant/grill-me/SKILL.md
Interview the user relentlessly about a plan or design until reaching confidence through Socratic questioning. Use when: stress-testing a plan, probing design assumptions, validating feasibility. Triggers on: grill me, stress-test, interview me, validate plan, probe design.
npx skillsauth add ravnhq/ai-toolkit grill-meInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Interview the user relentlessly about a plan or design using structured Socratic questioning until reaching high confidence. Walk the decision tree systematically, uncover hidden assumptions, expose edge cases, and validate feasibility before implementation.
Before asking anything, gather the full context:
If the user hasn't provided context, ask them to share the plan first:
What's the design or plan you want me to grill you on? Please share:
- A brief description or goals
- Any relevant code or documentation
- Constraints or requirements
Do not proceed until you have context to work with.
Structure your questioning around these categories:
| Category | Focus | Example Questions | |----------|-------|-------------------| | Requirements | What is the user trying to solve? | "What problem does this solve?" "Who are the users?" "What success looks like?" | | Assumptions | What is the user taking for granted? | "Why are you using technology X?" "What if that assumption is wrong?" "Have you validated this with users?" | | Constraints | What are the boundaries? | "What are the hard constraints (time, budget, scale)?" "What are you not allowed to change?" "What's the deployment path?" | | Dependencies | What else must be true? | "What other systems must exist?" "What's the critical path?" "What could block you?" | | Edge Cases | What could break it? | "What happens at scale?" "What about error cases?" "What if X fails?" | | Validation | How will you know it works? | "How will you measure success?" "What are your test criteria?" "How will you catch regressions?" |
Map out the logical dependencies between decisions:
Primary decision
├── Sub-decision A
│ ├── Implementation choice A.1
│ └── Implementation choice A.2
├── Sub-decision B
│ ├── Validation approach B.1
│ └── Rollback plan B.2
└── Sub-decision C
Identify which decisions must be resolved first (blockers) and which can be explored in parallel.
Important: Ask about high-impact, high-uncertainty decisions first. Skip decisions that are already locked down (unless you spot contradictions).
For each unresolved branch, ask exactly one focused question:
Structure of each question:
Example:
You're planning async message processing. The question is:
should messages be processed in order (FIFO) or can they be out of order?
My recommendation: enforce FIFO unless you have a specific reason not to.
Out-of-order processing complicates debugging and introduces race conditions.
Risk if you go out-of-order: state consistency bugs that are hard to reproduce.
What's your thinking here?
If a question can be answered by reading code, do that instead of asking:
# Examples:
grep -r "MessageQueue" src/ # How are messages currently queued?
grep -r "error handling" src/ # What error patterns already exist?
find . -name "*.test.ts" | head -5 # What's the testing pattern?
Surface findings to the user:
I found that your existing API already has retry logic in [file:line].
Given that, my question becomes: should we reuse this pattern or replace it?
If the user's answer contradicts earlier statements or introduces new risks, surface this explicitly:
You said earlier that latency is critical, but now you're proposing a
synchronous validation step that could block for seconds.
How do you reconcile these constraints?
Do not accept contradictions silently. Push back gently but clearly.
Stop questioning when:
When you've finished questioning, provide a brief summary:
## Summary
### Decisions Locked
- Message processing: FIFO with retry logic (max 3 retries)
- Deployment: Blue-green with health checks
- Monitoring: Custom metrics on latency percentiles
### Remaining Risks
- Database scaling: you identified this but haven't validated with ops yet
- Failover time: depends on network convergence (currently untested)
### Next Steps
1. Validate with ops team on database capacity
2. Run failover simulation to measure real time
3. Build monitoring dashboard before launch
Confidence level: High on architecture, Medium on operational readiness.
Ready to design in detail?
User: "Grill me on this auth system design."
Expected behavior: Read the design, identify key decisions, ask probing questions about assumptions and edge cases, validate feasibility, and push back on contradictions.
User: "Stress-test my plan for migrating to a new database."
Expected behavior: Map out the migration steps, probe assumptions about downtime and rollback, identify risks around data consistency, ask validation questions.
User: "Interview me on this feature proposal before I write code."
Expected behavior: Understand the requirements, validate the approach against constraints, uncover hidden dependencies, ensure the user is thinking through edge cases.
User: "Review this code and fix the bugs."
Expected behavior: Do not use grill-me. The user wants code review and fixes, not an interview. Use a code review skill instead.
User: "What do you think of this design?"
Expected behavior: Do not use grill-me unless the user explicitly asks to be grilled. Provide direct feedback or a review instead.
testing
Transform user requests into detailed, precise prompts for AI models. Use when users say 'promptify', 'promptify this', 'rewrite this prompt', 'make this prompt better/more specific', or explicitly request prompt engineering or improvement of their request for better AI responses.
tools
Manage AI skills from the Ravn AI Toolkit via corvus CLI — install, update, remove, search, and configure skills for any project. Use when: (1) Installing AI skills into a project, (2) Updating installed skills to latest versions, (3) Browsing or searching available skills, (4) Configuring global or per-project skill sets, (5) Troubleshooting corvus setup. Triggers on: "install skills", "add skills", "update skills", "corvus", "skill manager", "browse skills", "set up AI rules".
development
Generate a gallery of design variations for a UI component. Takes an existing component (referenced by name, pasted code, or screenshot) and produces N distinct rendered alternatives in a single comparison page. Use when exploring visual directions, generating mockups, comparing design approaches for a component, creating A/B candidates, or when anyone says "show me options" or "give me variations" for a UI element.
tools
Create custom QA agent personalities for project-specific testing needs. Guided builder that asks about the specialty, tools, and test scenarios, then generates a personality file and registers it in the QA config. Trigger on "create a QA personality", "add a custom test agent", "build a webhook tester", or when the user needs a project-specific QA agent. Also triggered by /qa-create-personality.