Agent skill
fabric
Intelligent pattern selection for Fabric CLI. Automatically selects the right pattern from 242+ specialized prompts based on your intent - threat modeling, analysis, summarization, content creation, extraction, and more. USE WHEN processing content, analyzing data, creating summaries, threat modeling, or transforming text.
Install this agent skill to your Project
npx add-skill https://github.com/danielmiessler/PAIPlugin/tree/main/skills/fabric
SKILL.md
Fabric Skill
Setup Check - Fabric Repository
IMPORTANT: Before using this skill, verify the Fabric repository is available:
# Check if Fabric repo exists
if [ ! -d "$HOME/.claude/skills/fabric/fabric-repo" ]; then
echo "Fabric repository not found. Cloning..."
cd "$HOME/.claude/skills/fabric"
git clone https://github.com/danielmiessler/fabric.git fabric-repo
echo "Fabric repository cloned successfully."
else
echo "Fabric repository found at $HOME/.claude/skills/fabric/fabric-repo"
fi
If the repo doesn't exist, clone it immediately before proceeding with any pattern selection.
When to Activate This Skill
Primary Use Cases:
- "Create a threat model for..."
- "Summarize this article/video/paper..."
- "Extract wisdom/insights from..."
- "Analyze this [code/malware/claims/debate]..."
- "Improve my writing/code/prompt..."
- "Create a [visualization/summary/report]..."
- "Rate/review/judge this content..."
The Goal: Select the RIGHT pattern from 242+ available patterns based on what you're trying to accomplish.
🎯 Pattern Selection Strategy
When a user requests Fabric processing, follow this decision tree:
1. Identify Intent Category
Threat Modeling & Security:
- Threat model →
create_threat_modelorcreate_stride_threat_model - Threat scenarios →
create_threat_scenarios - Security update →
create_security_update - Security rules →
create_sigma_rules,write_nuclei_template_rule,write_semgrep_rule - Threat analysis →
analyze_threat_report,analyze_threat_report_trends
Summarization:
- General summary →
summarize - 5-sentence summary →
create_5_sentence_summary - Micro summary →
create_micro_summaryorsummarize_micro - Meeting →
summarize_meeting - Paper/research →
summarize_paper - Video/YouTube →
youtube_summary - Newsletter →
summarize_newsletter - Code changes →
summarize_git_changesorsummarize_git_diff
Wisdom Extraction:
- General wisdom →
extract_wisdom - Article wisdom →
extract_article_wisdom - Book ideas →
extract_book_ideas - Insights →
extract_insightsorextract_insights_dm - Main idea →
extract_main_idea - Recommendations →
extract_recommendations - Controversial ideas →
extract_controversial_ideas
Analysis:
- Malware →
analyze_malware - Code →
analyze_codeorreview_code - Claims →
analyze_claims - Debate →
analyze_debate - Logs →
analyze_logs - Paper →
analyze_paper - Threat report →
analyze_threat_report - Product feedback →
analyze_product_feedback - Sales call →
analyze_sales_call
Content Creation:
- PRD →
create_prd - Design document →
create_design_document - User story →
create_user_story - Visualization →
create_visualization,create_mermaid_visualization,create_markmap_visualization - Essay →
write_essay - Report finding →
create_report_finding - Newsletter entry →
create_newsletter_entry
Improvement:
- Writing →
improve_writing - Academic writing →
improve_academic_writing - Prompt →
improve_prompt - Report finding →
improve_report_finding - Code →
review_code
Rating/Evaluation:
- AI response →
rate_ai_response - Content quality →
rate_content - Value assessment →
rate_value - General judgment →
judge_output
2. Execute Pattern
# Basic format
fabric [input] -p [selected_pattern]
# From URL
fabric -u "URL" -p [pattern]
# From YouTube
fabric -y "YOUTUBE_URL" -p [pattern]
# From file
cat file.txt | fabric -p [pattern]
# Direct text
fabric "your text here" -p [pattern]
📚 Pattern Categories (242 Total)
Threat Modeling & Security (15 patterns)
create_threat_model- General threat modelingcreate_stride_threat_model- STRIDE methodologycreate_threat_scenarios- Threat scenario generationcreate_security_update- Security update documentationcreate_sigma_rules- SIGMA detection ruleswrite_nuclei_template_rule- Nuclei scanner templateswrite_semgrep_rule- Semgrep static analysis rulesanalyze_threat_report- Threat report analysisanalyze_threat_report_cmds- Extract commands from threat reportsanalyze_threat_report_trends- Identify threat trendst_threat_model_plans- Threat model for plansask_secure_by_design_questions- Secure by design questionscreate_network_threat_landscape- Network threat landscapeanalyze_incident- Incident analysisanalyze_risk- Risk analysis
Summarization (20 patterns)
summarize- General summarizationcreate_5_sentence_summary- Ultra-concise 5-line summarycreate_micro_summary- Micro summarycreate_summary- Detailed summarysummarize_micro- Micro summarizationsummarize_meeting- Meeting notes summarysummarize_paper- Academic paper summarysummarize_lecture- Lecture summarysummarize_newsletter- Newsletter summarysummarize_debate- Debate summarysummarize_legislation- Legislation summarysummarize_rpg_session- RPG session summarysummarize_board_meeting- Board meeting summarysummarize_git_changes- Git changes summarysummarize_git_diff- Git diff summarysummarize_pull-requests- PR summarysummarize_prompt- Prompt summaryyoutube_summary- YouTube video summarycreate_ul_summary- Unsupervised Learning summarycreate_cyber_summary- Cybersecurity summary
Extraction (30+ patterns)
extract_wisdom- General wisdom extractionextract_article_wisdom- Article-specific wisdomextract_book_ideas- Book ideasextract_insights- General insightsextract_insights_dm- Daniel Miessler style insightsextract_main_idea- Core messageextract_recommendations- Recommendationsextract_ideas- Ideas from contentextract_questions- Questions raisedextract_predictions- Predictions madeextract_controversial_ideas- Controversial pointsextract_business_ideas- Business opportunitiesextract_skills- Skills mentionedextract_patterns- Patterns identifiedextract_sponsors- Sponsor mentionsextract_references- References citedextract_instructions- Instructions from contentextract_jokes- Humor extractionextract_primary_problem- Main problemextract_primary_solution- Main solutionextract_product_features- Product featuresextract_core_message- Core messageextract_algorithm_update_recommendations- Algorithm recommendationsextract_extraordinary_claims- Extraordinary claimsextract_most_redeeming_thing- Most valuable aspect
Analysis (35+ patterns)
analyze_claims- Claim analysisanalyze_malware- Malware analysisanalyze_code- Code analysisanalyze_paper- Paper analysisanalyze_logs- Log analysisanalyze_debate- Debate analysisanalyze_incident- Incident analysisanalyze_comments- Comment analysisanalyze_answers- Answer analysisanalyze_email_headers- Email header analysisanalyze_military_strategy- Military strategyanalyze_mistakes- Mistake analysisanalyze_personality- Personality analysisanalyze_presentation- Presentation analysisanalyze_product_feedback- Product feedbackanalyze_proposition- Proposition analysisanalyze_prose- Prose analysisanalyze_risk- Risk analysisanalyze_sales_call- Sales call analysisanalyze_spiritual_text- Spiritual text analysisanalyze_tech_impact- Tech impact analysisanalyze_threat_report- Threat report analysisanalyze_bill- Legislation analysisanalyze_candidates- Candidate analysisanalyze_cfp_submission- CFP submission analysisanalyze_terraform_plan- Terraform plan analysisanalyze_interviewer_techniques- Interviewer technique analysis
Creation (50+ patterns)
create_prd- Product Requirements Documentcreate_design_document- Design documentationcreate_user_story- User storiescreate_coding_project- Coding projectcreate_coding_feature- Code featurescreate_mermaid_visualization- Mermaid diagramscreate_markmap_visualization- Markmap mindmapscreate_visualization- General visualizationscreate_threat_model- Threat modelscreate_stride_threat_model- STRIDE threat modelscreate_threat_scenarios- Threat scenarioscreate_report_finding- Report findingscreate_newsletter_entry- Newsletter contentcreate_keynote- Keynote presentationscreate_academic_paper- Academic paperscreate_flash_cards- Study flashcardscreate_quiz- Quizzescreate_graph_from_input- Graphscreate_tags- Content tagscreate_art_prompt- Art generation promptscreate_command- CLI commandscreate_pattern- Fabric patternscreate_logo- Logo designscreate_podcast_image- Podcast imagerycreate_sigma_rules- SIGMA rulescreate_video_chapters- Video chapterscreate_upgrade_pack- Upgrade documentation
Improvement (10 patterns)
improve_writing- General writing improvementimprove_academic_writing- Academic writingimprove_prompt- Prompt engineeringimprove_report_finding- Report findingsreview_code- Code reviewreview_design- Design reviewrefine_design_document- Design refinementhumanize- Humanize AI textenrich_blog_post- Blog enhancementclean_text- Text cleanup
Rating/Judgment (8 patterns)
rate_ai_response- Rate AI outputsrate_ai_result- Rate AI resultsrate_content- Rate content qualityrate_value- Rate value propositionjudge_output- General judgmentlabel_and_rate- Label and ratecheck_agreement- Agreement checkingarbiter-evaluate-quality- Quality evaluation
🔄 Updating Patterns
The Fabric repository is included in this skill at ${PAI_DIR}/skills/fabric/fabric-repo/.
To update patterns:
cd ${PAI_DIR}/skills/fabric/fabric-repo
git pull origin main
To see all available patterns:
ls ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/
# OR from your local Fabric install:
ls ~/.config/fabric/patterns/
💡 Usage Examples
Threat Modeling:
# User: "Create a threat model for our new API"
fabric "API that handles user authentication and payment processing" -p create_threat_model
Summarization:
# User: "Summarize this blog post"
fabric -u "https://example.com/blog-post" -p summarize
# User: "Give me a 5-sentence summary"
fabric -u "https://example.com/article" -p create_5_sentence_summary
Wisdom Extraction:
# User: "Extract wisdom from this video"
fabric -y "https://youtube.com/watch?v=..." -p extract_wisdom
# User: "What are the main ideas?"
fabric -u "URL" -p extract_main_idea
Analysis:
# User: "Analyze this code for issues"
fabric "$(cat code.py)" -p analyze_code
# User: "Analyze these security claims"
fabric "security claims text" -p analyze_claims
🎯 Pattern Selection Decision Matrix
| User Request Contains | Likely Intent | Recommended Patterns |
|---|---|---|
| "threat model" | Security modeling | create_threat_model, create_stride_threat_model |
| "summarize", "summary" | Summarization | summarize, create_5_sentence_summary |
| "extract wisdom", "insights" | Wisdom extraction | extract_wisdom, extract_insights |
| "analyze [X]" | Analysis | analyze_[X] (match X to pattern) |
| "improve", "enhance" | Improvement | improve_writing, improve_prompt |
| "create [visualization]" | Visualization | create_mermaid_visualization, create_markmap_visualization |
| "rate", "judge", "evaluate" | Rating | rate_content, judge_output |
| "main idea", "core message" | Core extraction | extract_main_idea, extract_core_message |
🚀 Advanced Usage
Pipe content through Fabric:
cat article.txt | fabric -p extract_wisdom
pbpaste | fabric -p summarize
curl -s "https://..." | fabric -p analyze_claims
Process YouTube videos:
# Fabric handles download + transcription + processing
fabric -y "https://youtube.com/watch?v=..." -p youtube_summary
Chain patterns (manual):
# Extract then summarize
fabric -u "URL" -p extract_wisdom > wisdom.txt
cat wisdom.txt | fabric -p create_5_sentence_summary
📖 Supplementary Resources
Full Pattern List: ls ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/
Fabric Repo: ${PAI_DIR}/skills/fabric/fabric-repo/
Fabric Documentation: https://github.com/danielmiessler/fabric
Pattern Templates: See ${PAI_DIR}/skills/fabric/fabric-repo/data/patterns/official_pattern_template/
🔑 Key Insight
The skill's value is in selecting the RIGHT pattern for the task.
When user says "Create a threat model using Fabric", your job is to:
- Recognize "threat model" intent
- Know available options:
create_threat_model,create_stride_threat_model,create_threat_scenarios - Select the best match (usually
create_threat_modelunless STRIDE specified) - Execute:
fabric "[content]" -p create_threat_model
Not: "Here are the patterns, pick one"
Instead: "I'll use create_threat_model for this" → execute immediately
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ffuf-web-fuzzing
Expert guidance for ffuf web fuzzing during penetration testing, including authenticated fuzzing with raw requests, auto-calibration, and result analysis
PAI
Personal AI Infrastructure (PAI) - PAI System Template MUST BE USED proactively for all user requests. USE PROACTIVELY to ensure complete context availability. === CORE IDENTITY (Always Active) === Your Name: [CUSTOMIZE - e.g., Kai, Nova, Atlas] Your Role: [CUSTOMIZE - e.g., User's AI assistant and future friend] Personality: [CUSTOMIZE - e.g., Friendly, professional, resilient to user frustration. Be snarky back when the mistake is user's, not yours.] Operating Environment: Personal AI infrastructure built around Claude Code with Skills-based context management Message to AI: [CUSTOMIZE - Add personal message about interaction style, handling frustration, etc.] === ESSENTIAL CONTACTS (Always Available) === - [Primary Contact Name] [Relationship]: email@example.com - [Secondary Contact] [Relationship]: email@example.com - [Third Contact] [Relationship]: email@example.com Full contact list in SKILL.md extended section below === CORE STACK PREFERENCES (Always Active) === - Primary Language: [e.g., TypeScript, Python, Rust] - Package managers: [e.g., bun for JS/TS, uv for Python] - Analysis vs Action: If asked to analyze, do analysis only - don't change things unless explicitly asked - Scratchpad: Use ~/.claude/scratchpad/ with timestamps for test/random tasks === CRITICAL SECURITY (Always Active) === - NEVER COMMIT FROM WRONG DIRECTORY - Run `git remote -v` BEFORE every commit - `~/.claude/` CONTAINS EXTREMELY SENSITIVE PRIVATE DATA - NEVER commit to public repos - CHECK THREE TIMES before git add/commit from any directory - [ADD YOUR SPECIFIC WARNINGS - e.g., iCloud directory, company repos, etc.] === RESPONSE FORMAT (Always Use) === Use this structured format for every response: 📋 SUMMARY: Brief overview of request and accomplishment 🔍 ANALYSIS: Key findings and context ⚡ ACTIONS: Steps taken with tools used ✅ RESULTS: Outcomes and changes made - SHOW ACTUAL OUTPUT CONTENT 📊 STATUS: Current state after completion ➡️ NEXT: Recommended follow-up actions 🎯 COMPLETED: [Task description in 12 words - NOT "Completed X"] 🗣️ CUSTOM COMPLETED: [Voice-optimized response under 8 words] === PAI/KAI SYSTEM ARCHITECTURE === This description provides: core identity + essential contacts + stack preferences + critical security + response format (always in system prompt). Full context loaded from SKILL.md for comprehensive tasks, including: - Complete contact list and social media accounts - Voice IDs for agent routing (if using ElevenLabs) - Extended security procedures and infrastructure caution - Detailed scratchpad instructions === CONTEXT LOADING STRATEGY === - Tier 1 (Always On): This description in system prompt (~1500-2000 tokens) - essentials immediately available - Tier 2 (On Demand): Read SKILL.md for full context - comprehensive details === WHEN TO LOAD FULL CONTEXT === Load SKILL.md for: Complex multi-faceted tasks, need complete contact list, voice routing for agents, extended security procedures, or explicit comprehensive PAI context requests. === DATE AWARENESS === Always use today's actual date from the date command (YEAR MONTH DAY HOURS MINUTES SECONDS PST), not training data cutoff date.
prompting
Prompt engineering standards and context engineering principles for AI agents based on Anthropic best practices. Covers clarity, structure, progressive discovery, and optimization for signal-to-noise ratio.
always-init
Universal task initializer that automatically loads PAI context for all user requests. Ensures complete context availability (contacts, preferences, protocols) before responding to any task. (project, gitignored)
create-skill
Guide for creating new skills in Kai's personal AI infrastructure. Use when user wants to create, update, or structure a new skill that extends capabilities with specialized knowledge, workflows, or tool integrations. Follows both Anthropic skill standards and PAI-specific patterns.
alex-hormozi-pitch
Create irresistible offers and pitches using Alex Hormozi's methodology from $100M Offers. Guides through value equation, guarantee frameworks, pricing psychology, and creating offers "too good not to take" for any product or service.
Didn't find tool you were looking for?