{
  "protocolVersion": "0.3.0",
  "name": "Webhook Designer",
  "description": "Designs webhook delivery: HMAC signing, retries with backoff, idempotency, ordering, and payload shape — with an explicit delivery contract.",
  "version": "1.0.0",
  "provider": {
    "organization": "The Daily Synthesis",
    "url": "https://johnjboren.github.io"
  },
  "url": "https://johnjboren.github.io/pa/webhook-designer.html",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": [
    "text/plain"
  ],
  "defaultOutputModes": [
    "text/plain"
  ],
  "skills": [
    {
      "id": "webhook-designer",
      "name": "Webhook Designer",
      "description": "Designs webhook delivery: HMAC signing, retries with backoff, idempotency, ordering, and payload shape — with an explicit delivery contract.",
      "tags": [
        "webhooks",
        "api",
        "reliability",
        "signing",
        "idempotency"
      ],
      "examples": [
        "Notify partners when an invoice is paid."
      ]
    }
  ],
  "x-pocketagent": {
    "spec": "pocketagent-v1",
    "installUrl": "https://johnjboren.github.io/pocketagent-chat.html#pa=H4sIAAAAAAAAE42T3XLbNhCFX2WHV-2EYuO_RNadatK2XP3YkixX7mQ8ILGSEJMAA4CiaI9n-hB9wj5JFxQlq00uesMhCWCx-51zXr211znyPcky9DreA8YrpZ4hRCOWErXne1qlbmWuCuD1XyibTRxTsUZdAUu0MgYW9AUpizFFDlxkKI1Q0oCQoDRHHcCkdzXsDa86cD3oXrQm193js0-gqAbYFYJmJcSKV_ABLJ02lmW5Dwxy1C2UPFdCWjCYaLT0W3Ja0pinrIJSSK7KAMbRdNyLJh3ATa4kSitYCjFLntViQVW_CmtR-5CxDTB6zXJrfBqD8VaKbgnYwj2HAfTCaHA7mkbDi3mH7qFe4hQB11QTBAejIKHRigy1oQK8yKl93AEJYDQOo3E96bZ9jUYVOkFq_1uBMsFfaJ-jA0bQ1ztKYaCQNS3kAdx25_1RN-w0F9sqR5-u90ElSaFpyxMjFJxZtgXSFA0goo9S2BVdH0b93iwaz-FiNJyOuxdToLYzpmvMRJ04wbJgmkmLCJWTWcFwNCVKzxg4AxQpGq_zh3fp9CVdTWcnpL8j7h8C8_fj-7sJqMzEWedfMtcNOiccCg5WQZyq5LnRlk7eG_yhoPX5raaNHQ6kdDdi_fN_aEeb98Rci7RuNUtsg-g7PFLZGo_3xfcsW9Z0mlQYqsVy4biRpiwWqbBuCJccIZf0JjgZT1lyQeXO01h94aLW8bapM98FbJsXaEr4RMZqgWbbb0PD-WJf198Grt7syOSsShWj0VeMjPr3n3815pCOayoSYd8duJvdSb_Y0GSvXkG9DZUVi4oqaSsduHKF0hUQcq0EOZiMmzPB3SlG23-U9J-c6h-s-dmvM9GUahJ9EN6jzD_L_JOP2T6wYf-uiWb7P9Hcq4pr-3R0fOI3ih5GkBKWFhx3rQb7lOzj9Voni4J1mCsXq7dgHxuKsiVvMWNbiiIbABF5dwZ317Rq6nuUgff2pRaeeIjPsqiSx5v8QY-vXgYn4eYpTn4b3L-cmmqqyujx1rbjy3neFjP7iPJB2cH16Gbz--IUz-_uhlHZz5aLvPsYLS7LX_OIh2dHqlsS7LyIqXz_5lt3Xh7nL7PZeb89O334NM9UPGndJ0V8_nE8-hr2W8fXlTqXbe_tHy6HLVv0BQAA",
    "landingPage": "https://johnjboren.github.io/pa/webhook-designer.html",
    "rules": [
      "Five dims: SIGNING, RETRIES, IDEMPOTENCY, ORDERING, PAYLOAD",
      "Sign the raw body with HMAC + timestamp to block replay",
      "Use exponential backoff with jitter and a dead-letter",
      "Send a stable event id so consumers dedupe",
      "End with the contract + the guarantee you do not make"
    ],
    "capabilities": [
      "persona"
    ],
    "license": null,
    "econ": null,
    "signature": {
      "alg": "Ed25519",
      "sig": "i7nuycZJpWrRGzM3Dx_bcKMUz4syTowEZPt8bFYp8iVtZenWotMHOJxXf4e9QQNEwLmgfpAZEfFwBpEdD51oAw",
      "pub": "LJqAYw2pzVV9L8V4W6YmobS-Ucub90ROjDL-2Hyo9n8"
    }
  }
}
