{"_id":"@jeger-ai/opengantry","_rev":"32-d882a0fd4a48e5c55650b60c1b244a8b","name":"@jeger-ai/opengantry","dist-tags":{"latest":"3.5.0"},"versions":{"1.0.0":{"name":"@jeger-ai/opengantry","version":"1.0.0","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@1.0.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"c25de2cc04ac67df9d3bf125eaa1a36574dfa66b","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-1.0.0.tgz","fileCount":515,"integrity":"sha512-WRIktEC57+Ga+8xNuxvh1xngt1PgZ4nADMqhoRCpfRrpmsQ60d8CCTW895ToUDVZw7hNCmp+olCIeYu5LYgU5A==","signatures":[{"sig":"MEUCIH0YlHb8ILY5F1+3Vt3S49XAXo83WbpS/3tqiXj7QaUJAiEAkfbPSA3Mlt+rMLEKzohFwJLUjjXR5vkNcQGhYzIK+Zg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":867814},"type":"module","engines":{"node":">=24"},"gitHead":"b0f9e5138f85d73b9173a03d310bcb206bb42d1c","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"jer","email":"eger.juergen@gmail.com"},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_1.0.0_1780860891394_0.3342177351730642","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@jeger-ai/opengantry","version":"1.1.0","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@1.1.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"d8094eda2d314dafe8f598c72c5767d197167dc4","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-1.1.0.tgz","fileCount":529,"integrity":"sha512-LEMHWnrAkWt5mtC5YgsZ9xPQHl0elTLm5yIa5Lab8UWSwSI3qKo5sLCVMLebmgUcuZ3fDB+/WxqwG2TA5H4j/A==","signatures":[{"sig":"MEQCIGvJFhYIRd2dpobsdAHXklFjgYN67jPsyaOx4SvH1nBGAiA2TOYoq3mflZhVEYcVkcgUMiTitHWoBZPbezS0VMMJFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":915054},"type":"module","engines":{"node":">=24"},"gitHead":"64e8a1d01510d22f6a1fbe46215d4c703545fa2d","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"jer","email":"eger.juergen@gmail.com"},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_1.1.0_1780952613117_0.318401109423444","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@jeger-ai/opengantry","version":"1.1.1","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@1.1.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"719eb36b8d02eef502136e401bed2928623d4ddb","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-1.1.1.tgz","fileCount":569,"integrity":"sha512-cU5h9rGSP0DC7cRS9My0OSiSSZKGRiopY77pupBhj2Vn/6Kd0AncZhMialbN3EnDqKduYpeANLLM31BWskBTeQ==","signatures":[{"sig":"MEQCIF3/6Hvp/aRgvSrHg/XyyOxWVMmA+kbVeWrThsBWaqIPAiBqClndOeZ43Of5tN8na0+BlP8GW2uHXppDIuntkBc3wA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":940666},"type":"module","engines":{"node":">=24"},"gitHead":"7f7d0777e22e8e4e500cf4788726cb9c1ced3df2","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_1.1.1_1781121101065_0.1791196365563954","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@jeger-ai/opengantry","version":"1.1.2","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@1.1.2","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"5c03c45088acfae8d280dc1970023cbea0e02f07","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-1.1.2.tgz","fileCount":569,"integrity":"sha512-WjDiyxuSFwbk7jkgZq7dFlrzmrDT1EelrNUWjxueMsArHyt8ebLXJib4sgqmbN994SFmPvW8h80bjb0elO+Wxg==","signatures":[{"sig":"MEUCIQC1CK9qScpd4dN1jLT/BNG4OFs+Ro+C2nR+mEmuq6V6EQIgU0UJf/cmuk7hmkLrTtPEeYEZfxhBQE29O0XDBUhx6pA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":941163},"type":"module","engines":{"node":">=24"},"gitHead":"73ced1b177e089455f346abf1b5b366a9171c662","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_1.1.2_1781123564352_0.9020509668006409","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@jeger-ai/opengantry","version":"2.0.0","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.0.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"8455bb51c570a715980bc53bb43fc53b9f234a0c","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.0.0.tgz","fileCount":631,"integrity":"sha512-cRtyl5r7Ep7qeRzsEZ4er9MLGpC1yr+K0SA1Zh5ZxLgMirci4eOCA5eJFkJZF3d+BjN6OrCxkUJwhR93G1qNBg==","signatures":[{"sig":"MEUCIQC0DUev0eebClJwFQSmduRhYqZhB5VCc9IlIKZf5CIEcAIgE7TISHCU5HqTJ2Tm1Kl7CKU6MYhEeK6rfSNbkStgdHY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1074605},"type":"module","engines":{"node":">=24"},"gitHead":"214042ed96666ee34adec66892165da65304b79e","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.0.0_1781602590285_0.1293241385425985","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@jeger-ai/opengantry","version":"2.1.0","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.1.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"a474ef6fb18efff9d0497c2b2e95a03bbfc928a5","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.1.0.tgz","fileCount":528,"integrity":"sha512-Qkvv7dybHdTsq2WdxaAfVMImiaAcpQx0n0LBbwT0AWioPWZJPXphNOhJcPPp3i7oNTprBNt2SGJLNtvvShciAQ==","signatures":[{"sig":"MEYCIQCJUzHIqg3hgtxFBESPqDJAmK7CTd1vzArjph7OUS/BnQIhAPDO5/WOujJKcmlYqWCJMtZvYp8oWIIWKw3hWXpRjs6V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1153259},"type":"module","engines":{"node":">=24"},"gitHead":"bf3a9df8fe2913992bf8587281f9304253f69baf","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.1.0_1781791606304_0.010294795517291178","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@jeger-ai/opengantry","version":"2.2.0","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"35fe632a118a9c0bdefac78cf23201e82f6d41cd","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.0.tgz","fileCount":589,"integrity":"sha512-bEx2XRO9UBf/0EAd4lEWfGQUWEfEBwLArx2+mDJENN+JWyRSOFrjUVdaAcJoU1h9iiZM32EkCDaoBYL+FX3eqA==","signatures":[{"sig":"MEUCIQC8mcjw7WRKQ8T09M61P5XKjjZRsJJ+OXSTmIaSnRTrdQIgDaXdXQGWsJpDDrY3XrfgHmlqX8qQvEt420DCDuXKX7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1224031},"type":"module","engines":{"node":">=24"},"gitHead":"9950ff8eb5a0aac9bcfe54fa1dee300bfca700d1","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.0_1781898620674_0.8811555962167996","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@jeger-ai/opengantry","version":"2.2.1","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"a7b0acb8035d9f5f1967d7ead1edf872672045a3","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.1.tgz","fileCount":605,"integrity":"sha512-YaxgzR9rbxX0Kaa9l33L6oobOClCT4NYLD9WHmJhDVZnL07wURhJr4Ka6HCPLFCnSXGW98n7duG6TuxpsrfddA==","signatures":[{"sig":"MEYCIQCjl/Q1WBUdThx3pAIFLjplZiwU3PsCcnib8VdAwZ5iPwIhAJtjqBxrWjYolm6A5RvgpYH2f/nzuTpmQHejNHpfMEhM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1238776},"type":"module","engines":{"node":">=24"},"gitHead":"c6a378158c7c332672e3c56b553fe02ab2a2c02e","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.1_1781906731926_0.48912653778445137","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"@jeger-ai/opengantry","version":"2.2.2","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.2","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"8c0a10ce6520a8e43456b44f407bdec05228a02d","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.2.tgz","fileCount":605,"integrity":"sha512-YFOTIrpIlBW0C1GXmErtxdo7+UoFbOfaz18059uZtK1h7n6S/JmOi+J06zraggsRcO8OP/ycoiogvQ/rtM88Hg==","signatures":[{"sig":"MEUCIQCwkz9JhSJHe8PaM8kkfGGVRDkKoLbr69VHOLGAKD1r9QIgT6WOL8W8CIM5VAcpZzpf0xeoxacLqE6EZgNXGNcCYSY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1239396},"type":"module","engines":{"node":">=24"},"gitHead":"09ee93cd9972c9aa58bf14dd990da809690f1016","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.2_1782073578040_0.6298185630163067","host":"s3://npm-registry-packages-npm-production"}},"2.2.3":{"name":"@jeger-ai/opengantry","version":"2.2.3","keywords":["gxt","gapman","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.3","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gapman":"dist/cli/index.js"},"dist":{"shasum":"5ad4a1ace37bf1926e5561cb758b706ba752b596","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.3.tgz","fileCount":606,"integrity":"sha512-j6BjwGTfmKO2syausF4gSGN88LPsokm4Vbp/a0onAoZkHasWfwAPmnr4ArYIzZ1O5G5iRkgm18F11pXamJnUpA==","signatures":[{"sig":"MEUCIQDUbWL2xR6I81sSsjQkR9bpdGIH4CboHEnaty/fgSPJFwIgTsXMCr3EStBTghf6Kr0VYEs4dMul+mPkjm3mCODaomc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1255830},"type":"module","engines":{"node":">=24"},"gitHead":"89732aec6876dc92a05428228cd00372030ecb56","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"OpenGantry GXT substrate + gapman CLI","directories":{},"_nodeVersion":"24.16.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.3_1782206001329_0.5219630295326019","host":"s3://npm-registry-packages-npm-production"}},"2.2.4":{"name":"@jeger-ai/opengantry","version":"2.2.4","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.4","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"055d9bc3037b103e7bdbe11936f47247c0d6c117","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.4.tgz","fileCount":614,"integrity":"sha512-ejIgtAS2b/rf9LkCVu6yuXZbY4EB6DZ9sBvRSgpPuDb5gNn54S8sy/TosG30zi20OOQKPAonSXMHOlq2xfLMHQ==","signatures":[{"sig":"MEUCIQDnG2cwbn4+15iYoLwmaBLKtV6uT6q6f+IEAytaBDHbxAIgJ2d1Hk+tht0dhYjgRiLjOPxZR4+5l4SH+Aoxk+8a61w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1268051},"type":"module","engines":{"node":">=24"},"gitHead":"38b58d52a34eb2ae9b667306e45ce96a5b68a184","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test dist/cli/tests/*.test.js","build":"npm run gen:version && npm run gen:catalog && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.13.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.17.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.4_1782391774374_0.24866886474831373","host":"s3://npm-registry-packages-npm-production"}},"2.2.5":{"name":"@jeger-ai/opengantry","version":"2.2.5","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.2.5","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"c21e91eb46ab2934528fa7e897940ebcb9e05c3a","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.2.5.tgz","fileCount":610,"integrity":"sha512-xyqL6vQTTd9psoae604SVGeApYcSzrFF6EXtmbmRXZ1yyjuR9JZ1s1OuOXjfLirgeQhgHZLMqNJbLoBAAz6HkA==","signatures":[{"sig":"MEYCIQCa1ulZrsUK4XVBte9YYacrS3sIRHfgTSibSFRij395HwIhALfSG1EADu+2xOxcsT7xEvaWTulqXQFZC0l6y2OiFwmn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.2.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1260021},"type":"module","engines":{"node":">=24"},"gitHead":"add4b4619dd88d17ca2f24cd76504b53e4ea9701","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.2.5_1783439116608_0.9586307979699293","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@jeger-ai/opengantry","version":"2.3.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.3.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"1db1e8108179adda44636e6d41af7e1c7ae14bfb","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.3.0.tgz","fileCount":606,"integrity":"sha512-ANVdxw8dBViKqDCipAtF6bKat/ZnRD4f7pvGjd1LNcaRIFmHX/j/gUrWzR7VtHfLMtiOUbsvjMs2p+3mDJHaCA==","signatures":[{"sig":"MEUCIFnfzzQ6yd6lUZJNGHQ8wd4AVp61Nt0e4wScGjNcYygFAiEAlEOvdjV/KDFtBKlmEoSNSBoJuHY3kFS2TH7EieziN2s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1266144},"type":"module","engines":{"node":">=24"},"gitHead":"5653fbc0ebc5ef63a539537ce00ef127f21a21d6","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.3.0_1783441360466_0.49089549600559046","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@jeger-ai/opengantry","version":"2.3.1","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.3.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"a867cb628735599d733ae3863c13e667da89418c","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.3.1.tgz","fileCount":618,"integrity":"sha512-nKdxkca7lo6AEuPUfsP3qXLhZw2JJa/ejYgAEq199u4/q/uwc4ose3hpYFbQ8xjhnoTGfDBW0o/rh0FFXuqr8w==","signatures":[{"sig":"MEUCICUcxRtstP/yFTi/gxuElpXv4hjcfOSg1UJblj5gAGqIAiEA47yZBNxUMAN41sNu2n3UQk+AHuk6CMUJDm+XQpMVyc0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1291017},"type":"module","engines":{"node":">=24"},"gitHead":"dfbe906556c41afc43e4c1e54a1c7b6e7b57fada","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.3.1_1783458694860_0.7873805546726786","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@jeger-ai/opengantry","version":"2.4.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.4.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"820e0736d0f44dd874e6b3ed72a3e3bcd15f495b","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.4.0.tgz","fileCount":635,"integrity":"sha512-Ur+3nzGkOZ233mznyCksZ089X/r828zmDSoePZPAJVqc33nNp9JQfksWFu/p42Ocuj0YwZ+I3dwcYrcMSYecAw==","signatures":[{"sig":"MEUCIQCVOuU29GZvewBuXld/V+BD3FBjbrFIhc2zOu8KWeqjoAIgM/gVR6gKMdF/vysEWJUOGeNytI2PDioPSUN6AmkDjdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1339548},"type":"module","engines":{"node":">=24"},"gitHead":"e2b0f769a6f99c16e387ae1e9509e31c81234174","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.4.0_1783493776365_0.11487237813685458","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@jeger-ai/opengantry","version":"2.5.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.5.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"1e2c526cd687b4abb6911891d66b0fad876ac66e","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.5.0.tgz","fileCount":640,"integrity":"sha512-l1RkSr5Ix6UwwFWyApDZuMRa4yWazoiuOsOBt63RVDNJgTiG8d6CnMyN4mm/zVxl5ekDhR1AnLGdhQ/jMmPXrw==","signatures":[{"sig":"MEUCIQCMloNlmKq0bFWBpm4SN/1EF2zAYoyYWiNhvnHx9frrtgIgCOYkQ5Ib7+75CzlTfa79U27OvFX3gK+z34FCzoilbuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1371798},"type":"module","engines":{"node":">=24"},"gitHead":"38f4ea4cd32c207aeedba519bf9a181a0b42ddc8","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.5.0_1783500193179_0.4946954990544703","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@jeger-ai/opengantry","version":"2.6.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.6.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"33e93712a14c1336298f358602fe06bb810852f3","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.6.0.tgz","fileCount":652,"integrity":"sha512-aPwubDK+jrs2ylj/Hg7mZrZAlw4Bt3+kIahNmBsp8uUi19HcaLT02auMZpO61l/kVQe/4XTalerTGVore7RRkA==","signatures":[{"sig":"MEUCIQDyFFMjtZL3sBJ7xWw/YDxEvQvyxVC+ObBMCtrI6a68KwIgRIszxhN3LIRpQZsXn4EdgjXS2uEI0vWoA2mw7wKSr8E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1421101},"type":"module","engines":{"node":">=24"},"gitHead":"ab1a20b65cb83e442d0cf94c4692b87bc7aead51","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.6.0_1784032147287_0.37802229793258024","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@jeger-ai/opengantry","version":"2.7.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@2.7.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"3e202431e077f6d06401cb5a84d6130cef76dcd6","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-2.7.0.tgz","fileCount":648,"integrity":"sha512-klRUgRUVMUWuXyF8DpmlVh6hbd4/gIQAQfeyJxuig8Ya3+wTwR2y5S8HR1mSteGlGvMy/wBMainojxTfU40sWQ==","signatures":[{"sig":"MEUCIQCafw2+EiNMYDzrZwe/FtuU3+/zX6F20Nf08QrX6jiJCAIgKAJI+n4Ni8ZpWOEdn54TWXC80IYa/B7D7QeWkQ5m9sc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@2.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1410974},"type":"module","engines":{"node":">=24"},"gitHead":"6adcc5b662a108b31ff249f1302f293e3574ed70","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_2.7.0_1784105857995_0.2690991990821918","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"@jeger-ai/opengantry","version":"3.0.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.0.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://github.com/jeger-ai/opengantry#readme","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"29f605d66534d42ff647d7beaefbc6da61686f30","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.0.0.tgz","fileCount":700,"integrity":"sha512-P5WT4w2GQxutNhvkLvjUQgUuFqNA+o/dA9PfLxvtpNJCjNl+KxsnogYo6fb5sLdVQLasbUrM0I13JQQAm37OJA==","signatures":[{"sig":"MEYCIQC4yTMQMosVjluebHduX5yE3r3dolpUKvJG8UGDNLypaAIhAJYziuUOF638R0fF9AsHeqFtca9Tlh07IwlER0IScjg/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1495327},"type":"module","engines":{"node":">=24"},"gitHead":"788ba6535cac2901ea537e67865ffb686e0b6258","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.0.0_1784126256270_0.3696365447974663","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@jeger-ai/opengantry","version":"3.0.1","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.0.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"ae258d9473758f5ee0c1fdf84badf35b559c7409","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.0.1.tgz","fileCount":775,"integrity":"sha512-ru0I+uEV43M+z7kGQU1y/h423SQKv/uEWKarHXGl95O3SJqzXb5maJ5FVUtB9oajAZRRzqWjrYA/vZ3cxWJE1w==","signatures":[{"sig":"MEYCIQCunvDXnLE5mlC+moZbygbHWXqVQXRrAaiS/yQ/NByAmgIhAIqVNbndG9OhON+UK5EnOmSmQuvpBvYMiFvdNUUjE3Jp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1525193},"type":"module","engines":{"node":">=24"},"gitHead":"ac39bce17f626e392dea573baad3a119ca5e6e93","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.28.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.0.1_1784154804528_0.2561024006386696","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@jeger-ai/opengantry","version":"3.1.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.1.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"aeca7d39b73598c480aad4635899c338d77df6f1","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.1.0.tgz","fileCount":821,"integrity":"sha512-4MFu7btMecbDyHN3tnFTKswC+94gfZNTbdpwu80OdGjknHYXmBGW6uhD2JfgX8xkX9gMwsy2aDCtcqZsw7mnBw==","signatures":[{"sig":"MEYCIQDpwbO9TPL5cwckAHOh56oe5SGXN2Gh1x3/bdCo+kPDNwIhAKGdw/94OFnzOBsWSc5AUCiy1yX1TjERcE5+DARCQFCN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1595046},"type":"module","engines":{"node":">=24"},"gitHead":"36177436efa7b62f31cb8a55ae0dd35699ef36e9","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.1.0_1784669550566_0.586370802926981","host":"s3://npm-registry-packages-npm-production"}},"3.1.1":{"name":"@jeger-ai/opengantry","version":"3.1.1","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.1.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"af6af5bc14fb88753c145995f8bdced2d27a08c9","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.1.1.tgz","fileCount":841,"integrity":"sha512-GTcsKhpU/IcNtVbTYS2+GUxKAAuUjGj3sUcwAIT4X6i+3v8yS/ELQPOIhm997SY48quRMlRXFKJfv1jGfB2iKA==","signatures":[{"sig":"MEUCIQC2GwZDZF+LE6MHdxtuH674jU52kixCTrd+bRbQKvqZQgIgUaAI7UNV3WP9aVOabbwvrzdr8zzb2vUI0324eGQy4fw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1630095},"type":"module","engines":{"node":">=24"},"gitHead":"315728c8ee2a50c6344686559a389c7a8e4090ed","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.1.1_1784882907970_0.7487934997883106","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@jeger-ai/opengantry","version":"3.2.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"55a16ad373ac998639bcbda6d23b8bc17c76c954","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.0.tgz","fileCount":899,"integrity":"sha512-V7MljdQXm9gcBIVRLdsN1yViv3ys7izpZ1nw9DVnI25xDLKo/R+ndS8zsQcfpZL47tH6F5arb7CtG/Jc0/Nw2A==","signatures":[{"sig":"MEYCIQDLca8zE9b8k6Z9bwF0+uRT6nNB0t2OP/NzjBGzLChfCwIhALIXd22U8hznWjj0kkmY5BgcVcJrmFFYln7kDc3MJCph","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1789424},"type":"module","engines":{"node":">=24"},"gitHead":"402f953321c20fad2892378f9cc8c7a9e1efa2b0","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.0_1785476002221_0.6961717014810485","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"@jeger-ai/opengantry","version":"3.2.1","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.1","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"6582b83d9bc3f96edc02f2be4490dbb8cfe31922","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.1.tgz","fileCount":899,"integrity":"sha512-K5YDlJ8PknpE/xN047VduWHYtnLdBVJMrWavUOHE7BbaVQD//RAEIL057+9HrwV4L2WELfJwv0DL4c8pr11/QA==","signatures":[{"sig":"MEQCIHD+dWbBZWKJi0i3gW+PTsv9mOJ85Tbtah+JITjeAfSKAiA6QWMosqs0c8XHpfhHx2TbCEbZJOLPaynLMQlq8e35vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1789424},"type":"module","engines":{"node":">=24"},"gitHead":"f1be6b22b55dbc0f5783d9bca6fcd071b9ad81d4","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.1_1785476936932_0.35593714410092403","host":"s3://npm-registry-packages-npm-production"}},"3.2.2":{"name":"@jeger-ai/opengantry","version":"3.2.2","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.2","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"3a933c89128727d4993ab999c3bd232448ba4c5b","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.2.tgz","fileCount":865,"integrity":"sha512-Epgc1BdYkVpudD0qkndogFoNYZEdQRgc1YJrTcML5xpfgTNhTm99xw5kEIrdycHxluOBxHMmUhU0tUOLZJ5QpQ==","signatures":[{"sig":"MEQCIH/tTAey3tLco/SU5hkBcmgt6V2Wr6HU+1eHqbrumoKcAiAfqdKfI6GNY/fZhkf36A2FED5o17q/3iJ8RKs6SlRT5Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1802910},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"25c2f18a44afd1f5b72fd1eafc2bc03c3af36be4","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.2_1785825205529_0.6050253112184045","host":"s3://npm-registry-packages-npm-production"}},"3.2.3":{"name":"@jeger-ai/opengantry","version":"3.2.3","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.3","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"7e14a30179c3aad77332f2b7bef9d8d5a144c3d0","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.3.tgz","fileCount":865,"integrity":"sha512-CpoCp/CTRfIttMbDCRANpmVnlUrgmdCVaZuKThY5WUAA5TDtPMkIUzkBW8nSX1gxmFDWrqV5wuTY5tV7XTIcnQ==","signatures":[{"sig":"MEQCIDUDCYYQMkSxwN8V/ZklfnRGXnWTdPJjFiAj9WcUYrgfAiA8itz0YQ2J/clNFdDeNaa6HvHEkNNaAtJlDGG3n6EELg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1803943},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"0f2c7a4ba08783d265663d8a886c5ef7e75566ae","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.16.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.3_1786549562225_0.9580933607853284","host":"s3://npm-registry-packages-npm-production"}},"3.2.4":{"name":"@jeger-ai/opengantry","version":"3.2.4","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.4","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"a54bdb17d306bc179c57b810cc3ecdb14fca3364","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.4.tgz","fileCount":869,"integrity":"sha512-FuOk23b3VQ/rIf9NcvVpKyUB6RjqUZFsmgrw8rT+RGlqVabccaa5vE/rLGKghf1VsIj6kPxMWtZ6y8rfOVAvSg==","signatures":[{"sig":"MEUCIGCmV86v9ru2Q4Qj2+ShSqC+c9RHy8zRInGtlDERZyhuAiEAjW18YvOGgVXb9aLAwXE2UZje4ybn6ksGOxarGO/JqNw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1809550},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"cfe0cc3a34682be9488041b85e72b237c8b82dfe","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.17.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.4_1786951770420_0.32710306841709325","host":"s3://npm-registry-packages-npm-production"}},"3.2.5":{"name":"@jeger-ai/opengantry","version":"3.2.5","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.5","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"8c49ecd5ffca1f7082106bea39866c8633125f5a","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.5.tgz","fileCount":869,"integrity":"sha512-mM9HjNUgbh1sm+q/fNrM2DTfspXyQOzHJg2ZOjjwNAGYbdF24CkOJZX6J7OOggLpB65O112pUT62XXjY9XJHzg==","signatures":[{"sig":"MEYCIQD1988v8oi0kbfS2SdzO1sMri/Q3P3FRgxar/Wd5DQV2gIhAPV4cBLH9ouNJUiKJ739cgf6r9IhjpZm08tP7o4SufJ1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1812937},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"e669ba13694fd123871e76e73401de7b83fca19f","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.17.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.5_1786956332572_0.27681912114391194","host":"s3://npm-registry-packages-npm-production"}},"3.2.6":{"name":"@jeger-ai/opengantry","version":"3.2.6","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.2.6","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"e9a81498278885744a317a330f1876d82b2c94cb","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.2.6.tgz","fileCount":949,"integrity":"sha512-cVnQGZZ8hnG/lukXzUe1eBjVBmMRwv19qCW8Ozzgv8+yos45+3bqs1o8ACI91/vnwuGklu1548YQpU8MyeK7NA==","signatures":[{"sig":"MEUCIEmAoAhaeLgbUOvYC4QMZaSY3AC1jfBpkFULLed9s4qzAiEAoGLmK65UKJz1gegZ1dq1PuRprBYtJr68pNaLGuJyVXk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.2.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2029569},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"37b4fe67ba7b1d4859c674acb91535b6d2066641","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.17.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.19.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.2.6_1788378845339_0.9862518768408233","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@jeger-ai/opengantry","version":"3.3.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.3.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"ac68d0be618cf5c2ee6434ba58edd61fb2c64edf","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.3.0.tgz","fileCount":1096,"integrity":"sha512-0LYvnUnQs0cW0vfPOGFiTCK3jc6jUpgFBH25KvT0IIc8sl6zOw3zfuyj8N+CLHqtEvDubaeOoQoUcLq7zIsYsQ==","signatures":[{"sig":"MEQCIAJ2XwoU9L4IZVloPG8t7RcNiqCNo5GgvZ/PNnVcSvizAiAYCAbjEpsbtX6S5J/vllK2xI+yKenXl0C59Go27EHT2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2332070},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"b321f4548736c125bf672cc7af42005fd80a86d7","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","lint:json":"eslint --format json src/cli/**/*.ts","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.19.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.3.0_1788984699410_0.9685179674341067","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@jeger-ai/opengantry","version":"3.4.0","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"author":{"name":"Juergen Eger"},"license":"Apache-2.0","_id":"@jeger-ai/opengantry@3.4.0","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"homepage":"https://opengantry.ai","bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"dist":{"shasum":"77745111791c82a8d563e8c9f86ae7accc581f84","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.4.0.tgz","fileCount":1152,"integrity":"sha512-QDiEpzgvx5bIQh7neAFn31nWLK8KtrDKdF/kHY9huB0inJUNojAFS12Bas4m7aUnduSQB3DrxWKhUxIHtEBCSQ==","signatures":[{"sig":"MEYCIQCWKQerIM8DrOAHmcgFyc7BzWzrsQ6fBiC42US/vYxpFAIhAJ3fS7enQF7LjzPtLG3vi3dCOEPMeIVsm40RDysRqwux","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2506254},"type":"module","engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"2987bf40c2a18ad1b98b523bbce47b0606f1bab7","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","lint:json":"eslint --format json src/cli/**/*.ts","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.19.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"tmp":"tmp/opengantry_3.4.0_1789388968801_0.5090306220133543","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"_id":"@jeger-ai/opengantry@3.5.0","bin":{"gantry":"dist/cli/index.js","gapman":"dist/cli/index.js"},"bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"dist":{"shasum":"26bf0e28d56e0b97dde37e9b5179c2e47fdc4abd","tarball":"https://registry.npmjs.org/@jeger-ai/opengantry/-/opengantry-3.5.0.tgz","fileCount":1181,"integrity":"sha512-BIOBt7DhkdKISZNWgwPJx3hZp6zVpUyGNz8L9pOrLEC2DKa36CRfbcLd9i31W6YZky04V+6Z4Cli81XxlD45CA==","signatures":[{"sig":"MEUCIBmJHB4w3xyW1z9gf3gE5Nzo8swKqwnemYbMQXI5A/9HAiEA4dMjYuYlP5YCiykAq0PtilJlW+Tdy1i+wkc3c9lGyD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDiMkHJyGDJgWLGvNJMofuKyKpG7kTxcQowlkNjrj1VJQIgacs6cbS29o4NTUDRuXknMLiVM5c+TdZ/VJylD8Ku/9Y="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@jeger-ai%2fopengantry@3.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2565542},"name":"@jeger-ai/opengantry","type":"module","author":{"name":"Juergen Eger"},"engines":{"node":">=24"},"exports":{".":"./dist/cli/index.js","./kernel":"./dist/cli/kernel.js"},"gitHead":"66aa3e7cf23e72dd368b03e5a03fcbecf7d5dfd1","license":"Apache-2.0","scripts":{"lint":"eslint src/cli/**/*.ts","test":"npm run build && node --test \"dist/cli/tests/**/*.test.js\"","build":"npm run gen:version && npm run gen:catalog && npm run gen:dogfood && tsc","gantry":"node dist/cli/index.js","gapman":"node dist/cli/index.js","validate":"./scripts/dev-validate.sh","lint:json":"eslint --format json src/cli/**/*.ts","pack:check":"./scripts/npm-pack-check.sh","gen:catalog":"node scripts/gen-asset-catalog.mjs","gen:dogfood":"node scripts/gen-dogfood.mjs","gen:version":"node scripts/gen-version.mjs","check:changed":"./scripts/check-changed-code.sh","prepublishOnly":"npm run build && npm test","examples:benchmark":"node examples/benchmark-agent/run-benchmark.mjs"},"version":"3.5.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:647588ba-cfd2-4536-a81c-7357dcb1325e"}},"homepage":"https://opengantry.ai","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"_npmVersion":"11.19.0","description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","directories":{},"maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"ajv":"^8.20.0","zod":"^3.25.76","yaml":"^2.6.1","commander":"^12.1.0","ajv-formats":"^3.0.1","@clack/prompts":"^0.10.1","@modelcontextprotocol/sdk":"^1.30.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.7.0","@eslint/js":"^9.28.0","typescript":"^5.7.2","@types/node":"^24.0.0","typescript-eslint":"^8.33.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/opengantry_3.5.0_1790021595855_0.31556913528513775"}}},"time":{"created":"2026-06-07T19:34:51.279Z","modified":"2026-09-21T20:13:16.334Z","1.0.0":"2026-06-07T19:34:51.609Z","1.1.0":"2026-06-08T21:03:33.248Z","1.1.1":"2026-06-10T19:51:41.297Z","1.1.2":"2026-06-10T20:32:44.520Z","2.0.0":"2026-06-16T09:36:30.500Z","2.1.0":"2026-06-18T14:06:46.579Z","2.2.0":"2026-06-19T19:50:20.812Z","2.2.1":"2026-06-19T22:05:32.083Z","2.2.2":"2026-06-21T20:26:18.206Z","2.2.3":"2026-06-23T09:13:21.518Z","2.2.4":"2026-06-25T12:49:34.592Z","2.2.5":"2026-07-07T15:45:16.799Z","2.3.0":"2026-07-07T16:22:40.623Z","2.3.1":"2026-07-07T21:11:35.048Z","2.4.0":"2026-07-08T06:56:16.536Z","2.5.0":"2026-07-08T08:43:13.360Z","2.6.0":"2026-07-14T12:29:07.441Z","2.7.0":"2026-07-15T08:57:38.244Z","3.0.0":"2026-07-15T14:37:36.474Z","3.0.1":"2026-07-15T22:33:24.704Z","3.1.0":"2026-07-21T21:32:30.754Z","3.1.1":"2026-07-24T08:48:28.112Z","3.2.0":"2026-07-31T05:33:22.344Z","3.2.1":"2026-07-31T05:48:57.080Z","3.2.2":"2026-08-04T06:33:25.722Z","3.2.3":"2026-08-12T15:46:02.375Z","3.2.4":"2026-08-17T07:29:30.619Z","3.2.5":"2026-08-17T08:45:32.705Z","3.2.6":"2026-09-02T19:54:05.499Z","3.3.0":"2026-09-09T20:11:39.645Z","3.4.0":"2026-09-14T12:29:28.989Z","3.5.0":"2026-09-21T20:13:15.975Z"},"bugs":{"url":"https://github.com/jeger-ai/opengantry/issues"},"author":{"name":"Juergen Eger"},"license":"Apache-2.0","homepage":"https://opengantry.ai","keywords":["gxt","gantry","gantry-cli","open-source-gantry","git-hooks","ai-agents","governance","devtools"],"repository":{"url":"git+https://github.com/jeger-ai/opengantry.git","type":"git"},"description":"Open Source Gantry — vendor-neutral GXT substrate and Gantry CLI for local git-native agent governance","maintainers":[{"name":"jer","email":"eger.juergen@gmail.com"}],"readme":"<p align=\"center\">\n  <a href=\"https://opengantry.ai\"><img src=\"docs/assets/opengantry-logo.svg\" alt=\"OpenGantry logo\" width=\"96\" height=\"96\"></a>\n</p>\n\n# OpenGantry\n\n## Deterministic CI/CD and Governance for Autonomous Agents\n\nOpenGantry is a local verification kernel that wraps AI agents in a strict execution cage. It scopes edits, enforces architectural boundaries, and runs your traditional SDLC gates before allowing a single line of code to be merged.\n\n> **Not [Gantry.io](https://gantry.io)?** OpenGantry is the open-source **`gantry` CLI** for local-first, Git-native agent enforcement in your repository, not a hosted observability dashboard. Product home: [opengantry.ai](https://opengantry.ai).\n\n### The Verification Pipeline\n\n* **Scope Enforcement (TMVC):** Restrict agent file mutations to explicitly authorized directories and paths.\n* **Architectural Boundaries:** Prevent unauthorized public exports and structural violations via `TARGET_ARCHITECTURE.yaml` import layers and perimeter checks.\n* **Execution Gates & Remediation:** Run standard build and test commands within the agent harness. If a gate fails, OpenGantry returns a deterministic JSON `findings[]` payload, allowing the agent to self-correct without human intervention.\n\nDeep dive: [`docs/SECURITY.md`](docs/SECURITY.md) · [`docs/FEATURES.md`](docs/FEATURES.md) · [opengantry.ai](https://opengantry.ai)\n\n---\n\n## In plain English\n\nOpenGantry uses product terms that sound abstract. Here is what the CLI actually runs:\n\n| Term you will see | What it actually is |\n|-------------------|---------------------|\n| **Contract** | Mission YAML under `.gitagent/missions/` — allowed paths, forbidden paths, and a required `gate_command` (shell) |\n| **Legislate** | `gantry legislate` / Mission Architect writes that YAML; a Planner commit locks it in Git before work |\n| **Governance** | Hooks + `gantry verify` that fail closed if scope or gates are violated — not a process committee |\n| **Verdict** | Deterministic pass/fail from shell gates + trace checks; on fail, a `findings[]` JSON envelope |\n\n**\"Contract\" is not design-by-contract (DbC).** It is not pre/post conditions in source code. It is the Git-locked work order that tells the agent where it may edit and which shell command must pass before merge.\n\n---\n\n## Why not just TDD and CI?\n\nYou already have `npm test` and GitHub Actions. OpenGantry does not replace them — it makes them usable when an **AI agent** runs the graph.\n\n| Who runs the graph | What happens on failure |\n|-------------------|-------------------------|\n| **Human developer** | Reads stderr, parses the stack trace, rewrites code |\n| **AI agent + raw TDD/CI** | Chokes on unstructured stderr, hallucinates fixes, spins on retry edges — a senior still babysits |\n| **AI agent + OpenGantry** | Same gates you already trust; `gantry context-feed --json` returns compact `findings[]` with `offending_file`, line, and hint |\n\n| Already have | Still missing for autonomous agents | OpenGantry adds |\n|--------------|-------------------------------------|-----------------|\n| `npm test` / GH Actions | Structured failure for model retry | `findings[]` envelope |\n| PR CI | Declared edit blast radius | TMVC + forbidden zones in mission YAML |\n| Code review | Proof the agent stayed in scope | Git mission + `EXECUTOR_LOG.md` quotes |\n\n---\n\n## Vision\n\nNorth Star: [The Post-PR Software Factory](docs/MANIFESTO.md) ([opengantry.ai/docs/manifesto/](https://opengantry.ai/docs/manifesto/)).\n\nMost AI agent tooling optimizes for *speed of generation*. OpenGantry optimizes for **trust at scale**:\n\n- **Scope before execution:** no silent edits to governance files, no wandering outside approved paths\n- **Deterministic verification:** gates are shell commands with pass/fail outcomes, not LLM opinions\n- **Forensic trace:** every mission ties to `[MSN-XXXX]` commits and verbatim quotes in `EXECUTOR_LOG.md`\n- **Domain-agnostic:** the same graph governs TypeScript imports *and* brand/compliance copy\n\nThe long-term bet: external executors (Cursor agents, Hermes, CI bots) do the work; **OpenGantry owns the mission YAML and the verify output**. That separation is what makes agentic delivery auditable in regulated or security-sensitive environments.\n\n---\n\n## What problem it solves\n\nWithout governance glue, agent-assisted repos tend toward:\n\n| Problem | OpenGantry answer |\n|---------|-------------------|\n| Agents edit `.gitagent/` or manifest silently | Git hooks + `gantry verify` fail closed |\n| \"It passed locally\" with no proof | `gate_command` + trace quotes verifiers must cite |\n| Architecture drift | `TARGET_ARCHITECTURE.yaml` + `gantry arch check` / `gantry perimeter check` |\n| Opaque failures for retry edges | `findings[]` JSON envelope (`offending_file`, line, hint); no terminal log parsing |\n| One-off policy per repo | `gantry init` scaffolds the same GXT substrate everywhere |\n| No org-wide floor or audit chain | `gantry policy` (tighten-only bundle), `gantry ledger` (`refs/gxt/ledger`), `depends_on` (ADR-0042–0044) |\n\n---\n\n## The core graph (GXT)\n\nEverything revolves around a **mission**:\n\n```mermaid\nflowchart LR\n    A[Planner commits mission YAML] --> B[Executor works in TMVC scope]\n    B --> C[Trace in EXECUTOR_LOG.md]\n    C --> D[gantry verify]\n    D -->|fail| E[findings JSON → agent retries]\n    D -->|pass| F[Merge-ready evidence]\n```\n\n**Roles:**\n\n- **Planner:** human (or Mission Architect in chat) commits mission YAML via `gantry legislate` before execution\n- **Executor:** agent or developer edits within TMVC roots; forbidden zones respected\n- **Verifier:** `gantry verify` checks gate output and trace mapping\n\n**Key artifacts in your repo:**\n\n| File | Role |\n|------|------|\n| `.gitagent/missions/MSN-XXXX.yaml` | Scope, `gate_command`, trace rows |\n| `.gitagent/foreman/MANIFEST.json` | Skill routing, TMVC roots, risk tiers |\n| `.gitagent/planner/RULES.md` | Governance law (Tier-3, Planner-only) |\n| `EXECUTOR_LOG.md` | Verbatim PASS quotes for verify |\n| `TARGET_ARCHITECTURE.yaml` | Perimeter rules (imports or regex) |\n\n---\n\n## Three phases, any domain\n\nOpenGantry is a **domain-neutral verify graph**, not just a TypeScript linter:\n\n| Phase | Command | Output |\n|-------|---------|--------|\n| **Context ingestion** | `gantry init --discover --domain code\\|content` | `.gitagent/discovery-proposal.json` |\n| **Rules of engagement** | `gantry blueprint --domain code\\|content` | `ARCHITECTURE.md`, `TARGET_ARCHITECTURE.yaml`, `verification_plan.json` |\n| **Standardized audit API** | `gantry verify --json` | `findings[]` failure envelope |\n\n### Built-in domain adapters\n\n| Domain | Corpus | Enforcement |\n|--------|--------|-------------|\n| `code` | `.ts`, `.js`, … | Import layers, forbidden specifiers |\n| `content` | `.md`, `.html`, `.txt`, … | `forbid_pattern`, `require_pattern` regex |\n\nList them: `gantry domains`\n\n**Binary enforcement:** pass/fail only — no LLM opinions at the gate. Content discovery uses exact-match boilerplate only; it does not infer \"dominant terminology\" from statistics that would flip on unrelated edits.\n\nSee [`docs/DOMAINS.md`](docs/DOMAINS.md) for adapter details and [`docs/AGENT-GRAPH.md`](docs/AGENT-GRAPH.md) for external executor integration.\n\n---\n\n## Feature tour: what to try first\n\n### 1. Bootstrap a repo\n\n```bash\nnpm install -g @jeger-ai/opengantry\ngantry init --tutorial\n```\n\nScaffolds `.gitagent/`, hooks, manifest, and walks you through the first mission graph.\n\n### 2. Fast-path discovery\n\n```bash\ngantry init --discover --domain code      # scan TS/JS imports\ngantry init --discover --domain content   # scan markdown corpora\n```\n\nEmits a proposal with evidence-anchored conventions and anomalies (`file:line` snippets). Nothing becomes law until a human confirms or runs blueprint.\n\n**Speed:** the discovery scanner uses streaming regex per file, not a whole-repo AST. It is budgeted to finish a **5,000-file monorepo in under five seconds** (pinned in CI). OpenGantry ingests repository context in seconds without loading the tree into a heavy compiler graph or spiking RAM. Enterprise teams do not have to wait minutes for a governance tool to \"understand\" the repo before the agent graph starts.\n\n### 3. Blueprint: lock rules and gate commands\n\n```bash\ngantry blueprint --domain content --yes\n```\n\nProduces three artifacts:\n\n- **`ARCHITECTURE.md`:** human-readable decisions with evidence links\n- **`TARGET_ARCHITECTURE.yaml`:** machine-checkable rules (schema 0.3.0 for content)\n- **`.gitagent/verification_plan.json`:** `gate_commands` and `required_skills` gaps\n\nThe executor agent reads `required_skills` and builds missing tooling *before* coding.\n\n### 4. Perimeter enforcement\n\n```bash\ngantry arch check              # code: import/layer rules\ngantry perimeter check         # domain-neutral alias (same engine)\n```\n\nFor content, rules look like:\n\n```yaml\nforbid_pattern: \"(?i)cures cancer\"\nrequire_pattern: \"These statements have not been evaluated by the FDA\"\n```\n\nViolations carry `file` and `line` for the failure envelope.\n\n### 5. Mission + verify\n\n```bash\ngantry legislate --from-intent \"add feature X\" --msn MSN-0042 --skill-key gantry\n# or: gantry contract propose \"add feature X\" --skill-key gantry\n# Planner commits [MSN-0042] mission YAML (seals contract + contract_sha256)\neval \"$(gantry runtime env --mission .gitagent/missions/MSN-0042.yaml)\"\n# ... do work, append trace to EXECUTOR_LOG.md ...\ngantry verify --mission .gitagent/missions/MSN-0042.yaml --json\n```\n\nOn failure, external agents ingest `findings[]`:\n\n```json\n{\n  \"failed_gate\": \"arch\",\n  \"offending_file\": \"content/ad-bad.md\",\n  \"line\": 3,\n  \"severity\": \"error\",\n  \"resolution_hint\": \"...\"\n}\n```\n\n**v3.5.0:** Cursor MCP uses a byte-identical `./scripts/mcp-launcher.sh` (no mcp.json parity exemption). `gantry verify --format sarif|junit` writes the document only on stdout and diagnostics on stderr ([`docs/CI.md`](docs/CI.md)). `gantry contract preflight` is advisory and fail-open ([ADR-0046](.gitagent/out-of-scope/ADR-0046-experimental-contract-preflight.md)).\n\n**Mission contracts (v3.4.0):** Planner-sealed inline `contract` + `contract_sha256` on the mission YAML (tighten-only TMVC / forbidden / import cage). `gantry contract propose|check|show`, `gantry legislate --from-intent`, MCP `gxt_propose_contract`. Verify runs a `contract` phase after git-proof; `gantry runtime env` exports `GXT_ALLOWED_IMPORTS` / `GXT_BANNED_IMPORTS`; `runtime exec` reports `contract_violation` ([ADR-0045](.gitagent/out-of-scope/ADR-0045-mission-contracts.md)).\n\n**Org control plane (v3.3.0):** pin a signed org policy repo with `.gitagent/foreman/POLICY.pointer.json` and `gantry policy pull` (doctor/verify stay offline). Enable `ledger.mode: local` to append digest-only entries to `refs/gxt/ledger` (`gantry ledger verify` / `export --format soc2-pack`). Cross-repo gates use mission `depends_on[]` plus `gantry deps fetch` before verify ([ADR-0042](.gitagent/out-of-scope/ADR-0042-org-policy-bundle.md), [ADR-0043](.gitagent/out-of-scope/ADR-0043-compliance-ledger-git-ref.md), [ADR-0044](.gitagent/out-of-scope/ADR-0044-cross-repo-mission-dependencies.md)). Receipt schema stays 0.2.0.\n\n**Kernel (v3.3.0 breaking):** `import { verifyMission } from \"@jeger-ai/opengantry/kernel\"` now returns a Promise — always `await`. `verifyMissionAsync` is a deprecated alias (`DeprecationWarning` `GXT_DEP_VERIFY_MISSION_ASYNC`, removed in 4.0). CLI `--json-out` is unchanged.\n\n**Tool-native findings:** set `gate_adapter: eslint` (gate must run `eslint --format json`, e.g. `npm run lint:json`) or `gate_adapter: tsc` (plain `tsc` diagnostics, e.g. `npx tsc --noEmit --pretty false`) in the mission YAML and `gantry verify` maps each lint or type error to its own finding with `offending_file`, `line`, columns, and `rule_id`. Routing is explicit — never inferred from the command string (ADR-0041). Do not concatenate `tsc` and `eslint` in one `gate_command`. The default `generic` adapter keeps exit-code plus `gate_success_substring` semantics.\n\n**No terminal vomit:** agents do not scrape unstructured stderr or guess which line failed. The `findings[]` envelope is a **predictable, structured audit API** built for autonomous retry edges: each item names the gate, `offending_file`, line, severity, and a resolution hint. Use `gantry context-feed --json` for compact model re-entry; read `gate_log_path` on disk for full stack traces. Humans can run **`gantry report`** — a localhost overview of repo metrics, mission history, and the last verify (drill-down at `/verify`). Same payload on `--json`, SARIF, and MCP `gxt_verify`.\n\n### 6. Content governance example\n\nSee [`examples/content-governance/`](examples/content-governance/). Ad copy with seeded violations (forbidden claim, missing disclaimer, wrong brand hex). Same graph as code; different adapter.\n\n### 7. IDE integration\n\n- **Cursor MCP:** `gxt_draft_legislation`, `gxt_verify`, `gxt_pin_mission`\n- **Hooks:** session start loads pinned mission; shell guards block unscoped substrate writes\n- Details: [`docs/INTEGRATIONS.md`](docs/INTEGRATIONS.md)\n\n---\n\n## What OpenGantry is *not*\n\n- **Not an agent:** it does not chat, plan features, or generate PRs by itself\n- **Not Gantry.io:** no hosted observability dashboard; everything runs in your repo\n- **Not an LLM judge for merge:** gates stay deterministic; optional LLM evidence is committed separately via `gantry scan`\n\n---\n\n## Mental model for adopters\n\n```\nOpenGantry = scoped work order + shell gates + structured verify output\nExecutor agent = worker (Cursor, Hermes, human dev)\n```\n\nYou adopt OpenGantry when agent velocity is valuable but **unreviewed scope creep, silent governance edits, or unverifiable \"it works\" claims** are unacceptable.\n\n---\n\n## Documentation map {#documentation-map-start-here}\n\nFull doc index: [`docs/index.md`](docs/index.md) — organized by **how**, **what**, and **why**.\n\n## Where to go next\n\n| Goal | Doc |\n|------|-----|\n| All documentation | [`docs/index.md`](docs/index.md) |\n| What it helps with | [`docs/USE-CASES.md`](docs/USE-CASES.md) |\n| Why features exist | [`docs/FEATURES.md`](docs/FEATURES.md) |\n| Adoption runbook | [`docs/ADOPTION.md`](docs/ADOPTION.md) |\n| Release history | [`docs/CHANGELOG.md`](docs/CHANGELOG.md) |\n| Domain adapters | [`docs/DOMAINS.md`](docs/DOMAINS.md) |\n| External agent integration | [`docs/AGENT-GRAPH.md`](docs/AGENT-GRAPH.md) |\n| Contributing / dogfooding this repo | [`docs/DEVELOPMENT.md`](docs/DEVELOPMENT.md) |\n| Content walkthrough | [`examples/content-governance/`](examples/content-governance/) |\n","readmeFilename":"README.md"}