
Prompt Engineering Patterns
FreeOptimize LLM performance with advanced prompt techniques.
Free · Opens the source repo
What Prompt Engineering Patterns does
Prompt Engineering Patterns is designed for developers and designers who want to master the art of prompt engineering to enhance the performance and reliability of large language models (LLMs). This skill provides a comprehensive set of techniques for crafting effective prompts that maximize the controllability of AI outputs in production environments. By leveraging structured reasoning patterns, few-shot learning strategies, and prompt optimization methods, users can significantly improve the quality of LLM responses.
The skill includes various core capabilities such as few-shot learning, which allows users to select and balance examples effectively, ensuring that the LLM can generalize from relevant input-output pairs. Additionally, it covers chain-of-thought prompting, enabling users to elicit step-by-step reasoning from the model. This approach is particularly useful for complex tasks where clarity and logical progression are essential. The skill also emphasizes prompt optimization techniques, including iterative refinement and performance measurement, helping users to fine-tune their prompts for better accuracy and consistency.
Moreover, the skill provides guidance on creating reusable prompt templates and system prompts that define model behavior and output structure. These templates can be adapted for various applications, making it easier to maintain consistency across different LLM interactions. The included resources, such as references on few-shot learning and chain-of-thought prompting, further support users in applying these techniques effectively. Overall, Prompt Engineering Patterns is an invaluable resource for anyone looking to enhance their skills in prompt engineering and improve the performance of LLMs in real-world applications.
When to use it
Use this skill when designing prompts for production LLM applications, optimizing their performance, or implementing structured reasoning patterns.
When not to use it
Avoid using this skill for tasks unrelated to prompt engineering or when a different tool is required for the job.
What you can build with it
Optimizing LLM Prompts
When developing a new application that relies on LLMs, use this skill to refine and optimize prompts for better accuracy and consistency.
Implementing Few-Shot Learning
In scenarios where you need to provide examples for the model to learn from, this skill helps you select and structure those examples effectively.
Creating Reusable Prompt Templates
For teams working on multiple LLM projects, this skill allows you to design and implement reusable prompt templates that maintain consistency across different applications.
How to install Prompt Engineering Patterns
View source1. Install with the skills CLI
npx skills add rmyndharis/antigravity-skills/prompt-engineering-patterns --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by rmyndharisPrompt Engineering Patterns
Master advanced prompt engineering techniques to maximize LLM performance, reliability, and controllability.
Do not use this skill when
- The task is unrelated to prompt engineering patterns
- You need a different domain or tool outside this scope
Instructions
- Clarify goals, constraints, and required inputs.
- Apply relevant best practices and validate outcomes.
- Provide actionable steps and verification.
Use this skill when
- Designing complex prompts for production LLM applications
- Optimizing prompt performance and consistency
- Implementing structured reasoning patterns (chain-of-thought, tree-of-thought)
- Building few-shot learning systems with dynamic example selection
- Creating reusable prompt templates with variable interpolation
- Debugging and refining prompts that produce inconsistent outputs
- Implementing system prompts for specialized AI assistants
Core Capabilities
1. Few-Shot Learning
- Example selection strategies (semantic similarity, diversity sampling)
- Balancing example count with context window constraints
- Constructing effective demonstrations with input-output pairs
- Dynamic example retrieval from knowledge bases
- Handling edge cases through strategic example selection
2. Chain-of-Thought Prompting
- Step-by-step reasoning elicitation
- Zero-shot CoT with "Let's think step by step"
- Few-shot CoT with reasoning traces
- Self-consistency techniques (sampling multiple reasoning paths)
- Verification and validation steps
3. Prompt Optimization
- Iterative refinement workflows
- A/B testing prompt variations
- Measuring prompt performance metrics (accuracy, consistency, latency)
- Reducing token usage while maintaining quality
- Handling edge cases and failure modes
4. Template Systems
- Variable interpolation and formatting
- Conditional prompt sections
- Multi-turn conversation templates
- Role-based prompt composition
- Modular prompt components
5. System Prompt Design
- Setting model behavior and constraints
- Defining output formats and structure
- Establishing role and expertise
- Safety guidelines and content policies
- Context setting and background information
Quick Start
from prompt_optimizer import PromptTemplate, FewShotSelector
# Define a structured prompt template
template = PromptTemplate(
system="You are an expert SQL developer. Generate efficient, secure SQL queries.",
instruction="Convert the following natural language query to SQL:\n{query}",
few_shot_examples=True,
output_format="SQL code block with explanatory comments"
)
# Configure few-shot learning
selector = FewShotSelector(
examples_db="sql_examples.jsonl",
selection_strategy="semantic_similarity",
max_examples=3
)
# Generate optimized prompt
prompt = template.render(
query="Find all users who registered in the last 30 days",
examples=selector.select(query="user registration date filter")
)
Key Patterns
Progressive Disclosure
Start with simple prompts, add complexity only when needed:
-
Level 1: Direct instruction
- "Summarize this article"
-
Level 2: Add constraints
- "Summarize this article in 3 bullet points, focusing on key findings"
-
Level 3: Add reasoning
- "Read this article, identify the main findings, then summarize in 3 bullet points"
-
Level 4: Add examples
- Include 2-3 example summaries with input-output pairs
Instruction Hierarchy
[System Context] → [Task Instruction] → [Examples] → [Input Data] → [Output Format]
Error Recovery
Build prompts that gracefully handle failures:
- Include fallback instructions
- Request confidence scores
- Ask for alternative interpretations when uncertain
- Specify how to indicate missing information
Best Practices
- Be Specific: Vague prompts produce inconsistent results
- Show, Don't Tell: Examples are more effective than descriptions
- Test Extensively: Evaluate on diverse, representative inputs
- Iterate Rapidly: Small changes can have large impacts
- Monitor Performance: Track metrics in production
- Version Control: Treat prompts as code with proper versioning
- Document Intent: Explain why prompts are structured as they are
Common Pitfalls
- Over-engineering: Starting with complex prompts before trying simple ones
- Example pollution: Using examples that don't match the target task
- Context overflow: Exceeding token limits with excessive examples
- Ambiguous instructions: Leaving room for multiple interpretations
- Ignoring edge cases: Not testing on unusual or boundary inputs
Integration Patterns
With RAG Systems
# Combine retrieved context with prompt engineering
prompt = f"""Given the following context:
{retrieved_context}
{few_shot_examples}
Question: {user_question}
Provide a detailed answer based solely on the context above. If the context doesn't contain enough information, explicitly state what's missing."""
With Validation
# Add self-verification step
prompt = f"""{main_task_prompt}
After generating your response, verify it meets these criteria:
1. Answers the question directly
2. Uses only information from provided context
3. Cites specific sources
4. Acknowledges any uncertainty
If verification fails, revise your response."""
Performance Optimization
Token Efficiency
- Remove redundant words and phrases
- Use abbreviations consistently after first definition
- Consolidate similar instructions
- Move stable content to system prompts
Latency Reduction
- Minimize prompt length without sacrificing quality
- Use streaming for long-form outputs
- Cache common prompt prefixes
- Batch similar requests when possible
Resources
- references/few-shot-learning.md: Deep dive on example selection and construction
- references/chain-of-thought.md: Advanced reasoning elicitation techniques
- references/prompt-optimization.md: Systematic refinement workflows
- references/prompt-templates.md: Reusable template patterns
- references/system-prompts.md: System-level prompt design
- assets/prompt-template-library.md: Battle-tested prompt templates
- assets/few-shot-examples.json: Curated example datasets
- scripts/optimize-prompt.py: Automated prompt optimization tool
Success Metrics
Track these KPIs for your prompts:
- Accuracy: Correctness of outputs
- Consistency: Reproducibility across similar inputs
- Latency: Response time (P50, P95, P99)
- Token Usage: Average tokens per request
- Success Rate: Percentage of valid outputs
- User Satisfaction: Ratings and feedback
Next Steps
- Review the prompt template library for common patterns
- Experiment with few-shot learning for your specific use case
- Implement prompt versioning and A/B testing
- Set up automated evaluation pipelines
- Document your prompt engineering decisions and learnings
Frequently asked questions about Prompt Engineering Patterns
Similar skills
Arize Prompt Optimization
Enhance LLM prompts using data-driven insights.
Prompt Optimizer
Transform vague ideas into precise LLM prompts.
Prompt Engineering Patterns
Enhance LLM prompts for better performance and reliability.
Senior Prompt Engineer
Optimize LLM performance and design advanced AI systems.
Prompt Engineer Toolkit
Transform marketing prompts into tested production assets.
Senior Prompt Engineer
Optimize prompts and evaluate LLM outputs efficiently.
