← Back to Skills

fabric

danielmiessler
Updated Yesterday
56 views
14
1
14
View on GitHub
Metaautomationdata

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 CommandRecommended
/plugin add https://github.com/danielmiessler/PAIPlugin
Git CloneAlternative
git clone https://github.com/danielmiessler/PAIPlugin.git ~/.claude/skills/fabric

Copy 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_model or create_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_summary or summarize_micro
  • Meeting β†’ summarize_meeting
  • Paper/research β†’ summarize_paper
  • Video/YouTube β†’ youtube_summary
  • Newsletter β†’ summarize_newsletter
  • Code changes β†’ summarize_git_changes or summarize_git_diff

Wisdom Extraction:

  • General wisdom β†’ extract_wisdom
  • Article wisdom β†’ extract_article_wisdom
  • Book ideas β†’ extract_book_ideas
  • Insights β†’ extract_insights or extract_insights_dm
  • Main idea β†’ extract_main_idea
  • Recommendations β†’ extract_recommendations
  • Controversial ideas β†’ extract_controversial_ideas

Analysis:

  • Malware β†’ analyze_malware
  • Code β†’ analyze_code or review_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 modeling
  • create_stride_threat_model - STRIDE methodology
  • create_threat_scenarios - Threat scenario generation
  • create_security_update - Security update documentation
  • create_sigma_rules - SIGMA detection rules
  • write_nuclei_template_rule - Nuclei scanner templates
  • write_semgrep_rule - Semgrep static analysis rules
  • analyze_threat_report - Threat report analysis
  • analyze_threat_report_cmds - Extract commands from threat reports
  • analyze_threat_report_trends - Identify threat trends
  • t_threat_model_plans - Threat model for plans
  • ask_secure_by_design_questions - Secure by design questions
  • create_network_threat_landscape - Network threat landscape
  • analyze_incident - Incident analysis
  • analyze_risk - Risk analysis

Summarization (20 patterns)

  • summarize - General summarization
  • create_5_sentence_summary - Ultra-concise 5-line summary
  • create_micro_summary - Micro summary
  • create_summary - Detailed summary
  • summarize_micro - Micro summarization
  • summarize_meeting - Meeting notes summary
  • summarize_paper - Academic paper summary
  • summarize_lecture - Lecture summary
  • summarize_newsletter - Newsletter summary
  • summarize_debate - Debate summary
  • summarize_legislation - Legislation summary
  • summarize_rpg_session - RPG session summary
  • summarize_board_meeting - Board meeting summary
  • summarize_git_changes - Git changes summary
  • summarize_git_diff - Git diff summary
  • summarize_pull-requests - PR summary
  • summarize_prompt - Prompt summary
  • youtube_summary - YouTube video summary
  • create_ul_summary - Unsupervised Learning summary
  • create_cyber_summary - Cybersecurity summary

Extraction (30+ patterns)

  • extract_wisdom - General wisdom extraction
  • extract_article_wisdom - Article-specific wisdom
  • extract_book_ideas - Book ideas
  • extract_insights - General insights
  • extract_insights_dm - Daniel Miessler style insights
  • extract_main_idea - Core message
  • extract_recommendations - Recommendations
  • extract_ideas - Ideas from content
  • extract_questions - Questions raised
  • extract_predictions - Predictions made
  • extract_controversial_ideas - Controversial points
  • extract_business_ideas - Business opportunities
  • extract_skills - Skills mentioned
  • extract_patterns - Patterns identified
  • extract_sponsors - Sponsor mentions
  • extract_references - References cited
  • extract_instructions - Instructions from content
  • extract_jokes - Humor extraction
  • extract_primary_problem - Main problem
  • extract_primary_solution - Main solution
  • extract_product_features - Product features
  • extract_core_message - Core message
  • extract_algorithm_update_recommendations - Algorithm recommendations
  • extract_extraordinary_claims - Extraordinary claims
  • extract_most_redeeming_thing - Most valuable aspect

Analysis (35+ patterns)

  • analyze_claims - Claim analysis
  • analyze_malware - Malware analysis
  • analyze_code - Code analysis
  • analyze_paper - Paper analysis
  • analyze_logs - Log analysis
  • analyze_debate - Debate analysis
  • analyze_incident - Incident analysis
  • analyze_comments - Comment analysis
  • analyze_answers - Answer analysis
  • analyze_email_headers - Email header analysis
  • analyze_military_strategy - Military strategy
  • analyze_mistakes - Mistake analysis
  • analyze_personality - Personality analysis
  • analyze_presentation - Presentation analysis
  • analyze_product_feedback - Product feedback
  • analyze_proposition - Proposition analysis
  • analyze_prose - Prose analysis
  • analyze_risk - Risk analysis
  • analyze_sales_call - Sales call analysis
  • analyze_spiritual_text - Spiritual text analysis
  • analyze_tech_impact - Tech impact analysis
  • analyze_threat_report - Threat report analysis
  • analyze_bill - Legislation analysis
  • analyze_candidates - Candidate analysis
  • analyze_cfp_submission - CFP submission analysis
  • analyze_terraform_plan - Terraform plan analysis
  • analyze_interviewer_techniques - Interviewer technique analysis

Creation (50+ patterns)

  • create_prd - Product Requirements Document
  • create_design_document - Design documentation
  • create_user_story - User stories
  • create_coding_project - Coding project
  • create_coding_feature - Code features
  • create_mermaid_visualization - Mermaid diagrams
  • create_markmap_visualization - Markmap mindmaps
  • create_visualization - General visualizations
  • create_threat_model - Threat models
  • create_stride_threat_model - STRIDE threat models
  • create_threat_scenarios - Threat scenarios
  • create_report_finding - Report findings
  • create_newsletter_entry - Newsletter content
  • create_keynote - Keynote presentations
  • create_academic_paper - Academic papers
  • create_flash_cards - Study flashcards
  • create_quiz - Quizzes
  • create_graph_from_input - Graphs
  • create_tags - Content tags
  • create_art_prompt - Art generation prompts
  • create_command - CLI commands
  • create_pattern - Fabric patterns
  • create_logo - Logo designs
  • create_podcast_image - Podcast imagery
  • create_sigma_rules - SIGMA rules
  • create_video_chapters - Video chapters
  • create_upgrade_pack - Upgrade documentation

Improvement (10 patterns)

  • improve_writing - General writing improvement
  • improve_academic_writing - Academic writing
  • improve_prompt - Prompt engineering
  • improve_report_finding - Report findings
  • review_code - Code review
  • review_design - Design review
  • refine_design_document - Design refinement
  • humanize - Humanize AI text
  • enrich_blog_post - Blog enhancement
  • clean_text - Text cleanup

Rating/Judgment (8 patterns)

  • rate_ai_response - Rate AI outputs
  • rate_ai_result - Rate AI results
  • rate_content - Rate content quality
  • rate_value - Rate value proposition
  • judge_output - General judgment
  • label_and_rate - Label and rate
  • check_agreement - Agreement checking
  • arbiter-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 ContainsLikely IntentRecommended Patterns
"threat model"Security modelingcreate_threat_model, create_stride_threat_model
"summarize", "summary"Summarizationsummarize, create_5_sentence_summary
"extract wisdom", "insights"Wisdom extractionextract_wisdom, extract_insights
"analyze [X]"Analysisanalyze_[X] (match X to pattern)
"improve", "enhance"Improvementimprove_writing, improve_prompt
"create [visualization]"Visualizationcreate_mermaid_visualization, create_markmap_visualization
"rate", "judge", "evaluate"Ratingrate_content, judge_output
"main idea", "core message"Core extractionextract_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:

  1. Recognize "threat model" intent
  2. Know available options: create_threat_model, create_stride_threat_model, create_threat_scenarios
  3. Select the best match (usually create_threat_model unless STRIDE specified)
  4. 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

danielmiessler/PAIPlugin
Path: skills/fabric

Related Skills

sglang

Meta

SGLang 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.

View skill

Algorithmic Art Generation

Meta

This 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.

View skill

llamaindex

Meta

LlamaIndex 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.

View skill

csv-data-summarizer

Meta

This 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.

View skill