Claude Code Plugins

Community-maintained marketplace

Feedback

Comprehensive guidance for understanding, designing, and implementing expert systems using rule-based inference, knowledge representation, and the complete development lifecycle. Use when users need help with expert system concepts, architecture design, rule-based reasoning (forward/backward chaining), knowledge acquisition, development planning, or implementation strategies.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name expert-systems
description Comprehensive guidance for understanding, designing, and implementing expert systems using rule-based inference, knowledge representation, and the complete development lifecycle. Use when users need help with expert system concepts, architecture design, rule-based reasoning (forward/backward chaining), knowledge acquisition, development planning, or implementation strategies.
license MIT

Expert Systems Skill

Purpose

This skill provides comprehensive knowledge and guidance for working with expert systems - AI programs that emulate human expert decision-making in specific domains. The skill covers theoretical foundations, practical implementation strategies, and the complete development lifecycle for rule-based expert systems.

When to Use This Skill

Use this skill when users need assistance with:

  • Understanding Expert Systems: Explaining concepts, components, architecture, and types of expert systems
  • Design and Architecture: Designing knowledge bases, selecting inference strategies, planning system structure
  • Rule-Based Reasoning: Implementing forward chaining (data-driven) or backward chaining (goal-driven) inference
  • Knowledge Acquisition: Extracting and structuring knowledge from domain experts
  • Development Planning: Following the expert system development lifecycle from initialization to maintenance
  • Implementation Guidance: Choosing tools, representation methods, and development strategies
  • Troubleshooting: Addressing common challenges like the knowledge acquisition bottleneck or knowledge conflicts
  • Best Practices: Applying proven patterns for rule design, testing, and validation

Core Expert System Concepts

Components

Every expert system consists of these key components:

  1. Knowledge Base: Repository of domain-specific facts, rules, and heuristics
  2. Inference Engine: Reasoning mechanism that applies rules to derive conclusions
  3. Working Memory: Temporary storage for case-specific facts during problem-solving
  4. User Interface: Bridge for user interaction and query input
  5. Explanation System: Justifies reasoning process and conclusions
  6. Knowledge Acquisition Module: Facility for updating and maintaining knowledge

Inference Strategies

Forward Chaining (Data-Driven):

  • Start with known facts → apply rules → generate new facts → reach conclusion
  • Best for: Planning, monitoring, control, situations with rich initial data
  • Process: Match rules with satisfied conditions → resolve conflicts → fire rule → add consequences to working memory → repeat

Backward Chaining (Goal-Driven):

  • Start with goal to prove → find supporting rules → recursively prove sub-goals → reach facts
  • Best for: Diagnosis, queries, theorem proving, specific goal verification
  • Process: Find rules concluding goal → check conditions → set unsatisfied conditions as sub-goals → recurse

Decision Guide:

Use Forward Chaining When:
✓ Rich initial data available
✓ Need all possible conclusions
✓ Building planning/monitoring systems
✓ Reactive to incoming data
✓ Multiple goals to achieve

Use Backward Chaining When:
✓ Specific goal clearly defined
✓ Single answer needed
✓ Building diagnostic systems
✓ Query-answering application
✓ Minimize unnecessary computation

Knowledge Representation

Production Rules (Most Common)

Format: IF <conditions> THEN <conclusions/actions>

Simple Rule:

IF temperature > 100.4
THEN patient_has_fever = true

Complex Rule:

IF patient_has_fever = true
AND white_blood_cell_count > 11000
AND chest_xray_shows_infiltrate = true
THEN diagnosis = pneumonia (CF: 0.85)
AND recommend_action = "prescribe_antibiotics"

Best Practices:

  • Keep rules simple (one conclusion per rule when possible)
  • Avoid contradictions between rules
  • Use meaningful variable and rule names
  • Document reasoning behind each rule
  • Test all paths through rule base
  • Maintain consistency through regular reviews

Certainty Factors

Handle uncertainty using certainty factors (CF) ranging from -1.0 to +1.0:

  • +1.0: Definitely true
  • +0.8: Probably true
  • +0.5: Moderately supportive
  • 0.0: Unknown
  • -0.5: Moderately contradictory
  • -1.0: Definitely false

Combining Evidence:

  • CF(A AND B) = min(CF(A), CF(B))
  • CF(A OR B) = max(CF(A), CF(B))
  • Multiple rules for same conclusion: CF_combined = CF1 + CF2 × (1 - CF1)

Development Lifecycle

Six-Phase Process

Phase I: Project Initialization

  • Define problem and assess suitability for expert system approach
  • Conduct feasibility study (technical, economic, operational, legal)
  • Perform cost-benefit analysis and ROI calculation
  • Organize development team (project manager, knowledge engineers, domain experts, developers)
  • Establish project timeline and risk management plan

Phase II: System Analysis and Design

  • Create conceptual design (scope, domain mapping, interaction model)
  • Select development strategy (build from scratch, use shell, hire consultant)
  • Identify knowledge sources (primary: domain experts; secondary: documentation)
  • Plan computing resources (hardware, software, integration requirements)
  • Complete system architecture design

Phase III: Rapid Prototyping

  • Build minimal viable prototype with core functionality
  • Select representative problem subset (3-5 cases, core rules only)
  • Test with domain experts and real cases
  • Analyze and improve based on feedback
  • Validate approach before full development

Phase IV: System Development

  • Complete knowledge base through systematic acquisition
  • Use multiple elicitation techniques (interviews, observation, case analysis)
  • Implement comprehensive testing (unit, integration, system, acceptance)
  • Refine and optimize based on test results
  • Plan integration with existing systems

Phase V: Implementation

  • Conduct user acceptance testing (UAT)
  • Execute comprehensive training program (end users, administrators, support staff)
  • Deploy using appropriate strategy (pilot, parallel operation, or phased replacement)
  • Ensure security measures and complete all documentation
  • Establish support processes

Phase VI: Post-Implementation

  • Perform ongoing maintenance (corrective, adaptive, perfective, preventive)
  • Monitor performance metrics (usage, accuracy, performance, business impact)
  • Conduct regular knowledge base reviews and updates
  • Plan and execute upgrades and evolution
  • Implement continuous improvement cycle

Knowledge Acquisition

Elicitation Techniques

1. Interview Methods

  • Unstructured: Open-ended exploration, building domain understanding
  • Structured: Systematic gathering of specific knowledge with prepared questions
  • Protocol Analysis (Think-Aloud): Expert verbalizes thought process while solving problems

2. Observation Techniques

  • Direct Observation: Watch expert in natural work environment
  • Apprenticeship: Knowledge engineer learns by doing alongside expert

3. Case-Based Methods

  • Case Analysis: Extract knowledge from specific solved problems
  • Critical Incident Technique: Focus on memorable/challenging cases

4. Document Analysis

  • Extract from textbooks, manuals, research papers, procedures, guidelines
  • Cross-reference with expert knowledge to validate and expand

5. Machine Learning Approaches

  • Decision tree induction (ID3, C4.5, CART)
  • Rule learning algorithms
  • Pattern discovery from historical data

Common Challenges and Solutions

Knowledge Acquisition Bottleneck:

  • Problem: Extracting knowledge from experts is difficult and time-consuming
  • Solutions: Use multiple elicitation techniques, build rapport, provide structure, iterate frequently

Knowledge Conflicts:

  • Problem: Different experts provide conflicting knowledge
  • Solutions: Clarify terminology, consult evidence, build consensus, represent multiple viewpoints, weight by expertise

Incomplete Knowledge:

  • Problem: Knowledge base has gaps or missing cases
  • Solutions: Systematic test case generation, expert review for completeness, iterative gap filling, regular updates

Knowledge Maintenance:

  • Problem: Knowledge becomes outdated
  • Solutions: Schedule regular reviews, monitor performance, track domain changes, version control, continuous improvement

Using This Skill

Available Resources

References (Comprehensive Documentation):

  1. 01-expert-systems-overview.md

    • Detailed overview of expert systems, history, components, architecture
    • Types of expert systems and their applications
    • Advantages, disadvantages, and when to use expert systems
    • Load when: Users need foundational understanding or comprehensive overview
  2. 02-rule-based-systems-and-inference.md

    • Complete coverage of forward and backward chaining algorithms
    • Rule structure, terminology, and examples
    • Implementation details and best practices
    • Comparison matrices and decision guides
    • Load when: Users need to implement inference mechanisms or understand reasoning strategies
  3. 03-expert-system-development-lifecycle.md

    • Detailed breakdown of all six development phases
    • Templates, checklists, and process flows for each phase
    • Project management considerations and success factors
    • Common pitfalls and how to avoid them
    • Load when: Users are planning or executing an expert system project
  4. 04-knowledge-acquisition-and-representation.md

    • Comprehensive guide to knowledge elicitation techniques
    • Knowledge representation methods and their trade-offs
    • Knowledge validation strategies
    • Handling challenges in knowledge acquisition
    • Load when: Users need to extract knowledge from experts or choose representation methods
  5. README.md

    • Quick reference guide with key concepts and patterns
    • Summary of all major topics with examples
    • Decision matrices and common rule patterns
    • Use cases and application domains
    • Load when: Users need quick reference or high-level overview

Assets:

  1. reasoning-flow.drawio
    • Comprehensive flowchart showing both forward and backward chaining processes
    • Visual representation of inference engine operation
    • Decision points and state transitions
    • Use when: Users need visual understanding of inference mechanisms or want to see reasoning flow

Workflow for Common Tasks

Designing an Expert System:

  1. Read 01-expert-systems-overview.md to understand components and architecture
  2. Review 02-rule-based-systems-and-inference.md to select inference strategy
  3. Consult 03-expert-system-development-lifecycle.md Phase I and II for planning
  4. Use assets/reasoning-flow.drawio to visualize system operation

Implementing Inference Engine:

  1. Review 02-rule-based-systems-and-inference.md for algorithm details
  2. Study examples and implementation patterns
  3. Reference assets/reasoning-flow.drawio for process flow
  4. Apply best practices from documentation

Knowledge Acquisition Project:

  1. Read 04-knowledge-acquisition-and-representation.md for techniques
  2. Follow guidance in 03-expert-system-development-lifecycle.md Phase IV
  3. Use recommended interview and observation methods
  4. Apply validation strategies from documentation

Troubleshooting Development Issues:

  1. Consult common challenges sections in reference documents
  2. Review best practices and pitfalls in lifecycle documentation
  3. Apply solutions from similar documented cases

Quick Reference Patterns

Common Rule Patterns:

# Diagnostic Rule
IF symptom_A AND symptom_B AND test_result_C
THEN diagnosis = disease_X (CF: 0.85)

# Classification Rule
IF attribute_1 > threshold_1 AND attribute_2 = value_2
THEN category = class_A

# Procedural Rule
IF condition_met AND step_N_complete
THEN execute_step_N+1 AND mark_step_N+1_complete

# Recommendation Rule
IF situation_A AND constraint_B
THEN recommend_action_X WITH confidence_Y

Forward vs Backward Decision Matrix:

Criterion Forward Chaining Backward Chaining
Starting Point Known facts Desired goal
Direction Data → Conclusion Goal → Supporting facts
Search Strategy Breadth-first Depth-first
Best For Planning, monitoring, control Diagnosis, queries, verification
Efficiency Good for multiple conclusions Good for single specific goal
Memory Usage Higher (stores intermediate facts) Lower (focused search)

Response Guidelines

When responding to user queries about expert systems:

  1. Assess Scope: Determine which aspects of expert systems the user needs help with
  2. Load Relevant References: Read appropriate reference documents for detailed information
  3. Provide Context: Explain concepts clearly with examples and visual aids when helpful
  4. Reference Sources: Mention which reference documents contain more detailed information
  5. Use Diagrams: Reference the reasoning flow diagram when explaining inference mechanisms
  6. Apply Best Practices: Incorporate proven patterns and avoid common pitfalls
  7. Be Practical: Provide actionable guidance with concrete examples
  8. Address Challenges: Proactively mention potential issues and solutions
  9. Suggest Next Steps: Guide users on how to proceed with their specific task

Example Use Cases

Medical Diagnosis System:

  • Use backward chaining (goal: determine diagnosis)
  • Knowledge sources: Medical experts, clinical guidelines, research papers
  • Rules with certainty factors for probabilistic reasoning
  • Explanation system critical for medical decisions

Financial Risk Assessment:

  • Use forward chaining (rich initial data: credit history, financial records)
  • Structured rules for credit scoring
  • Integration with existing databases
  • Compliance with regulatory requirements

Equipment Troubleshooting:

  • Use backward chaining (goal: identify fault)
  • Procedural rules guiding diagnostic steps
  • User interface for non-expert users
  • Case-based learning from past repairs

Manufacturing Quality Control:

  • Use forward chaining (monitoring sensor data)
  • Real-time inference for process control
  • Rules for defect classification
  • Integration with manufacturing systems

Success Factors

Critical factors for expert system success:

  1. Management Support: Executive sponsorship, adequate resources, realistic expectations
  2. Expert Engagement: Available and committed experts, quality knowledge capture, ongoing validation
  3. User Adoption: Proper training, clear value proposition, usability focus, support infrastructure
  4. Technical Excellence: Appropriate technology choices, solid architecture, thorough testing
  5. Knowledge Quality: Accurate and complete, well-organized, properly validated, regularly updated

Limitations

Be aware of expert system limitations:

  • Limited to programmed knowledge (cannot apply common sense)
  • Requires regular maintenance as knowledge evolves
  • Knowledge acquisition is time-consuming and challenging
  • Brittleness outside defined problem domain
  • Computational cost with large rule sets
  • Explanation limited to programmed rules

Additional Notes

  • Always validate expert system outputs with domain experts before production use
  • Consider hybrid approaches combining expert systems with machine learning for complex problems
  • Document all knowledge sources and maintain version control
  • Plan for ongoing maintenance and knowledge updates from the start
  • Consider ethical implications and liability issues, especially in critical domains (medical, financial, safety)
  • Ensure appropriate use of AI and maintain human oversight for high-stakes decisions

This skill provides comprehensive coverage of expert systems to support users in understanding, designing, implementing, and maintaining rule-based expert systems across various domains.