{"_id":"@atbash/atbash-plugin","_rev":"9-37e5f2b45a518d4467f08113b1752d48","name":"@atbash/atbash-plugin","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@atbash/atbash-plugin","version":"0.1.0","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"author":{"name":"atbash"},"license":"UNLICENSED","_id":"@atbash/atbash-plugin@0.1.0","maintainers":[{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"}],"dist":{"shasum":"34edd4f96b04bf4d2eae063a0c54c58e09c4c39e","tarball":"https://registry.npmjs.org/@atbash/atbash-plugin/-/atbash-plugin-0.1.0.tgz","fileCount":6,"integrity":"sha512-5D+4aNkPJII0z5/cGk+l3ahNXJsZplv3kULEZ/kUUVzeQN72KXl19Ja89CPIQBjVhtQlWuWTjMkPHEFxwthBkQ==","signatures":[{"sig":"MEUCIDwR+LL3yatEFlyCX0cIyBEhs/+uNhXkn1esSVGf8v5rAiEA8SyoRRcxfY1OEXxFQy2o++Ky6IEcbzi/uOF2mXqQSPo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15423},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"5b6e461b7a26d29cd9cf7b2812f1f5ef33925aef","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"_npmVersion":"11.6.2","description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","directories":{},"_nodeVersion":"24.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.1"},"_npmOperationalInternal":{"tmp":"tmp/atbash-plugin_0.1.0_1776853295266_0.8020679184772075","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package has been moved to @atbash/atbash-openclaw"},"0.1.1":{"name":"@atbash/atbash-plugin","version":"0.1.1","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"author":{"name":"atbash"},"license":"UNLICENSED","_id":"@atbash/atbash-plugin@0.1.1","maintainers":[{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"}],"dist":{"shasum":"158a77c78b2811a74488edca3a723082197d51ea","tarball":"https://registry.npmjs.org/@atbash/atbash-plugin/-/atbash-plugin-0.1.1.tgz","fileCount":6,"integrity":"sha512-mB0K0CGzI98qOwoJh/MS115ZOZd42TZLOyo0uE1v+5Bwv1FlCyu/VKDt44Lf/4KutcZcu5owVNOP+T0ojYQmwg==","signatures":[{"sig":"MEYCIQCAYnUnmcULUhgRSo73NIds6Ei6MwI0L/mzhZC+62tigAIhAMOCkIPE8yEuEQN+YiX0WafmzkWaQhOKn5XEQYqtLD9V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15397},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"2868056ca4b87f1ea010bbc9f67861675d94b27f","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"_npmVersion":"11.6.2","description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","directories":{},"_nodeVersion":"24.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.1"},"_npmOperationalInternal":{"tmp":"tmp/atbash-plugin_0.1.1_1776879823718_0.42828656973551404","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package has been moved to @atbash/atbash-openclaw"},"0.1.2":{"name":"@atbash/atbash-plugin","version":"0.1.2","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"author":{"name":"atbash"},"license":"UNLICENSED","_id":"@atbash/atbash-plugin@0.1.2","maintainers":[{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"}],"dist":{"shasum":"3cf9412d78904cf00ac61a72e2ffc8ab2fed4cb9","tarball":"https://registry.npmjs.org/@atbash/atbash-plugin/-/atbash-plugin-0.1.2.tgz","fileCount":6,"integrity":"sha512-nQkcL8jk4jMRTvByLVvrRX6nNsIN4YjmcQ/7N4iNJBWMn4m82zsPvTrNvjojevKH36HKi6jgW4LsuIapIXt2AA==","signatures":[{"sig":"MEUCIDRuYi/Ga8/4hpPgJVjjbfN0OVeVJKr04JG35q/e6Gb1AiEAgRtHyaWS4l2i35qgPoP3wXeI8fM+wnIyedSOygxLZk0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14812},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ad678cfaeb5b207ebb22fa7c4703a19a540f11ab","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"_npmVersion":"11.6.2","description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","directories":{},"_nodeVersion":"24.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.1"},"_npmOperationalInternal":{"tmp":"tmp/atbash-plugin_0.1.2_1776883192688_0.9202025105796634","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package has been moved to @atbash/atbash-openclaw"},"0.1.3":{"name":"@atbash/atbash-plugin","version":"0.1.3","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"author":{"name":"atbash"},"license":"UNLICENSED","_id":"@atbash/atbash-plugin@0.1.3","maintainers":[{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"}],"dist":{"shasum":"d09d5866bd148a52b8510bfa8c84cd266844ef72","tarball":"https://registry.npmjs.org/@atbash/atbash-plugin/-/atbash-plugin-0.1.3.tgz","fileCount":6,"integrity":"sha512-hkNKHU339OSDYzjkY7sjPzP8JNpgLXx8vMEUr+Xr9rA55Ee5yUyGlNMpVnCWMjO9l4cpl1UawVG/SsWyrLJNow==","signatures":[{"sig":"MEYCIQCsivkj4H97B5OQf1nqhAPdZe9hhssP7gAbsZMOdE5uugIhAJTlVOh0egSkF9lGWr9czPR7kIuL84i/+F/oCnOPEuZW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15263},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"79f1640ab1519c37d002609bf646039a9b332924","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"_npmVersion":"11.6.2","description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","directories":{},"_nodeVersion":"24.12.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^25.5.1"},"_npmOperationalInternal":{"tmp":"tmp/atbash-plugin_0.1.3_1776884464669_0.3310468425606663","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package has been moved to @atbash/atbash-openclaw"},"0.2.0":{"name":"@atbash/atbash-plugin","version":"0.2.0","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"author":{"name":"atbash"},"license":"UNLICENSED","_id":"@atbash/atbash-plugin@0.2.0","maintainers":[{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},{"name":"tewuhbo","email":"tewuhbomihret1992@gmail.com"}],"dist":{"shasum":"7bdab51a953e894d46cd8553ea585f604100bced","tarball":"https://registry.npmjs.org/@atbash/atbash-plugin/-/atbash-plugin-0.2.0.tgz","fileCount":6,"integrity":"sha512-KUgN/0DRVXpF1DR+MByL4qlrxuqVsSTjwWaW3UlBmBvO0z1jFKi6OO449La1sbM4AjRDzbMTBvvvTL0tKKN90A==","signatures":[{"sig":"MEUCIF//w5jewP0DWP+E5ZcRXabyqvCULpe8YIsXz1gsz/zOAiEAgq7BvBN0Y7qpJHpRkYrEKRhNshBEGCcFm9a12SbMs/g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14803},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9eb567ac410196e53aee147a350ccb24b360feba","scripts":{"build":"tsc && esbuild dist/index.js --minify --platform=node --outfile=dist/index.js --allow-overwrite","prepublishOnly":"npm run build"},"_npmUser":{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"},"openclaw":{"extensions":["./dist/index.js"]},"_npmVersion":"11.6.2","description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","directories":{},"_nodeVersion":"24.12.0","dependencies":{"postchain-client":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.28.0","typescript":"^5.9.3","@types/node":"^25.5.1"},"_npmOperationalInternal":{"tmp":"tmp/atbash-plugin_0.2.0_1777451077859_0.9108663122414891","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package has been moved to @atbash/atbash-openclaw"}},"time":{"created":"2026-04-22T10:21:35.144Z","modified":"2026-09-10T12:29:03.157Z","0.1.0":"2026-04-22T10:21:35.409Z","0.1.1":"2026-04-22T17:43:43.868Z","0.1.2":"2026-04-22T18:39:52.840Z","0.1.3":"2026-04-22T19:01:04.832Z","0.2.0":"2026-04-29T08:24:37.994Z"},"author":{"name":"atbash"},"license":"UNLICENSED","keywords":["openclaw","plugin","atbash","tool-audit","chromia","policy","audit"],"description":"OpenClaw ATBASH tool-audit plugin for auditing and enforcing policies on tool calls.","maintainers":[{"name":"amanuelmr","email":"amanuel.mandefrow@chromaway.com"},{"name":"bewuketu_lake","email":"bewuketu.lake@chromaway.com"},{"name":"celse13","email":"honore.rugira@chromaway.com"},{"name":"ketiyoh","email":"keti.yohannes@chromaway.com"},{"name":"tewuhbo","email":"tewuhbomihret1992@gmail.com"},{"name":"tsiontesfaye","email":"tsion.tesfaye.g@gmail.com"}],"readme":"# ATBASH Plugin\n\nOpenClaw plugin that checks tool calls against an ATBASH policy API and can block execution when the verdict is BLOCKED.\n\n## Install\n\nFrom a local directory:\n\n```bash\nopenclaw plugins install /path/to/atbash-plugin\n```\n\nFrom npm:\n\n```bash\nopenclaw plugins install @atbash/atbash-plugin\n```\n\n> **Note:** OpenClaw may flag this plugin as unsafe during installation because it reads a private key file to identify the agent on the ATBASH platform. This is expected behaviour. Use the `--dangerously-force-unsafe-install` flag to proceed:\n\n```bash\nopenclaw plugins install @atbash/atbash-plugin --dangerously-force-unsafe-install\n```\n\nThe private key is used solely to sign requests to the ATBASH judge API and is never transmitted beyond that.\n\n## Setup\n\nThe plugin requires an agent key file to authenticate requests to the ATBASH API. By default it reads from:\n\n```\n~/.config/atbash/guard-client-key\n```\n\nThe file can be JSON:\n\n```json\n{\n  \"privKey\": \"your-hex-private-key\",\n  \"pubKey\": \"your-hex-public-key\"\n}\n```\n\nOr key=value format:\n\n```\nprivkey=your-hex-private-key\npubkey=your-hex-public-key\n```\n\n## Optional helper script for skill-based checks\n\nIf you want a reusable skill to perform a one-shot guard check without exposing shell-level key extraction, install a helper script at:\n\n```bash\n~/.config/atbash/judge_via_api.js\n```\n\nThe helper should:\n- read `~/.config/atbash/guard-client-key` internally\n- call the judge API directly\n- print only the safe JSON result\n\nA reference implementation is included in this repo at:\n\n```bash\ntools/judge_via_api.js\n```\n\nThis repo path is a reference implementation, not the path that a reusable skill should hardcode.\n\n## Config\n\nConfigure it under `plugins.entries[\"atbash-plugin\"]`:\n\n```json\n{\n  \"plugins\": {\n    \"entries\": {\n      \"atbash-plugin\": {\n        \"enabled\": true,\n        \"config\": {\n          \"enabled\": true,\n          \"enforceDecision\": true,\n          \"chromiaSecretPath\": \"~/.config/atbash/guard-client-key\"\n        }\n      }\n    }\n  }\n}\n```\n\n## Config fields\n\n| Option | Description |\n|---|---|\n| `enabled` | Enable plugin logic |\n| `enforceDecision` | If `true`, BLOCKED verdicts block tool execution. Default: `false` |\n| `chromiaSecretPath` | Path to agent key file. Default: `~/.config/atbash/guard-client-key` |\n| `debug` | Extra logging |\n\n## How it works\n\nBefore each tool call, the plugin:\n\n1. Loads the agent key pair from the key file\n2. POSTs to the ATBASH judge API with the tool name and arguments\n3. Waits for the API to return a verdict (the API handles all on-chain interaction)\n4. Interprets the verdict:\n   - `blocked` → block tool execution (if `enforceDecision: true`)\n   - `hold` → allow\n   - `allowed` → allow\n\nIf the API is unreachable or returns an error, the plugin fails closed (blocks execution).\n\n## Fail-closed behaviour\n\nThe plugin blocks tool execution in the following cases:\n\n- Key file missing or unreadable\n- Judge API unreachable or returns a non-2xx status\n- Verdict is `block`\n\nTo make failures block instead, set `enforceDecision: true` and handle key/network issues before deployment.\n\n## License\n\nProprietary — all rights reserved. See [LICENSE](LICENSE). Commercial licensing inquiries: contact the Atbash team.\n","readmeFilename":"README.md"}