fabric
About
Fabric is an intelligent pattern selection system for the Fabric CLI that automatically chooses from 242+ specialized prompts based on your intent. It handles tasks like threat modeling, analysis, summarization, content creation, and text transformation. Use this skill when processing content, analyzing data, creating summaries, or performing text-based operations.
Quick Install
Claude Code
Recommended/plugin add https://github.com/danielmiessler/PAIPlugingit clone https://github.com/danielmiessler/PAIPlugin.git ~/.claude/skills/fabricCopy and paste this command in Claude Code to install this skill
Documentation
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
GitHub Repository
Related Skills
sglang
MetaSGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.
Algorithmic Art Generation
MetaThis skill helps developers create algorithmic art using p5.js, focusing on generative art, computational aesthetics, and interactive visualizations. It automatically activates for topics like "generative art" or "p5.js visualization" and guides you through creating unique algorithms with features like seeded randomness, flow fields, and particle systems. Use it when you need to build reproducible, code-driven artistic patterns.
llamaindex
MetaLlamaIndex is a data framework for building RAG-powered LLM applications, specializing in document ingestion, indexing, and querying. It provides key features like vector indices, query engines, and agents, and supports over 300 data connectors. Use it for document Q&A, chatbots, and knowledge retrieval when building data-centric applications.
csv-data-summarizer
MetaThis skill automatically analyzes CSV files to generate comprehensive statistical summaries and visualizations using Python's pandas and matplotlib/seaborn. It should be triggered whenever a user uploads or references CSV data without prompting for analysis preferences. The tool provides immediate insights into data structure, quality, and patterns through automated analysis and visualization.
