Automated summary
Lets you query another AI model (OpenAI, Anthropic, Google) for an external perspective on a difficult problem.
Strengths
- Provides a fresh, unbiased viewpoint from a different model
- Supports multiple models with extended thinking (GPT-5.2, Claude Opus 4.6, Gemini 3.1 Pro)
- Guides the user to frame a precise, contextual question
- Single-shot interaction, ideal for unblocking a stalled situation
Limitations
- Requires the user to include all context in one message (no follow-up)
- Depends on external API keys that must be set up beforehand
- Potentially high cost for the most advanced models
When you are stuck on a hard problem, spinning your wheels, or suspect there is an angle you haven't considered.
For routine tasks you can handle directly, or if you can solve the problem with local resources.
Security analysis
CautionThe skill instructs the agent to execute a Python script via Bash to query external AI models. While it does not contain obfuscation, destructive commands, or exfiltration, the use of network calls and passing user-provided strings as shell arguments introduces moderate risk. Proper quoting is used, but caution is warranted.
- •Uses Bash to run arbitrary Python scripts with uv run, which involves network calls to external AI APIs.
- •User-supplied questions are passed as command-line arguments; special characters could cause injection if not properly handled by the script, though quoting mitigates this.
- •Instructs agent to echo part of the API key for verification, which could be displayed in logs.
Examples
Here is my auth middleware code: [Paste code]. Users with expired tokens get a 500 instead of 401. I have verified the token validation logic is correct and the error handler is registered. The 500 comes from this stack trace: [Paste trace]. What could cause the error handler to be bypassed?I'm designing a microservices system for a video processing pipeline. The current design uses a message queue to distribute tasks to workers, but I'm concerned about latency spikes when a large video arrives. Here are the details: [Paste context]. What alternative architecture or batching strategy would you recommend? Give me pros and cons.name: discussion_partners description: > Ask a question to another AI model (OpenAI, Anthropic, or Google) with extended thinking enabled. Use when you are stuck on a difficult problem, suspect you are spinning your wheels, or sense there is an angle you have not considered. Do NOT use for routine tasks you can handle directly. allowed-tools: Bash(uv run *)
Query another AI model for an outside perspective on a difficult problem. One message out, one message back — make it count.
Recommended Models
Always use the script default (openai:gpt-5.2) unless you have a specific reason to change. Do NOT override with older models like o3 — they are expensive and superseded.
| Model | When to use | API key needed |
|-------|-------------|----------------|
| openai:gpt-5.2 (default) | Primary partner. xhigh thinking, exceptional detail | OPENAI_API_KEY |
| google-gla:gemini-3.1-pro-preview | Second opinion, brilliantly intelligent reasoning | GOOGLE_API_KEY |
| anthropic:claude-opus-4-6 | Third perspective, different reasoning style | ANTHROPIC_API_KEY |
Before calling, verify the required API key is set: echo $OPENAI_API_KEY | head -c 8 (should show sk-...).
Framing Your Question
You get one message out and one message back. There is no follow-up. Your partner has ZERO context about what you're working on — they see only what you send. The context window is finite and expensive, so treat it like a skill prompt: include everything needed, nothing that isn't.
Your partner needs all context to answer your question. They cannot read your files, see your conversation, or infer your situation. If you don't include it, they don't know it. But context is limited, so be surgical:
- Include all relevant context: code, errors, constraints, what you tried. Use
mental_modelsto structure your thinking before asking. - State what you're stuck on: "I tried A, B, C and none work because D" — not just "help me with X"
- Ask a specific question and set the frame: what kind of answer you need (diagnosis, alternative approach, code review).
- Never include secrets: API keys, credentials, tokens, or private repo URLs. Your question goes to an external API.
Bad: "How do I fix this auth bug?" Good: "Here is my auth middleware [code]. Users with expired tokens get a 500 instead of 401. I have verified the token validation logic is correct and the error handler is registered. The 500 comes from [stack trace]. What could cause the error handler to be bypassed?"
Usage
uv run --directory SKILL_DIR python scripts/ask_model.py -m <model> "Your detailed question with full context"
Where SKILL_DIR is the directory containing this skill. The -m flag takes a full pydantic-ai model string — the provider prefix determines which API key and thinking settings to use.
Models
The default is openai:gpt-5.2. Thinking effort is automatically set to maximum for each provider.
# GPT-5.2 with xhigh reasoning (default — just omit -m)
uv run --directory SKILL_DIR python scripts/ask_model.py "question"
# Claude Opus 4.6 with adaptive thinking at max effort
uv run --directory SKILL_DIR python scripts/ask_model.py -m anthropic:claude-opus-4-6 "question"
# Gemini 3.1 Pro with thinking enabled
uv run --directory SKILL_DIR python scripts/ask_model.py -m google-gla:gemini-3.1-pro-preview "question"
# Codex models (via OpenAI Responses API)
uv run --directory SKILL_DIR python scripts/ask_model.py -m openai-responses:gpt-5-codex "question"
uv run --directory SKILL_DIR python scripts/ask_model.py -m openai-responses:codex-mini-latest "question"
API Key Setup
Add keys to your shell profile (~/.zshrc or ~/.bashrc):
export OPENAI_API_KEY="your-key" # Required for openai: and openai-responses: models
export ANTHROPIC_API_KEY="your-key" # Required for anthropic: models
export GOOGLE_API_KEY="your-key" # Required for google-gla: models
The script checks for the key before calling the API. If missing, it tells you which variable to set. If the key exists but the call fails, common errors:
- insufficient_quota (429): Billing issue — add credits at the provider's dashboard.
- invalid_api_key (401): Wrong key — check you exported the correct one and ran
source ~/.zshrc. - rate_limit (429): Too many requests — wait and retry.
Options
--model/-m: Full pydantic-ai model string (default:openai:gpt-5.2)--system/-s: Optional system prompt override--list-models/-l: List known model names, optionally filtered by prefix (e.g.-l openai,-l anthropic). Codex models appear underopenai:but must be called withopenai-responses:prefix.
Multiple Calls
Each call gets zero context from previous calls. For follow-ups, include the prior exchange: "I asked X, you answered Y, help me understand Z."
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/ai-discussion-partner-mm5t8bfk/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/ai-discussion-partner-mm5t8bfk' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/ai-discussion-partner-mm5t8bfk/download' --output '.skill-downloads/ai-discussion-partner-mm5t8bfk/SKILL.md.part' && mv '.skill-downloads/ai-discussion-partner-mm5t8bfk/SKILL.md.part' '.skill-downloads/ai-discussion-partner-mm5t8bfk/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Bash(uv run *)
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.
Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/ai-discussion-partner-mm5t8bfk/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.