Agent Skills: shap-explainer

SHAP-based model explainability skill for feature attribution, summary plots, and interaction analysis.

UncategorizedID: a5c-ai/babysitter/shap-explainer

Install this agent skill to your local

pnpm dlx add-skill https://github.com/a5c-ai/babysitter/tree/HEAD/plugins/babysitter/skills/babysit/process/specializations/data-science-ml/skills/shap-explainer

Skill Files

Browse the full folder contents for shap-explainer.

Download Skill

Loading file tree…

plugins/babysitter/skills/babysit/process/specializations/data-science-ml/skills/shap-explainer/SKILL.md

Skill Metadata

Name
shap-explainer
Description
SHAP-based model explainability skill for feature attribution, summary plots, and interaction analysis.

shap-explainer

Overview

SHAP-based model explainability skill for feature attribution, summary plots, interaction analysis, and model interpretation.

Capabilities

  • TreeExplainer for tree-based models (XGBoost, LightGBM, Random Forest)
  • DeepExplainer for neural networks
  • KernelExplainer for model-agnostic explanations
  • Summary, dependence, and force plots
  • Interaction value computation
  • Cohort-based analysis
  • Waterfall and bar plots
  • Expected value analysis

Target Processes

  • Model Interpretability and Explainability Analysis
  • Model Evaluation and Validation Framework
  • A/B Testing Framework for ML Models

Tools and Libraries

  • SHAP
  • matplotlib
  • numpy

Input Schema

{
  "type": "object",
  "required": ["modelPath", "dataPath", "explainerType"],
  "properties": {
    "modelPath": {
      "type": "string",
      "description": "Path to the trained model"
    },
    "dataPath": {
      "type": "string",
      "description": "Path to data for explanation"
    },
    "explainerType": {
      "type": "string",
      "enum": ["tree", "deep", "kernel", "linear", "gradient"],
      "description": "Type of SHAP explainer to use"
    },
    "analysisConfig": {
      "type": "object",
      "properties": {
        "numSamples": { "type": "integer" },
        "backgroundSamples": { "type": "integer" },
        "featureNames": { "type": "array", "items": { "type": "string" } },
        "outputIndex": { "type": "integer" }
      }
    },
    "plotConfig": {
      "type": "object",
      "properties": {
        "plotTypes": {
          "type": "array",
          "items": { "type": "string", "enum": ["summary", "bar", "waterfall", "force", "dependence", "interaction"] }
        },
        "maxFeatures": { "type": "integer" },
        "outputDir": { "type": "string" }
      }
    }
  }
}

Output Schema

{
  "type": "object",
  "required": ["status", "shapValues"],
  "properties": {
    "status": {
      "type": "string",
      "enum": ["success", "error"]
    },
    "shapValues": {
      "type": "string",
      "description": "Path to SHAP values file"
    },
    "expectedValue": {
      "type": "number"
    },
    "featureImportance": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "feature": { "type": "string" },
          "importance": { "type": "number" },
          "rank": { "type": "integer" }
        }
      }
    },
    "plots": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "type": { "type": "string" },
          "path": { "type": "string" }
        }
      }
    },
    "interactions": {
      "type": "object",
      "description": "Top feature interactions"
    }
  }
}

Usage Example

{
  kind: 'skill',
  title: 'Generate SHAP explanations',
  skill: {
    name: 'shap-explainer',
    context: {
      modelPath: 'models/xgboost_model.pkl',
      dataPath: 'data/test.csv',
      explainerType: 'tree',
      analysisConfig: {
        numSamples: 1000,
        backgroundSamples: 100
      },
      plotConfig: {
        plotTypes: ['summary', 'bar', 'dependence'],
        maxFeatures: 20,
        outputDir: 'explanations/'
      }
    }
  }
}