{
  "name": "postman — 1 hook",
  "slug": "source-hooks-1c0790a24ae8dc3364b1e5f0",
  "type": "hooks",
  "category": "developer-tools",
  "example": false,
  "evidence_state": "pinned_source_listing",
  "stamp": "Pinned source listing — machine-checked",
  "summary": "Pinned source declarations and file hashes were listed.",
  "outcome": "Listed 1 hook declaration. Ran 146 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
  "rule_results": [
    "The retained source tree matches its acquisition manifest.",
    "Declared hook names (listing.json): SessionStart"
  ],
  "task": "What declarations and files are present in this pinned source?",
  "setup": "Git blob acquisition followed by static source inspection.",
  "limitations": "Scope: acquisition and static inspection. Command results: commands.json.",
  "source_url": "https://github.com/postmanlabs/postman-plugin.git",
  "documentation_url": "https://github.com/postmanlabs/postman-plugin.git",
  "commit": "c6352ef5605cd46d3f817e15c601eeb9a56c08f7",
  "tree_sha256": "7181b0e0f1bedd90a6814eb3417ed8b8dee7ed721c479d108cea4391ba212314",
  "file_sha256": {
    ".app.json": "0ac92f6677c3b7bef2a899a34c70551193f49aa9e98f96f1379432828f3adbb7",
    ".claude/hooks/validate-manifests.js": "c10631428b5281583b2a6f451613769f85a9dac32c1d142939f48d945025ad06",
    ".claude/skills/add-marketplace/SKILL.md": "52a96072ce4829fbf57cd217fcf76f213a941d27a662dfe0e4d9c268024c3460",
    ".claude/skills/add-marketplace/references/hooks.md": "ad518204e47c1ee7f3bbac055d7fd6719e38a062eea58cb0a2c5747c1d9cb523",
    ".claude/skills/add-marketplace/references/validation.md": "dfaed54b3b91834d61304696349b06ad925136c1b2112d65b969dad52491c4e1",
    ".claude/skills/add-marketplace/references/vendor-formats.md": "eea7e1e807db5571c69a54a8e3f95dd6cfcea77bdf7b72cce4df56efac781514",
    ".claude/skills/add-marketplace/scripts/check-hooks.sh": "406e359f0ed96bef0fe270c70209963efddde2c6928e1c8c2d1b8e55e4ba609d",
    ".claude/skills/release-installer/SKILL.md": "5c38bc7fb7c7d968ec201fd8d944d8c6d8c737108fe163faebd7962fffb63d32",
    ".claude/skills/release-installer/scripts/release.mjs": "4345ec077b02a5609f0d4f31f16b034ac6487c9819649106d3d8d1abcb0c0310",
    ".claude-plugin/marketplace.json": "148df699147f217c5cf65f2302df234019a4af50145d453937aecc7204cbbf74",
    ".claude-plugin/plugin.json": "8900d9e19119ed512e6a9718c23b99f7ecc1fc4cc7377ac260186a87977a8af5",
    ".codex-plugin/plugin.json": "cc08dc3ac56038a3984c7cd6b3fc4861fbfdf2444ca8810325a3f6dd7dafd674",
    ".cursor-plugin/plugin.json": "c23b4c767a2ae69d52f064ddd6adbae6aa125e77fcdd2ad523690eda7ee0ad7a",
    ".factory-plugin/marketplace.json": "b40aa4e90f0f53c26ac9327edf675ce2121f6462f5380c930f8e8801d095d0d9",
    ".factory-plugin/plugin.json": "8d9c487175324eca87463880a287b61d62efedc5a166b2a9b17f706567bd15a6",
    ".gitattributes": "bed202cfd2150a22b082295b14c274710339db59fc62d9d1fe785d6ab6bccc3c",
    ".github/CODEOWNERS": "1c65822c0dd5c15926d47cf9b8007cb5f54192239d854b32f425a0ea89b6f6fb",
    ".github/workflows/installer-smoke.yml": "e494083e63b31477169cad5026da93876c7a6bb33d14a7fd8e190d968a065761",
    ".github/workflows/release.yml": "001d8e417e2f5cb17b6097f1078e1c002cce1ecdb35bfbe071613e632e1b6aa7",
    ".github/workflows/validate.yml": "4beaab80e132d60255f89d4e70f2f3b8aab6e2578a5caa5d290406460fad56a5",
    ".gitignore": "2e4c172e53fb9b7d669dd8501613305731a06140da23f7a6bac665ba63cb67fa",
    ".kimi-plugin/plugin.json": "13c4f7afbe2ecb0a49749635d1792090d37e6a88b807f83cfca87fde00fab128",
    ".kimi-plugin/session-start-context.md": "0b606fed0f3fa4108a3d02a5e0cd806cac7486aaaef12326babc60cfa1043119",
    ".opencode/plugins/postman.ts": "ac5323ae58f5167c33d507bca148ca83f5f7a37578993b5b1e8f993923b75886",
    "AGENTS.md": "cb7c68c6275fe98b6dbd1ea51f70763f3790d24a1a29cd1d4d2278dbdc2ee1e7",
    "CONTRIBUTING.md": "5e022e4ec0d72e216c3c3cf6b9fd92a590cde0f5f1320cd96f284293d1840100",
    "LICENSE": "b00154f4b51dcde01661cb16fb254786e4ca8f1af0883928db66eb1c9ebefa44",
    "README.md": "33c2742e16a16e9c2a4ab9091a6bda4ef373d0fff512e186328cd1972ba5f691",
    "hooks/codex-hooks.json": "bcba002ef1e84a4c38eb786caaf63948660165fdec3a0600e68037c5909ee48d",
    "hooks/hooks.json": "857867e05befca5319fcf7292fd4d33111353c827bdf24e03553a0ef1552a3c9",
    "hooks/session-start": "63fcc9548395be63f5f1d196f42b1e95620c2e5852fbf15bcea0ca2b95930447",
    "hooks/session-start-context.md": "314de1d4edc669a28ff11ffff96d1aff5470971c2ca80b414d1f37a42d2d7f27",
    "hooks/session-start.cmd": "890912ccf1c4939f403a734fffaa6fb2b84c7d07ce0bb1692a45d5568ba4f6ac",
    "installer/package-lock.json": "07ca27bf5ec201b1d0b5c65d2368d1f60159ca3c5ad5325322b94ad38a9b2ade",
    "installer/package.json": "bc43c9b1098aef0540b9f6a1bef538f80d6117199416148586df323c544d2b64",
    "installer/scripts/pack-repo-files.js": "37ba49b7f25bf9c9a524304a368045d9dcd9637182f2416e8985ff24269d53c1",
    "installer/scripts/pi-harness.js": "2392cf5d82896a54baa90f44bdc0eabd4d22f69f214c3cd8e40122ae17814a60",
    "installer/scripts/smoke-check.js": "6173b18d5ec370ef3aef18ae4fe8063f848e9047539c764b1eff74196329abf1",
    "installer/src/cli.ts": "69d70862ca4f932f7e158daabe876b2d58b3b76f920919f630c5ad4b9c214480",
    "installer/src/hosts/claude-code.ts": "f7ab009a9c68e827f6179fa4479e8a3182f5f5474724a31387c5926dd05a829a",
    "installer/src/hosts/codex.ts": "07ee13572d2d0918458509edab753f16e8e0161735aba4a2962a2f0b985fb98b",
    "installer/src/hosts/cursor.ts": "05dcce931cd829cabfa8c2bb7ee615e29e4d70a11218d5f2d6248020191efcc8",
    "installer/src/hosts/factory.ts": "997a87eafc130adb6ddb5615d0eb5f7bc81be98a462922cb04c0297f78ee7934",
    "installer/src/hosts/index.ts": "c07a0271f92f130d6a3e429bdaa05a98aaac9fa1e0830d9cd46a79facbc1e911",
    "installer/src/hosts/kimi.ts": "e2a59d2857c53f97776183f8b227b3c9c13958d617270746391c38672dd7a2fb",
    "installer/src/hosts/opencode-config.ts": "dab7ba9ee74cc6b9a1e8bbf428154c64815a922a41b0c4bdda2e1c8844b27f49",
    "installer/src/hosts/opencode.ts": "c09134f3531d8aad64da979c37826eec7c1a787198409449341d874f25a38ac5",
    "installer/src/hosts/pi.ts": "ebdfc721e4fc26ac88714da6102be21cec0b9e28753a04ee47c3a92ba56444ee",
    "installer/src/hosts/shared.ts": "049d677e086bca73cec9528dfb7341fb47856c6076ebc18aa1d93c22f80d5617",
    "installer/src/hosts/types.ts": "53b74df8ab2a034fcbb9c1d3ef0364986e3917eff600bd2949372f86b0dae99e",
    "installer/src/pi-extension.ts": "4802f7d234e39dede721f37858a1d2d0869fe6d16ba4e479cd645b6ee2d8ed8d",
    "installer/src/run.ts": "fcf385f4939f27fff5d5c3053d89176c98d35fd99f9e0825e3f2bb9b3614287b",
    "installer/src/source.ts": "2a482dd15786e9bcb7835c847dda80206dfa40313345fc82502c52aa79c70022",
    "installer/src/system.ts": "2a4f4fd0bf3539327b08f19166c05e3c94ee565e00bbf372d1f6603ec8457281",
    "installer/test/claude-code.test.js": "fdcf362a2b3683884a0be8c6d8d1adb7b9f968566785f5e5e7929d90333954e1",
    "installer/test/cli.test.js": "9711a7d5fc6188256f0de2e37b9c83cb35a3d02b52a38e8f5266cb483d137e77",
    "installer/test/codex.test.js": "c1ab6e02ad865ff314f5c78e07d3f52e560dcaec7ba422e18be7b04d0ba08201",
    "installer/test/cursor.test.js": "fd65c70fde642c2f52d08969943d399daecd5607d083ef4d529e7e67a55269e7",
    "installer/test/factory.test.js": "e91fa32b8ff7e87a39b0772e610f37ef1bbfda9c7c2b087d1a6dd2c710cd44e6",
    "installer/test/fake-system.js": "74c122a0ddcdaf748367c36a6e18a4ef451d3a69fc030e4cf26c3bb8a6423f6c",
    "installer/test/kimi.test.js": "d7cb41871ec70579715477f64e1fcc30ced6d74e9c5b4095fbfd86cecb079eaa",
    "installer/test/opencode-config.test.js": "1fc23acd6482cf54b50ab98fec80da6620242b51e576c1be437ad637b7159d3b",
    "installer/test/opencode.test.js": "531763da5c2f5680bba34983bab660c93cfac7efc74f34b13783530f22e3b823",
    "installer/test/pack-repo-files.test.js": "538dbbb868cf4968432f97e210c281ba9d17c0834614b882749ad520d41ed806",
    "installer/test/pi-extension.test.js": "c9a87f2f55d37d07522ff24508cfa1f4910570a60887ab2944bf5708e4aafc07",
    "installer/test/pi-package.test.js": "286e15b8827b1c3c125b09b768256577d4375f74c386a64924cc9fef9b2a3a02",
    "installer/test/pi.test.js": "f548568eeed3bbfc16ac78888d11eb515ff175728bf2e49fc17fdf68b4dcc89b",
    "installer/test/routes.test.js": "386c224cc9a1dc88cc2a52b478943e52be20bea6029f26b8e67efe76a13e7c0f",
    "installer/test/run.test.js": "fca78b3060be31e3c1c5098e7edd4413d0adda9452a04eff212f2b6fa0f16328",
    "installer/test/session-start-hook.test.js": "386cb9ac0ff36a302b3028763035d443055ae5f4200253c67e032c52b5d319e3",
    "installer/test/source.test.js": "bcaf1d36e298e62de55864855d82b450aab0bf9e626d091aa615620454b0a311",
    "installer/test/system.test.js": "0326ce31445cb3b6908b1709e1ddb9a2ad395fe9a166bd17664a0d7310d76ddb",
    "installer/tsconfig.json": "62814c1ef25f6feec8ea08ec9de9705fc708373ba87250ec720f64c86b6af52a",
    "intent.md": "50b94e8cd2c1f7cc418e0985071ee4a4d96d4506188cd46e7263204b35b5caa4",
    "manifest.json": "2cf5cb320a13ce51eaf9e1f55d83a78a0d918274d1cae36129d07b325cd40c53",
    "mcp.claude-code.json": "7efe7b5ac250f950ea36a2e179103eb75a3bdc95dd235aaa8fcd471dce579d1f",
    "mcp.codex.json": "8f0ed229703978ac980879f30041187b1e64eb5cdb136d9fb5a78397f57c96db",
    "mcp.cursor.json": "33d10db578f04bfb78b8e715f42ddaa602932e6404f4eb472960aede435af9e4",
    "mcp.json": "607f3ee8bfc37921f1ccb29234f8d047a9baeb322b38fc1b8a6d2219d9c8c196",
    "mcp.opencode.json": "08c8cd38e4e118f501c182de8f5a23a689bab7c974e7c8609c41b5ec020d2e4c",
    "mcp.pi.json": "daa21ce3f36fbfdc1b53333150ce4cdef68e2e6c5cdabb698a23610fb2c1ed62",
    "opencode/README.md": "9316c6e24fb5782a83ab1e19487fcb901475b6d8147eace30322a980dad0573e",
    "opencode/evals/cases.json": "759038e22abb278737fb744202412624bcb97ef27d74d65af5ce0bdb16cb6880",
    "opencode/package-lock.json": "2c2ae4bd16b3bac4d3fc7fe92e768273a5cab2ff25e25aaced955a74e57ae590",
    "opencode/package.json": "375ea7e10e3c625cdd467cd98f033efe2d424e4360232cc554cb0ed320d00b79",
    "opencode/scripts/eval-skills.js": "4cd07400829e8c5d2727227753c7620b92ccd490dc74de1786e8c95b9199c252",
    "opencode/scripts/lib/opencode-executable.js": "d42d42733e979eb17a47f84eb86914e3d5e88eaa90dd94ad3c98bdc39b2d32b9",
    "opencode/scripts/test-harness.js": "0dd7b157f20df8fcc733d81fa0d03326b7c1175d3027e04c3e0732c54a480f0f",
    "opencode/scripts/test-plugin-add.js": "1b83555e8f467d0db000460eef7e1bd85162fba36f2dfe4346f626ff87417303",
    "opencode/src/index.ts": "4720d17a3a5627bf5b00ddec85de0e7d51fe636eca7b35db1da19da2ae4c1d41",
    "opencode/test/plugin.test.js": "849c96f67ffb1168814d750dc16cf2feae29e4bb37b36606d524dafced0c636d",
    "opencode/tsconfig.json": "d30981ea41a52829f5c4b403a2c14f80069b40eb9a8a701cc73eeb3f666e8531",
    "package.json": "c7f41e26527eacc9b28b717e15c2f870366b956fe839e7dc018cdb91a8546e77",
    "scripts/build-manifest.js": "1df679d9763d33e19c940b5e9dc29b7d8bce13378f979be565b954f8ad82494f",
    "scripts/check-json.js": "3acb15d8f811af4b11466d670cd2bdf323fc5085bce1e205d4fbe3f2b303c84a",
    "scripts/claude-code-harness.js": "cdda0b66629f999a68924fceb4303ca49266937a57091593cecb14b79010bfbb",
    "scripts/codex-harness.js": "1fe2fafff2f30933de0d21206041aa23af5d72a8a3f7a0a4c769d687913205ba",
    "scripts/cursor-harness.js": "fed89507890846fdc4de3de489e04f7709adb9221207a195f08a309217a1e608",
    "scripts/factory-harness.js": "c9aa3b9b7e1d7bf87407df1fa06520b8b189d239fb29cf9e7cca6b980a3ad049",
    "scripts/kimi-harness.js": "d2e197ae43f021a16538b6bffb2b147d6b052b226679b17d78dcc3ce65b63967",
    "scripts/lib/cli.js": "71f865a6930d95cf8b1dc6192865ab34c48d805881a45bf3322f5b0d09e4568d",
    "scripts/lib/harness.js": "4ae453b5e32a5bf5d5fb9da070bd0b1bd0545fa760a354b233dbc1a7c4359fed",
    "scripts/routes.js": "67febc4b2ec98c84bcc21e7864081cd788ebe7b9a49b8b8b1fe8a59d6d1b9c5f",
    "skills/ai-readiness/SKILL.md": "ac93e38506048982897f70d47db53165759922dc050e8d8b51e54678ef208d25",
    "skills/api-discovery/SKILL.md": "c9d5257a4642b278cbd7f0b4f5c796da4bfde0b956ca93d96aaf4ef99a939f22",
    "skills/api-discovery/reference/orbit.md": "792c6c96db431afb508435e60c1f957cbb6a629320b7b61c26a8f78d477844dc",
    "skills/api-documentation/SKILL.md": "4f01faa4a8b4acfc6e3d397a7063df3905e8f174bd740ab56300b30b51053c81",
    "skills/api-documentation/reference/rest-api-best-practices.md": "af4f5bb2ec4f7ece778c3f9bf47743b3a3c7959ae19152b6f04b91587122a3c5",
    "skills/api-engineer/SKILL.md": "75ed7762347903bbfa7e4591a6219a0ae830761c5f2735fa7dd5e585656555f0",
    "skills/api-mocking/SKILL.md": "362b01f46a8524e26e1c23e5f7298d44ecd3b30561b75c1e832d3d858e7093c4",
    "skills/api-monitoring/SKILL.md": "fe63b4d1015cede7b1fd242375ff3a179a8c405eb5af50770fa37e0aa6513085",
    "skills/api-simulation/SKILL.md": "0b6dc3759d1b6ba18d5856013eb183aaae92ef15d7f2976eaaef6e7cbf308fad",
    "skills/api-simulation/reference/sim_yaml_schema.md": "f4b3c6961b8b1ef1178e4b959f74f4f63d8461492815cda0cc7adaf984f738c1",
    "skills/api-testing/SKILL.md": "66b2d915fa60833f597c31aa19899afb2acc13cf1cc3e3e1a3fe9cf0f4347c45",
    "skills/bootstrap/SKILL.md": "aad950c99302cc4360a503ae94243f17db06c3c9079b4d62d93c8ae8bbcf327d",
    "skills/bootstrap/reference/cli_installation.md": "1542ad092d0b5a301dde216f01bc406495bad248415e1957a7d7e3d5660f734b",
    "skills/ci-integration/SKILL.md": "8726a8e7225e40e77253a2bbd4aeb36001af964275a931abff16c8c155cbf50f",
    "skills/collection-schema-v3/SKILL.md": "95f2349ba42f46e8ea6fdb3b8f01297ddfea63817883fe859f9d213e23a10370",
    "skills/collection-schema-v3/reference/environment.md": "9b9fc2fe582596a9d2873476be63190a89042de2da30609cabb2c8ad0473f693",
    "skills/collection-schema-v3/reference/http.md": "9db348b1ca9c0e6eba70f3864210df92de5aba5d1c8a4e9a8cc794fb73997787",
    "skills/collection-schema-v3/reference/other_protocols.md": "c27c63240d8608016c1c54a9200e63ca6bac9d77acc71712c9697189e2f62d6a",
    "skills/datasets/SKILL.md": "0845b92bc9149af595ad16b7a1ca3f004295da893a9ecea16a8a7ee30177bac7",
    "skills/datasets/reference/spreadsheets.md": "c2a058263b3bfa12c453c11df9d24343d7274dbb338ed7ad99d9a82894f337f1",
    "skills/flows/SKILL.md": "8768eca644a26e8e79e65a1134e80d2bbc3a517cb55e8ea6e6a38bd2f111cf6a",
    "skills/flows/reference/flow_cli_flags.md": "aa75d1ad929351bc4ef37e96b2a1cfef80ec1cced0003242bd1129f00618e221",
    "skills/performance-testing/SKILL.md": "729acf6f497051a421768e469cc1ff558d255afb4f5c0b4b47d6b2137878278e",
    "skills/postman-mcp-server/SKILL.md": "2e306eb4bd705b27a64ba48358e97eb0e5220b057807d74a0f196a85411ff5c1",
    "skills/postman-mcp-server/references/docs.md": "2cc306e7de00fa9bec323059b8909132b3006e50ff1d6aad041e492abf86309b",
    "skills/postman-mcp-server/references/learn.md": "8c9ba33a56a35dbd11e44c762d476686017b6f666ae721bbc95a869cde1bae58",
    "skills/postman-mcp-server/references/mcp-limitations.md": "953620dd3367af85616d3b4daa46dbfaec27cfec360e58268d1af0617ab3212a",
    "skills/postman-mcp-server/references/mock.md": "68a3da1536218debc58d0efee1d0c675bf08d4fe26ed3ff39adb5cd44a00893a",
    "skills/postman-mcp-server/references/search.md": "7e090b75ec025daa9110bbddd3243b19049c3da16d930397d422d88c87355c02",
    "skills/postman-mcp-server/references/security.md": "4686052ba4902e80d7bc8d7aae2ad7bc132a3076e7f22b1f2f6d1f1ce99e2a4a",
    "skills/postman-mcp-server/references/setup.md": "8bda834d23ab125c3c556086972300d58b10f20c877a08e7b8236668f7bd6bf3",
    "skills/postman-mcp-server/references/sync.md": "427ffa5b02a888185e38c75efeece5e85c4418e2ebbfe45dfe937d3ee1ebd21e",
    "skills/postman-mcp-server/references/test.md": "b8a0996727d8990a95dd767d88c984fbd6cc1c63b9cc7ad6029a6f4d1d102d02",
    "skills/variables/SKILL.md": "b9d1c26d4d97bbfa7cf69d96c5d5f486c310c261daa05abc61e8369771e726b8",
    "skills/webhook-testing/SKILL.md": "29b77772909cae14ca852b080fa5e964fa6ec010650fa68f9487ef7ed76da53d",
    "skills/webhook-testing/reference/forwarding.md": "ab14ce650ea96b6ad2d41dcb82629048054db0a86ba599db124804adca0d1f14",
    "skills/webhook-testing/reference/outbound_webhooks.md": "3eaaf849da1ee7a38de09c2dc6303fef5c044f6ec6e0a6ffe6e9dedf3d99e4a3",
    "skills/webhook-testing/reference/webhook_scripts.md": "afc392d3e0573ef9f9b3061fe12b777eee2b8b93be7d660f4657ed251fc057b2"
  },
  "lockfiles": [
    "LOCK.json"
  ],
  "utc_date": "2026-10-19T12:16:15Z",
  "source_date": "2026-10-16",
  "discovered_date": "2026-10-16",
  "retested_date": "2026-10-19",
  "reviewed_date": "2026-10-19",
  "published_date": "2026-10-19",
  "modified_date": "2026-10-19",
  "reviewer": "machine pipeline",
  "harness_version": "toolwitness harness at commit bb5f6ab8ae7d288da61715b984ccaa78e6224577",
  "claude_code_version": "Not applicable: static source inspection (commands.json).",
  "model_id": "Not applicable: static source inspection (commands.json).",
  "scanner_version": "Not applicable: static source inspection.",
  "rulepack_version": "Not applicable: static source inspection.",
  "agents": [],
  "disclaimer": "This record lists declarations and file hashes from a pinned source tree. Git command results from acquisition and static inspection are retained in commands.json. Scope: acquisition and static inspection. It is not a security or quality verdict. Changed bytes are outside this record.",
  "commands": [
    "Ran 146 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection."
  ],
  "prompt_list": [
    "Not applicable: static source inspection (commands.json)."
  ],
  "history": [
    "2026-10-19T12:16:15Z: pinned source inspection"
  ],
  "application": {
    "name": "postman — 1 hook",
    "softwareVersion": "c6352ef5605cd46d3f817e15c601eeb9a56c08f7",
    "applicationCategory": "DeveloperApplication",
    "operatingSystem": "Not exercised"
  },
  "artifacts": {
    "transcript": "Ran 146 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
    "sinkhole_log": "Not applicable: static source inspection (commands.json).",
    "canary_log": "Not applicable: static source inspection (commands.json).",
    "scanner_output": "Not applicable: static source inspection (commands.json).",
    "normalized_text": "{\n  \"listing\": {\n    \"skills\": [\n      {\n        \"path\": \".claude/skills/add-marketplace/SKILL.md\",\n        \"name\": \"add-marketplace\",\n        \"description\": \"Add a new vendor plugin route (marketplace) to this repo - Windsurf, Zed, Copilot, Gemini CLI, or any other agent that can be pointed at a skills directory, whether it loads a plugin manifest, only a project config, or a package from a registry. Use when asked to add, wire up, or onboard a new marketplace, vendor, plugin route, or agent target. Covers the manifest or config, the MCP config, the session-start hook, the CI schema check, the installer adapter, and the README and CONTRIBUTING sections that do not update themselves.\",\n        \"files\": {\n          \".claude/skills/add-marketplace/SKILL.md\": \"52a96072ce4829fbf57cd217fcf76f213a941d27a662dfe0e4d9c268024c3460\",\n          \".claude/skills/add-marketplace/references/hooks.md\": \"ad518204e47c1ee7f3bbac055d7fd6719e38a062eea58cb0a2c5747c1d9cb523\",\n          \".claude/skills/add-marketplace/references/validation.md\": \"dfaed54b3b91834d61304696349b06ad925136c1b2112d65b969dad52491c4e1\",\n          \".claude/skills/add-marketplace/references/vendor-formats.md\": \"eea7e1e807db5571c69a54a8e3f95dd6cfcea77bdf7b72cce4df56efac781514\",\n          \".claude/skills/add-marketplace/scripts/check-hooks.sh\": \"406e359f0ed96bef0fe270c70209963efddde2c6928e1c8c2d1b8e55e4ba609d\"\n        }\n      },\n      {\n        \"path\": \".claude/skills/release-installer/SKILL.md\",\n        \"name\": \"release-installer\",\n        \"description\": \"Release @postman/postman-plugin, the npx installer and Pi package, to npm - a release candidate on the `next` dist-tag or a plain version on `latest`. Use when asked to cut, publish, tag or ship an installer release or rc, promote an rc to latest, resume a release in progress, or retry one that failed.\",\n        \"files\": {\n          \".claude/skills/release-installer/SKILL.md\": \"5c38bc7fb7c7d968ec201fd8d944d8c6d8c737108fe163faebd7962fffb63d32\",\n          \".claude/skills/release-installer/scripts/release.mjs\": \"4345ec077b02a5609f0d4f31f16b034ac6487c9819649106d3d8d1abcb0c0310\"\n        }\n      },\n      {\n        \"path\": \"skills/ai-readiness/SKILL.md\",\n        \"name\": \"ai-readiness\",\n        \"description\": \"Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; supports a separate CI readiness threshold. Use for requests such as \\\"is this API ready for agents\\\".\",\n        \"files\": {\n          \"skills/ai-readiness/SKILL.md\": \"ac93e38506048982897f70d47db53165759922dc050e8d8b51e54678ef208d25\"\n        }\n      },\n      {\n        \"path\": \"skills/api-discovery/SKILL.md\",\n        \"name\": \"api-discovery\",\n        \"description\": \"Use when finding an API or owner, integrating a public provider, locating Postman resources, or investigating consumers and change impact across services. Turns discovered contracts and mocks into reusable dependencies and identifies evidence outside the current checkout. Use for requests such as \\\"who consumes this endpoint\\\".\",\n        \"files\": {\n          \"skills/api-discovery/SKILL.md\": \"c9d5257a4642b278cbd7f0b4f5c796da4bfde0b956ca93d96aaf4ef99a939f22\",\n          \"skills/api-discovery/reference/orbit.md\": \"792c6c96db431afb508435e60c1f957cbb6a629320b7b61c26a8f78d477844dc\"\n        }\n      },\n      {\n        \"path\": \"skills/api-documentation/SKILL.md\",\n        \"name\": \"api-documentation\",\n        \"description\": \"Use when defining or improving an API contract, generating documentation from a collection or OpenAPI spec, publishing API docs, or sharing a documentation link. Makes auth, inputs, responses, and examples reusable by callers, tests, and mocks. Use for requests such as \\\"publish API docs\\\".\",\n        \"files\": {\n          \"skills/api-documentation/SKILL.md\": \"4f01faa4a8b4acfc6e3d397a7063df3905e8f174bd740ab56300b30b51053c81\",\n          \"skills/api-documentation/reference/rest-api-best-practices.md\": \"af4f5bb2ec4f7ece778c3f9bf47743b3a3c7959ae19152b6f04b91587122a3c5\"\n        }\n      },\n      {\n        \"path\": \"skills/api-engineer/SKILL.md\",\n        \"name\": \"api-engineer\",\n        \"description\": \"Use when designing, implementing, mocking, testing, monitoring, documenting, or deploying an API. Guides decisions using reusable local API contracts, tests, and mocks, plus organization-wide dependency context, and routes to the relevant Postman skills. Use for requests such as \\\"implement this endpoint\\\".\",\n        \"files\": {\n          \"skills/api-engineer/SKILL.md\": \"75ed7762347903bbfa7e4591a6219a0ae830761c5f2735fa7dd5e585656555f0\"\n        }\n      },\n      {\n        \"path\": \"skills/api-mocking/SKILL.md\",\n        \"name\": \"api-mocking\",\n        \"description\": \"Use when creating a stand-in backend from a collection or OpenAPI spec, testing failure scenarios, or sharing a Code Mock through a workspace and deployed URL. Keeps mock behavior reusable in the repository and distinguishes example replay from stateful behavior. Use for requests such as \\\"mock this backend\\\".\",\n        \"files\": {\n          \"skills/api-mocking/SKILL.md\": \"362b01f46a8524e26e1c23e5f7298d44ecd3b30561b75c1e832d3d858e7093c4\"\n        }\n      },\n      {\n        \"path\": \"skills/api-monitoring/SKILL.md\",\n        \"name\": \"api-monitoring\",\n        \"description\": \"Use when setting up recurring API checks, running or diagnosing a Postman Monitor, changing its schedule, or reaching private APIs through a self-hosted runner. Reuses collection assertions to detect live regressions and traces failures to individual run evidence. Use for requests such as \\\"check this API every minute\\\".\",\n        \"files\": {\n          \"skills/api-monitoring/SKILL.md\": \"fe63b4d1015cede7b1fd242375ff3a179a8c405eb5af50770fa37e0aa6513085\"\n        }\n      },\n      {\n        \"path\": \"skills/api-simulation/SKILL.md\",\n        \"name\": \"api-simulation\",\n        \"description\": \"Use when developing or testing a real service that calls other HTTP APIs. Composes reusable dependency mocks on one local port, verifies which upstream calls the service made, and exercises dependency failures without requiring every service to run. Use for requests such as \\\"run this service with mocked dependencies\\\".\",\n        \"files\": {\n          \"skills/api-simulation/SKILL.md\": \"0b6dc3759d1b6ba18d5856013eb183aaae92ef15d7f2976eaaef6e7cbf308fad\",\n          \"skills/api-simulation/reference/sim_yaml_schema.md\": \"f4b3c6961b8b1ef1178e4b959f74f4f63d8461492815cda0cc7adaf984f738c1\"\n        }\n      },\n      {\n        \"path\": \"skills/api-testing/SKILL.md\",\n        \"name\": \"api-testing\",\n        \"description\": \"Use when testing an endpoint, running collection assertions, or checking real application traffic against an API contract. Reuses saved requests and reports what live, mocked, or captured-traffic results actually establish. Use for requests such as \\\"test this endpoint\\\".\",\n        \"files\": {\n          \"skills/api-testing/SKILL.md\": \"66b2d915fa60833f597c31aa19899afb2acc13cf1cc3e3e1a3fe9cf0f4347c45\"\n        }\n      },\n      {\n        \"path\": \"skills/bootstrap/SKILL.md\",\n        \"name\": \"bootstrap\",\n        \"description\": \"Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as \\\"set up Postman for this repo\\\".\",\n        \"files\": {\n          \"skills/bootstrap/SKILL.md\": \"aad950c99302cc4360a503ae94243f17db06c3c9079b4d62d93c8ae8bbcf327d\",\n          \"skills/bootstrap/reference/cli_installation.md\": \"1542ad092d0b5a301dde216f01bc406495bad248415e1957a7d7e3d5660f734b\"\n        }\n      },\n      {\n        \"path\": \"skills/ci-integration/SKILL.md\",\n        \"name\": \"ci-integration\",\n        \"description\": \"Use when adding API tests, structural or governance lint, or AI-readiness gates to CI, or publishing reviewed API artifacts to a Postman workspace after merge. Makes contract checks repeatable and separates validation from shared workspace changes. Use for requests such as \\\"run this collection on every PR\\\".\",\n        \"files\": {\n          \"skills/ci-integration/SKILL.md\": \"8726a8e7225e40e77253a2bbd4aeb36001af964275a931abff16c8c155cbf50f\"\n        }\n      },\n      {\n        \"path\": \"skills/collection-schema-v3/SKILL.md\",\n        \"name\": \"collection-schema-v3\",\n        \"description\": \"Use when writing or debugging local Postman v3 collection and environment YAML, including collection lint failures. Preserves the per-entity files, inherited context, and schema shapes that make API changes reusable and reviewable in Git. Use for requests such as \\\"fix this request YAML\\\".\",\n        \"files\": {\n          \"skills/collection-schema-v3/SKILL.md\": \"95f2349ba42f46e8ea6fdb3b8f01297ddfea63817883fe859f9d213e23a10370\",\n          \"skills/collection-schema-v3/reference/environment.md\": \"9b9fc2fe582596a9d2873476be63190a89042de2da30609cabb2c8ad0473f693\",\n          \"skills/collection-schema-v3/reference/http.md\": \"9db348b1ca9c0e6eba70f3864210df92de5aba5d1c8a4e9a8cc794fb73997787\",\n          \"skills/collection-schema-v3/reference/other_protocols.md\": \"c27c63240d8608016c1c54a9200e63ca6bac9d77acc71712c9697189e2f62d6a\"\n        }\n      },\n      {\n        \"path\": \"skills/datasets/SKILL.md\",\n        \"name\": \"datasets\",\n        \"description\": \"Use when a collection needs queried or joined test inputs, a reusable named view, spreadsheet worksheet data, live database rows, or script access through pm.datasets(). Chooses between a simple iteration file and a dataset while preserving query semantics, portability, and credential boundaries. Use for requests such as \\\"run this collection over database rows\\\".\",\n        \"files\": {\n          \"skills/datasets/SKILL.md\": \"0845b92bc9149af595ad16b7a1ca3f004295da893a9ecea16a8a7ee30177bac7\",\n          \"skills/datasets/reference/spreadsheets.md\": \"c2a058263b3bfa12c453c11df9d24343d7274dbb338ed7ad99d9a82894f337f1\"\n        }\n      },\n      {\n        \"path\": \"skills/flows/SKILL.md\",\n        \"name\": \"flows\",\n        \"description\": \"Use when running, deploying, or debugging an existing Postman Flow. Distinguishes local graph execution from a deployed webhook, reuses named input scenarios, and follows a run to the failing block rather than treating an HTTP response as whole-flow success. Use for requests such as \\\"why did this flow fail\\\".\",\n        \"files\": {\n          \"skills/flows/SKILL.md\": \"8768eca644a26e8e79e65a1134e80d2bbc3a517cb55e8ea6e6a38bd2f111cf6a\",\n          \"skills/flows/reference/flow_cli_flags.md\": \"aa75d1ad929351bc4ef37e96b2a1cfef80ec1cced0003242bd1129f00618e221\"\n        }\n      },\n      {\n        \"path\": \"skills/performance-testing/SKILL.md\",\n        \"name\": \"performance-testing\",\n        \"description\": \"Use when load-testing or benchmarking an API with concurrent virtual users and latency or error thresholds. Reuses a collection to probe a chosen failure mode and distinguishes target limits from load-generator limits. Use for requests such as \\\"load test this API\\\".\",\n        \"files\": {\n          \"skills/performance-testing/SKILL.md\": \"729acf6f497051a421768e469cc1ff558d255afb4f5c0b4b47d6b2137878278e\"\n        }\n      },\n      {\n        \"path\": \"skills/postman-mcp-server/SKILL.md\",\n        \"name\": \"postman-mcp-server\",\n        \"description\": \"Use when working through Postman MCP tools to inspect or change workspace resources, choose a targeted operation, or handle MCP limitations. Supports hosted workflows when the CLI is unavailable and distinguishes tool completion from a usable result. Use for requests such as \\\"use Postman MCP to inspect this collection\\\".\",\n        \"files\": {\n          \"skills/postman-mcp-server/SKILL.md\": \"2e306eb4bd705b27a64ba48358e97eb0e5220b057807d74a0f196a85411ff5c1\",\n          \"skills/postman-mcp-server/references/docs.md\": \"2cc306e7de00fa9bec323059b8909132b3006e50ff1d6aad041e492abf86309b\",\n          \"skills/postman-mcp-server/references/learn.md\": \"8c9ba33a56a35dbd11e44c762d476686017b6f666ae721bbc95a869cde1bae58\",\n          \"skills/postman-mcp-server/references/mcp-limitations.md\": \"953620dd3367af85616d3b4daa46dbfaec27cfec360e58268d1af0617ab3212a\",\n          \"skills/postman-mcp-server/references/mock.md\": \"68a3da1536218debc58d0efee1d0c675bf08d4fe26ed3ff39adb5cd44a00893a\",\n          \"skills/postman-mcp-server/references/search.md\": \"7e090b75ec025daa9110bbddd3243b19049c3da16d930397d422d88c87355c02\",\n          \"skills/postman-mcp-server/references/security.md\": \"4686052ba4902e80d7bc8d7aae2ad7bc132a3076e7f22b1f2f6d1f1ce99e2a4a\",\n          \"skills/postman-mcp-server/references/setup.md\": \"8bda834d23ab125c3c556086972300d58b10f20c877a08e7b8236668f7bd6bf3\",\n          \"skills/postman-mcp-server/references/sync.md\": \"427ffa5b02a888185e38c75efeece5e85c4418e2ebbfe45dfe937d3ee1ebd21e\",\n          \"skills/postman-mcp-server/references/test.md\": \"b8a0996727d8990a95dd767d88c984fbd6cc1c63b9cc7ad6029a6f4d1d102d02\"\n        }\n      },\n      {\n        \"path\": \"skills/variables/SKILL.md\",\n        \"name\": \"variables\",\n        \"description\": \"Use when parameterizing requests across environments, choosing variable scopes, chaining values in scripts, or referencing credentials without committing or exposing them. Keeps one reusable collection while separating target configuration from secret values. Use for requests such as \\\"where should I put this API key\\\".\",\n        \"files\": {\n          \"skills/variables/SKILL.md\": \"b9d1c26d4d97bbfa7cf69d96c5d5f486c310c261daa05abc61e8369771e726b8\"\n        }\n      },\n      {\n        \"path\": \"skills/webhook-testing/SKILL.md\",\n        \"name\": \"webhook-testing\",\n        \"description\": \"Gives anything that sends webhooks — Stripe, GitHub, Slack, a payment processor, or your own API — a stable public URL that records every request and forwards it to a handler running locally, so you can see exactly what was sent, replay a delivery after a fix instead of re-triggering the sender, and assert on every delivery. Use when the user asks to \\\"test my webhook handler,\\\" \\\"get Stripe/GitHub webhooks to localhost,\\\" \\\"forward this webhook to my local server,\\\" \\\"see what the webhook actually sent,\\\" \\\"replay that event,\\\" \\\"verify the webhook signature,\\\" or \\\"check the webhooks our API sends,\\\" whether or not they mention Postman.\",\n        \"files\": {\n          \"skills/webhook-testing/SKILL.md\": \"29b77772909cae14ca852b080fa5e964fa6ec010650fa68f9487ef7ed76da53d\",\n          \"skills/webhook-testing/reference/forwarding.md\": \"ab14ce650ea96b6ad2d41dcb82629048054db0a86ba599db124804adca0d1f14\",\n          \"skills/webhook-testing/reference/outbound_webhooks.md\": \"3eaaf849da1ee7a38de09c2dc6303fef5c044f6ec6e0a6ffe6e9dedf3d99e4a3\",\n          \"skills/webhook-testing/reference/webhook_scripts.md\": \"afc392d3e0573ef9f9b3061fe12b777eee2b8b93be7d660f4657ed251fc057b2\"\n        }\n      }\n    ],\n    \"hooks\": [\n      {\n        \"path\": \"hooks/hooks.json\",\n        \"sha256\": \"857867e05befca5319fcf7292fd4d33111353c827bdf24e03553a0ef1552a3c9\",\n        \"event\": \"SessionStart\",\n        \"matcher\": \"startup|clear|compact\",\n        \"declaration\": {\n          \"type\": \"command\",\n          \"command\": \"\\\"${CLAUDE_PLUGIN_ROOT}/hooks/session-start\\\" \\\"${DROID_PLUGIN_ROOT}\\\"\",\n          \"shell\": \"bash\",\n          \"async\": false\n        },\n        \"executed\": false\n      }\n    ],\n    \"executions\": []\n  }\n}"
  },
  "review_input": {
    "identity_artifact": "identity.json",
    "evidence_sha256": {
      "LOCK.json": "942e9d44a22dff7bcc94ad62b2f8f65ec2cfd2d6348c445e58128a1f7bf15734",
      "commands.json": "9a33e920fccd5f92d36e78185053d68e04271e571ac42e6e65f0c38407d3903e",
      "complete.json": "91b504b43905fdc009504d516c45eea831f39a1995b9e7d69987c9756c936d6f",
      "identity.json": "f48ac77f6afc22075dfa0b3b3f6967417d47dfcca1a97037c5974b751dfbe33a",
      "listing.json": "a7ffbd26a9f956108490c161526207fbda9643bc90d29567fdf1643043e75c81",
      "selection.json": "41766fd4a9c6175d70545cb5ea218f02b12fe89c6528308986313c43799abc62"
    },
    "claims": [
      {
        "id": "acquired",
        "field": "summary",
        "text": "Pinned source declarations and file hashes were listed.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "listed",
        "field": "outcome",
        "text": "Listed 1 hook declaration. Ran 146 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "tree",
        "field": "rule_results.0",
        "text": "The retained source tree matches its acquisition manifest.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "declared",
        "field": "rule_results.1",
        "text": "Declared hook names (listing.json): SessionStart",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      }
    ]
  },
  "review": {
    "kind": "machine-checked",
    "date": "2026-10-19",
    "reviewed_sha256": "5650480cad2ea2ac0013c975f75b5dc4f471a1e82b2947d2d5f78bf5e58a8024",
    "gates": "58aa56231583b674ece544c084fe4f69cb71eb512dbfcdd6df408d52d2d5185c",
    "codex": "7699c63786c2c577022723df3960c2c80dac22af7d3ffc99f3236b66a62e8910",
    "grok": "14cc44a442747a839d30459711275ea8b66ef39faa8c9d7adeee8a014811058f",
    "summary": "Deterministic gates passed; every claim rebuilt from evidence with a reviewed template; Grok reported no standing refutation."
  }
}
