{
  "protocolVersion": "0.3.0",
  "name": "Bundle Size Advisor",
  "description": "Finds the heaviest dependencies in a bundle and proposes lighter swaps, lazy-loading, and tree-shaking fixes — all quantified in gzipped KB.",
  "version": "1.0.0",
  "provider": {
    "organization": "The Daily Synthesis",
    "url": "https://johnjboren.github.io"
  },
  "url": "https://johnjboren.github.io/pa/bundle-size-advisor.html",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": [
    "text/plain"
  ],
  "defaultOutputModes": [
    "text/plain"
  ],
  "skills": [
    {
      "id": "bundle-size-advisor",
      "name": "Bundle Size Advisor",
      "description": "Finds the heaviest dependencies in a bundle and proposes lighter swaps, lazy-loading, and tree-shaking fixes — all quantified in gzipped KB.",
      "tags": [
        "bundle",
        "performance",
        "webpack",
        "tree-shaking",
        "frontend"
      ],
      "examples": [
        "Bundle pulls moment, lodash, and a full chart lib on the home route."
      ]
    }
  ],
  "x-pocketagent": {
    "spec": "pocketagent-v1",
    "installUrl": "https://johnjboren.github.io/pocketagent-chat.html#pa=H4sIAAAAAAAAE3VU3VLbOhB-lR3fNg4001KSi86YkpRAWgJOA2mnF7K1jkUUyUiyg8PAnIc4T3ie5KxsCDmdOVcga_dbfT-bx6AKBu87gWJrDAbBSam4RIjFFiHilbDaBJ3AaOkvF7oEZwRbIpzHkLSlGxTL3AFLjbYWMl0akCxBiRysw8KCUKANR9OFs2E0X8DpcBoPQArrwOUIThegswwVlVhIalhuRVFQ98UJbITLmyJb2gJTR19TVlrsQnwTeZTC6EJbBEZ49Ao0gPelqJhE5aCgI8cC3nkoyyrkXZhEPxcD8GRhrXkp0dIDINUcQ1tI4eipwGu6F2ko1oU2DhLMheI0wujSoS8Qiiax1AmtujC7Hg7D-Cy6GA4gk2wJCTMG5QHHjJXSQYtigRGGFTQHiWxKH1zOCFzqdAU2Zyuhll0YUlFDmsHschZNYBjPxt-i2fAU4mg-_v41JqIKvabEqZClbeTR9CnNmVp6OYFryISxruud8xSDwa9g5I1pDBns-dBphew0unT2uFDrVcmUE1kNWKGpQThc-7lv9lDN1GBGKivmRIUHhWQu02YN0XRsQVMb8VC48S54f1VaU8_Ii_SizkEr1k6kRhO6Q_rjDJIprTLUtpPm_4R517ImXysMfncCx5YN8zanhEB58K9jKvWnDSYFS1f03x-DMqPJX8U9Bgk7Ib0NhX9EIWjVzpFVAq17o0UnLw173Qnv9Us07S6ZdsMK26Hl2Nah1IzTtE5TuT-fODxQzz9__Q1MSrhvPRCk93-k99ZmD8TuMSjftrYopbTEf03pp0GaM5u3IxhkdOczQoGWIqHEtFSots21R2QEtb-jLRI8fzq8OHnFg-feB39qoZ7f9-hut45tQ_iZM4dhpuzBWDkJ4dHHt_7wcxsWCD3O60K2aH8sHr3R0q8KvTt8GbO_ay9Fjw9PoLR7DVR3F4fn3mHf94x8KAaN7A3lZlQ3eCJ3rVgS49X1eL0QSXG7mk7FyFxOH75PY5FsT3v3cn18xs_7Pyerq_QmH-u4Ojmvt9XwgvP55M7a-vaTSI7m17NycpdkI51e_fgSJvXX2y8bn7cyIfjJ-X202PSK7XzenxzPP9wcLdY6icMfaZn0D68v704nYe-s1n11HDz9C81kzsSOBQAA",
    "landingPage": "https://johnjboren.github.io/pa/bundle-size-advisor.html",
    "rules": [
      "Four steps: HEAVY DEPS, SWAPS, LAZY, TREE-SHAKE",
      "Quantify every item in gzipped KB",
      "Prefer native/platform APIs over a new dependency",
      "Flag default/barrel imports that defeat tree-shaking",
      "End with TOTAL ESTIMATED SAVINGS + first move"
    ],
    "capabilities": [
      "persona"
    ],
    "license": null,
    "econ": null,
    "signature": {
      "alg": "Ed25519",
      "sig": "kRImYibpXkPPiFrOPxNPSibzD2qlm8HdJ9ZLkQcWhIoSvBJyzvEKddVLjssyX7ib6VRTuLjbfFocQUC-byGXCw",
      "pub": "LJqAYw2pzVV9L8V4W6YmobS-Ucub90ROjDL-2Hyo9n8"
    }
  }
}
