{"_id":"@elinpf/dsh-ops-tool-ceph","_rev":"13-0cb2e088d29c98e87ec28651a1f5903a","name":"@elinpf/dsh-ops-tool-ceph","dist-tags":{"latest":"0.4.1"},"versions":{"0.1.0":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.0","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"f2182503aa269def30f89bc19a7104ba4ca99fa5","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.0.tgz","fileCount":11,"integrity":"sha512-f/TyvmaB45o1LX1yIKUb6oUSDXrB/aoZFJgu5wGHlMeuG6V5ifmupjcSwMMdswFlFsyJ3KiqzmLokp/EyimoPw==","signatures":[{"sig":"MEUCIEFPDE4YNHVi0rm6ZAUMNyRxSugXvAgyyq9y21rCIsOyAiEAzy8lPDHAJhNf/1m8syDFVEEKUUbWUWfXqge2ZRrTtoY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.0.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/21cef13d19703fd4e1c4c79de7e4dc02/elinpf-dsh-ops-tool-ceph-0.1.0.tgz","_integrity":"sha512-f/TyvmaB45o1LX1yIKUb6oUSDXrB/aoZFJgu5wGHlMeuG6V5ifmupjcSwMMdswFlFsyJ3KiqzmLokp/EyimoPw==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.0_1788320340062_0.1746732855677542","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.1","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.1","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"997927cc658c3e9878b584c784f97654b38e4b0b","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.1.tgz","fileCount":11,"integrity":"sha512-FcEAW3ctUsTFLwDRkyI4u9GSCS8ruKNV+fHffM40qrVJG+H7t++AGakJ7vJG5uEH31L1rWQ37A9ogip4BJ31Dw==","signatures":[{"sig":"MEQCIBg5k2dsmJgvufMmDSn0fuAm3i0XBdMyJhz2+5blRUpoAiA8yqCSIZ/GTyWar2XNyNT2lQGKhHGBO/8Nf82u2Hfy8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.1.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/f8d339ea52859a7462b8054fe33105a2/elinpf-dsh-ops-tool-ceph-0.1.1.tgz","_integrity":"sha512-FcEAW3ctUsTFLwDRkyI4u9GSCS8ruKNV+fHffM40qrVJG+H7t++AGakJ7vJG5uEH31L1rWQ37A9ogip4BJ31Dw==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.1_1788321463828_0.22209431189598727","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.2","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.2","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"39fe19a9c3739734f959355facede267e4b7db4a","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.2.tgz","fileCount":11,"integrity":"sha512-gkCS/N/tzlwZM0RxYRbq5OpurWl9a2m+34gBszGF8AMdIR7qFaHz71sxSaDoyxO+nCs1R719D9+rDw02bqH0mQ==","signatures":[{"sig":"MEUCIQCoz8faS/gv+c7ytApc/oWyRk307vi9nyp5P9B2rXuG2gIgIwpvsfO718WGB8gN1BUks7NnOHZEcAGltGdHZlDLqNQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.2.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/a06dc31804d368e333aa6e1066376ef4/elinpf-dsh-ops-tool-ceph-0.1.2.tgz","_integrity":"sha512-gkCS/N/tzlwZM0RxYRbq5OpurWl9a2m+34gBszGF8AMdIR7qFaHz71sxSaDoyxO+nCs1R719D9+rDw02bqH0mQ==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.2"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.2_1788328471150_0.8903059726980183","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.3","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.3","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"f55a63ee84a0f930b12a454d3623053bd572f340","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.3.tgz","fileCount":11,"integrity":"sha512-vJ4phZjTwG55Cpfj3boK6A4aStbongSKaGo5Ue0PZ5h7wMFQFsCzIoDC0ST1QK2pBH+3hwun17KqhNsrEnbexQ==","signatures":[{"sig":"MEUCIDiMyFa6sBG3sdi5A5EcU4uebLQaxmmFnaH6yTGsjoNtAiEAgLvekItgjOG1dnFXWXOm2e9oMhUOfYwR5k9Irt1PvxQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.3.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/6499987799931ec78e5a129d44a7d9aa/elinpf-dsh-ops-tool-ceph-0.1.3.tgz","_integrity":"sha512-vJ4phZjTwG55Cpfj3boK6A4aStbongSKaGo5Ue0PZ5h7wMFQFsCzIoDC0ST1QK2pBH+3hwun17KqhNsrEnbexQ==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.3"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.3_1788334222189_0.44340379441680633","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.4","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.4","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"9dae85ed2b7acc3cf9a2a57aa37e908b97d519f0","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.4.tgz","fileCount":11,"integrity":"sha512-YxbF8ezXRZX2tagGf+ROeoRg9Lb6sXUXv56dVQTLdaRC7qN4isoM6JjF/gZHt9M1psFjBaHGccO//tqCh2dwkg==","signatures":[{"sig":"MEUCIQCKO/G27RyoiCQzKRPFImxkxoUxeaAhEzgg0resM+J5xAIgL3vhb0EBCMpkCZdMV1FkhmQx0j/3TYZoIpGM6LZLMAU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.4.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/3b384fbe679343a03df14e0f509c7f23/elinpf-dsh-ops-tool-ceph-0.1.4.tgz","_integrity":"sha512-YxbF8ezXRZX2tagGf+ROeoRg9Lb6sXUXv56dVQTLdaRC7qN4isoM6JjF/gZHt9M1psFjBaHGccO//tqCh2dwkg==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.4"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.4_1788335603025_0.4432400064054516","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.5","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.5","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"6500de01ccee5789bd0a7f9bd2033d03b640a951","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.5.tgz","fileCount":11,"integrity":"sha512-ei/9txhyaaTauA93NhpxSHmyEibZW0oEXj1vxNGSHM8jZ53nc86hZeTwHItVJ3TH5yhBIfHicOJ1vbHk5jfwaQ==","signatures":[{"sig":"MEUCIQCVqkcI1JyPPHtJu9/ohTDC6LeAZCdSlcH2T1oY0eSFVQIge37KmXa9Pah5Ypt7TeqFLHX9ZaRHGV8AD3o2A/dYTmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.5.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/1377669733d98c49e32bdf47a76beaa7/elinpf-dsh-ops-tool-ceph-0.1.5.tgz","_integrity":"sha512-ei/9txhyaaTauA93NhpxSHmyEibZW0oEXj1vxNGSHM8jZ53nc86hZeTwHItVJ3TH5yhBIfHicOJ1vbHk5jfwaQ==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.5"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.5_1788335933529_0.921160419588978","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.6","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.6","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"c394ed5a83c0a53805e2b8c5d1c9fd66ce4236c4","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.6.tgz","fileCount":11,"integrity":"sha512-uAIOI93ya3f7WR+GSxph5+brgHlEJ913WzW/cAYFDvkMmG9ZZIdFz8aVmweE/y8DNkqkz+UyWLrehM6wTdb/Zg==","signatures":[{"sig":"MEYCIQDGWBA7mYN5jgQ03KNiIoUOUjkO6tIkJRuMfI649zW3qQIhANwKKEm4ZnK2XSTVlgGPjDDqE+7tuuN+L3BTJ7XeQgZY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.6.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/7373316e3250379739147ecc0a780b58/elinpf-dsh-ops-tool-ceph-0.1.6.tgz","_integrity":"sha512-uAIOI93ya3f7WR+GSxph5+brgHlEJ913WzW/cAYFDvkMmG9ZZIdFz8aVmweE/y8DNkqkz+UyWLrehM6wTdb/Zg==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.6"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.6_1788491390335_0.5860868332624127","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.1.7","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.1.7","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"67034cd9d696839e04b30e38eccb93607775bf94","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.1.7.tgz","fileCount":11,"integrity":"sha512-cFa7ByfokmBv6qyfcoTfZUdodKWa72tKmmepkv2cT/1UypFDWVfQGjAOnV5+EZUY5uR/DXkPyiYqQLM/eMm4Cg==","signatures":[{"sig":"MEUCIQCTivw6HBT4C38ZQP1skbXxfnZaonq7EPXmpGG1y6x1OAIgH3gXDtrmbcG+fya5gyup/UDB7yaoC8Xsq7hB9/kkF7A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16702},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.1.7.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/3b952103a2bbcf506c76ff4aafce3f20/elinpf-dsh-ops-tool-ceph-0.1.7.tgz","_integrity":"sha512-cFa7ByfokmBv6qyfcoTfZUdodKWa72tKmmepkv2cT/1UypFDWVfQGjAOnV5+EZUY5uR/DXkPyiYqQLM/eMm4Cg==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.1.7"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.1.7"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.1.7_1788768193531_0.5910083326914619","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.2.0","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.2.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"6fe97f5d347db34d30fb66cf4b4ef382dc026db3","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.2.0.tgz","fileCount":11,"integrity":"sha512-pjJ8mtDTDG8pNrCEPW1cGsmQbN4HCng1Vqa/IDGoukb4HJjdbtrCSGtHU3N6Qt81IxfVNcY+ONvvzCwl+RKGnw==","signatures":[{"sig":"MEQCICaoCIB2mtJIqHtwKVY8P6wPX8N0gnX6kzzUgk369QwsAiBSyEf3lMrp+weFoskDsDc1RXV9hwVsmurBqsTXTg4cFQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17774},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.2.0.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/e6e5866c6e09b1b26c813e05da1d553c/elinpf-dsh-ops-tool-ceph-0.2.0.tgz","_integrity":"sha512-pjJ8mtDTDG8pNrCEPW1cGsmQbN4HCng1Vqa/IDGoukb4HJjdbtrCSGtHU3N6Qt81IxfVNcY+ONvvzCwl+RKGnw==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.2.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.2.0_1789349566182_0.5641621439663158","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.2.1","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.2.1","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"4cda466fa40c418575e47d3e8dcd47c6fcde024a","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.2.1.tgz","fileCount":11,"integrity":"sha512-wA7KoEfTvk7Xd8V74o8lpE/TWKpZTm6NBs1+yrch5FmXjxXACox14yiuDl5R4pgYcHJL88ZGC19asRTzRc5JYw==","signatures":[{"sig":"MEUCIQCM3gQTsQi9HSZbbyZ8n01bdAOLyhFY60ZmnUlziXZiBQIgDJUGTvAzrrqrBWk+apfj6tD+h3SmUJcK4LmehXsYlZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17774},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.2.1.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/075b09fc8adc462c69812831a20a2bef/elinpf-dsh-ops-tool-ceph-0.2.1.tgz","_integrity":"sha512-wA7KoEfTvk7Xd8V74o8lpE/TWKpZTm6NBs1+yrch5FmXjxXACox14yiuDl5R4pgYcHJL88ZGC19asRTzRc5JYw==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.2.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.2.1_1789351369391_0.9634194104421465","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.3.0","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.3.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"0a6bc47b930def3854c1b700d1a01f2df05b5384","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.3.0.tgz","fileCount":11,"integrity":"sha512-0Jxgnftud6BP92Gn9uz98gaaPM/VEbLee7l0clJdPKgiIZH4OhO60re5isT6PV2olM7rpIRHOWhE5t1hc0t5rw==","signatures":[{"sig":"MEYCIQDRceZFA2fRyyJNcngiT9w/L3yisQA+FQottq2TCXV9gwIhAIisD59kQK4JyCDdOqnF9V3YDrKpvzowQouIWCGNShuk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17774},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.3.0.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/0fa3ace6cefcd29ed42f588a80bfa8ce/elinpf-dsh-ops-tool-ceph-0.3.0.tgz","_integrity":"sha512-0Jxgnftud6BP92Gn9uz98gaaPM/VEbLee7l0clJdPKgiIZH4OhO60re5isT6PV2olM7rpIRHOWhE5t1hc0t5rw==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.3.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.3.0_1789355892320_0.6022444667094478","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@elinpf/dsh-ops-tool-ceph","version":"0.4.0","license":"MIT","_id":"@elinpf/dsh-ops-tool-ceph@0.4.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"b305bf9cf4b32f83d2a576bca25b740cf5b303b8","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.4.0.tgz","fileCount":11,"integrity":"sha512-a3p3EM4SH5LKYYKA6DcwsZSnOPe2Zdng9KiE8XT/ouRm4zyiM7I+xp1fjVVaQ8OA12l2fTvHCOwTua1QkNov4A==","signatures":[{"sig":"MEUCIHRWVvvCXg1pqxL3iKXP1+fR2o1iHa3FcJSVtGS+uuuhAiEAyG4miCC9RuR4NBcQm45aV0UIzMk0DPK3kW73SyNQYyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17774},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.4.0.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/808866f2528926d0676ac41088d80377/elinpf-dsh-ops-tool-ceph-0.4.0.tgz","_integrity":"sha512-a3p3EM4SH5LKYYKA6DcwsZSnOPe2Zdng9KiE8XT/ouRm4zyiM7I+xp1fjVVaQ8OA12l2fTvHCOwTua1QkNov4A==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.4.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-tool-ceph_0.4.0_1789542845514_0.606380279552553","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"_id":"@elinpf/dsh-ops-tool-ceph@0.4.1","dsh":{"bundle":{"patch":"./cordis.patch.yml"}},"dist":{"shasum":"9dce5226a84d1591fbc801a53455e1f20c7a342d","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-tool-ceph/-/dsh-ops-tool-ceph-0.4.1.tgz","fileCount":11,"integrity":"sha512-EXlPb1H3qm4Lqfr94ciqM3IWw1bbgzCs/Ck10y7MUSfUqKY4u94NOieUd6t9EP9D0sEb+HFJuL+OPTwv+sIANQ==","signatures":[{"sig":"MEUCIQChEgHXfpcphFm4qQAyAtao2VJbASfr+0hGzEjEnr7iIgIgJ8ripM3BqaYsVmqC5rp6XTZ3M3g3RK1rEAxFKQkF15Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCckeaS9HEuR0+FUWFR7X0N6UWAXXf+5WyEH1x9T2OOFwIhAIHk0YuL9ZTAqaAGIVpV/unkmCTzOd9IrMbF+qwURebJ"}],"unpackedSize":17774},"main":"lib/index.js","name":"@elinpf/dsh-ops-tool-ceph","type":"module","_from":"file:elinpf-dsh-ops-tool-ceph-0.4.1.tgz","types":"lib/index.d.ts","exports":{".":{"types":"./lib/index.d.ts","default":"./lib/index.js"},"./types":{"types":"./lib/types.d.ts","default":"./lib/types.js"},"./invariant":{"types":"./lib/invariant.d.ts","default":"./lib/invariant.js"},"./package.json":"./package.json"},"license":"MIT","scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit"},"version":"0.4.1","_npmUser":{"name":"elinpf","email":"365433079@qq.com"},"_resolved":"/tmp/e6d9382cd48e3d19a5126e3512bf69db/elinpf-dsh-ops-tool-ceph-0.4.1.tgz","_integrity":"sha512-EXlPb1H3qm4Lqfr94ciqM3IWw1bbgzCs/Ck10y7MUSfUqKY4u94NOieUd6t9EP9D0sEb+HFJuL+OPTwv+sIANQ==","_npmVersion":"10.9.8","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","directories":{},"maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"_nodeVersion":"22.23.2","dependencies":{"@deepseek-ai/schemastery":"^3.18.1","@elinpf/dsh-ops-shell-tool":"^0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.4.0","@deepseek-ai/cordis":"4.0.1","@deepseek-ai/dsh-shell":"0.0.1-rc.5","@deepseek-ai/dsh-tools":"0.0.1-rc.1","@elinpf/dsh-ops-access":"0.4.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-ops-tool-ceph_0.4.1_1789699628297_0.9567738149082012"}}},"time":{"created":"2026-09-02T03:38:59.924Z","modified":"2026-09-18T02:47:08.546Z","0.1.0":"2026-09-02T03:39:00.209Z","0.1.1":"2026-09-02T03:57:43.972Z","0.1.2":"2026-09-02T05:54:31.300Z","0.1.3":"2026-09-02T07:30:22.333Z","0.1.4":"2026-09-02T07:53:23.161Z","0.1.5":"2026-09-02T07:58:53.742Z","0.1.6":"2026-09-04T03:09:50.471Z","0.1.7":"2026-09-07T08:03:13.668Z","0.2.0":"2026-09-14T01:32:46.307Z","0.2.1":"2026-09-14T02:02:49.536Z","0.3.0":"2026-09-14T03:18:12.451Z","0.4.0":"2026-09-16T07:14:05.682Z","0.4.1":"2026-09-18T02:47:08.381Z"},"license":"MIT","description":"ceph tool consumer of the ops-access seam — resolves ceph profiles and runs commands via ctx.shell, injecting credential paths automatically.","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"readme":"# @elinpf/dsh-ops-tool-ceph\n\nDeepSeek Harness 运维模式下的 `ceph` 工具 — 通过 ops-access 接缝按名字解析 Ceph 集群档案(profile),经由 `ctx.shell` 对集群执行 `ceph` / `rbd` / `rados` 命令,凭证路径自动注入。\n\n## 它做什么\n\n模型用 `cluster`(档案名)和 `command` 调用 `ceph` 工具。工具每次调用都重新解析档案(不缓存,凭证改动立即生效),把档案的 `--conf` / `--keyring`(档案带 cephx 用户时还有 `--name`)以 `<id@tier:field>` 令牌引用的形式拼进真实命令行,经 shell 服务以 30 秒超时执行,返回标准结果 `{ exitCode, stdout, stderr, command, error? }`。\n\n## 设计要点\n\n- **薄消费者,共享机制。** 本包只提供四件身份要素:工具名、解析类型(`ceph`)、档案参数名(`cluster`)、`buildCommand`。其余全部(结果形态、输出 schema、渲染、逐次解析的执行模板、超时与信号死亡归一化)都在 `@elinpf/dsh-ops-shell-tool`,保证三个消费工具(`kubectl` / `ceph` / `ssh`)不会各自漂移。\n- **首词选二进制。** `rbd` 和 `rados` 是独立二进制,不是 ceph 子命令 — `ceph rbd ls` 只会在 mon 侧报 \"no valid command found\"。按命令首词在白名单 `[ceph, rbd, rados]` 中选择;裸词视为 ceph 子命令。\n- **一次调用一条命令。** shell 组合符(`;`、`&&`、`||`、反引号、`$()`、换行)在执行前被拒并给出教学式报错——组合符之后的内容会作为不带 ceph 前缀和凭据的新本地命令裸奔,报出误导性的 `xxx: command not found`(真实会话中重复踩了 8+ 次,2026-09-10)。单个 `|` 管道仍然允许(本地过滤输出)。已知慢的命令(如大池 `rados ls`)可用 `timeoutSec`(1–600 秒)放宽单次超时。\n- **边界错误优于误导错误。** 跑在宿主机本地的 ceph 生态二进制(`mount.ceph`、`ceph-fuse`、`ceph-volume`、`rbd-nbd` 等)明确不包装;这类调用直接报清晰错误并指向 `ssh` 工具,而不是让 mon 的误导性报错带偏排查。\n- **stderr 噪音过滤。** 两条已知的\" /etc/ceph 下找不到 keyring \"警告(凭证都经注入的 `--keyring` 到达,纯属噪音)按精确模式剔除;其余 stderr 行原样透传。\n- **秘密不经过工具。** 档案只携带路径和连接参数;文件路径在拼装命令中变成 `<id@tier:field>` 令牌,cephx 实体名(非秘密)保持内联。只读强制由凭证 caps 在 mon/osd 侧执行,工具本身不做。\n- **注册即 effect。** 工具经 `ctx.effect(() => ctx.tools.register(...))` 注册(在 `registerProfiledShellTool` 内部),fiber 销毁 / HMR 时干净卸载。`./invariant` 子路径注册一个空实现的 invariant 伴生插件:本工具无状态、不拥有 session 事件,没有需要安装的运行时不变量。\n\n## 配置项\n\nschemastery schema,仅一项:\n\n| 键 | 默认值 | 含义 |\n|---|---|---|\n| `timeoutMs` | `30000` | 单次 ceph 执行的 shell 超时(毫秒)。慢集群可调大。 |\n\n## 测试方式\n\n```sh\nnpm run build     # tsc → lib/(插件加载的是 lib/,不是 src/)\nnpx vitest run    # 基于 mock ctx(shell / tools / opsAccess)的单元测试\n```\n\n测试覆盖:命令拼装(ceph / rbd / rados / 显式前缀剥离 / `--name` 注入)、不包装边界、档案解析与 shell 失败映射、stderr 噪音过滤、render 纯函数性、导出形态(`.` / `./invariant` / `./types` 三个入口)、以及 HMR 卸载(执行收集到的全部 effect disposer 后工具被注销)。\n","readmeFilename":"README.zh.md"}