{"_id":"@elinpf/dsh-ops-shell-tool","_rev":"13-0f2bb61928ab1495d580747160ff80a2","name":"@elinpf/dsh-ops-shell-tool","dist-tags":{"latest":"0.4.1"},"versions":{"0.1.0":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.0","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"66d2f37da0e322f24e198efa6f43a057fa955972","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.0.tgz","fileCount":10,"integrity":"sha512-HLhRA3HBjFGHjmasVpaCSblNsfpDo/75jMbVpdI9Q2pjJjP8Mza6T/+35DUeumzBOtd9LyDWBJpDtdjSCblR/g==","signatures":[{"sig":"MEUCIFgmR8drTIex7hKNfxzc3yCga8RYYZbVKTia80g02sojAiEA1rrQsPNVQON+fJbiOfzXwXHfwuEOdbkNkWJwVFBdOzM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/b037182293a2999570c38edc76968fbb/elinpf-dsh-ops-shell-tool-0.1.0.tgz","_integrity":"sha512-HLhRA3HBjFGHjmasVpaCSblNsfpDo/75jMbVpdI9Q2pjJjP8Mza6T/+35DUeumzBOtd9LyDWBJpDtdjSCblR/g==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@elinpf/dsh-ops-access":"^0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.0_1788320331047_0.9637844474346506","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.1","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.1","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"cbf4e159141ee821ce01d78a165e0b5976b820b5","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.1.tgz","fileCount":10,"integrity":"sha512-uGSNMDXcke0QCiIBAFWl8+FEiI4d2ul7BVJ5RJgrPkNkSQRvHk8YswLa+e7gdSKHh510O2KN7XykSlmXQtP6hw==","signatures":[{"sig":"MEQCID9KXQVkMS6bUwQEpjLcQY0ph9UpjeSySTfuqv8+C5ZtAiAsGL1P3jI2/GA9W/dljr7x5bJVZgIoAt8fG5BTXddK3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAhLzk6BEzqRTnafCf6TtnWcn7L87SXQlySPjzB2yW2NAiA1Ve9tNjanjWMjGCjXE612ZDaRDEB90OcSQ7abqrrZQA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/d653dc8b785ac8fed4e4ff09d9016397/elinpf-dsh-ops-shell-tool-0.1.1.tgz","_integrity":"sha512-uGSNMDXcke0QCiIBAFWl8+FEiI4d2ul7BVJ5RJgrPkNkSQRvHk8YswLa+e7gdSKHh510O2KN7XykSlmXQtP6hw==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@elinpf/dsh-ops-access":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.1_1788321510643_0.8722318902614692","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.2","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.2","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"93be4be06779a70af14bc001fa51b611c673300c","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.2.tgz","fileCount":10,"integrity":"sha512-G18evBNqZpAS5gKJoTRtJbVhjI5gbAWoyNwSGj11MWAqT9RhpnMB63YcRWD0OBcffBLBxKmtfMRGE3rEs7694A==","signatures":[{"sig":"MEUCIQCh3rPcw0NLFB/DR87VLxg2x7nlI/YkgCnB/L5A7LQbfwIgfrSMRJsWb7YDJoSEUsJM7yfEmTfS7EDIdaw2j/L/i7o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBC7TSeM/veVeCXGMBG8N7Lm/l5TZ1ODWbo/3ftrWfuFAiEA858cN0ltHhjgYxIiu2fy52U3oPxgLO+ThPAMF4Kiw78=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/b878adbed82a24ba87099263c0d7ad5a/elinpf-dsh-ops-shell-tool-0.1.2.tgz","_integrity":"sha512-G18evBNqZpAS5gKJoTRtJbVhjI5gbAWoyNwSGj11MWAqT9RhpnMB63YcRWD0OBcffBLBxKmtfMRGE3rEs7694A==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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","@deepseek-ai/dsh-shell":"^0.0.1-rc.1","@deepseek-ai/dsh-tools":"^0.0.1-rc.1","@elinpf/dsh-ops-access":"^0.1.2"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.2_1788328517974_0.0270433587275849","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.3","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.3","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"49428a210c4eae5c446b9f62053bf61dd8c4664b","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.3.tgz","fileCount":10,"integrity":"sha512-5HP/O1KdOaypMY9KJ/T/2MOUNxTfnfphu8BbqfSVyrh/ccT1WeS4m1b1UaKQYSUoJ0queTeZ+5RexExh+nAxaA==","signatures":[{"sig":"MEUCIQDBzjFENc5K+p+l24wsClNg+i3guEmbAuybYY8QXUhiKQIgD78d37/wIazXKrlRRF/kl+5ea5/kjdq69Tpk4oRRmk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCV9BsuMExwV7Ij0vbjd2eCTkVSfwUHGk0NKlPMKuEP9AIhANTKseOiYwxTDYLo6x+D61g2vIvm99AP2Gj1ACrHYTmQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/25a1da753e3e308a670168df55f7604e/elinpf-dsh-ops-shell-tool-0.1.3.tgz","_integrity":"sha512-5HP/O1KdOaypMY9KJ/T/2MOUNxTfnfphu8BbqfSVyrh/ccT1WeS4m1b1UaKQYSUoJ0queTeZ+5RexExh+nAxaA==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.3"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.1.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.3_1788334341265_0.9452002278648532","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.4","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.4","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"03ee37dabe900f4ec401b79541f7f1cb0b72e5f3","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.4.tgz","fileCount":10,"integrity":"sha512-5sdzzXodsu1F0nfCgi1p6/RMpHaAxhL/kP2W62RdXMqWKm3bqqiSmrV2fO3TdC/dKG0Ev5SDjP9dG57NhS8mTg==","signatures":[{"sig":"MEQCIHFVx2h8GyVaCO1P/FgBpvxXkASv390cqn+J2YdfosDIAiAQTA7b/dCEGbftdQikgc40K+TbnCV5f6E7xUEtNIsUFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDU1zPdiypSSyXUN7Sy3Jaaz+oQxAeIaSw9ufngYJWDNAiBjYE03acteW37rhk4rzaMdNm69+xn3yTOskERG7jesKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/9d59a1277ddc732762c3319788a784a2/elinpf-dsh-ops-shell-tool-0.1.4.tgz","_integrity":"sha512-5sdzzXodsu1F0nfCgi1p6/RMpHaAxhL/kP2W62RdXMqWKm3bqqiSmrV2fO3TdC/dKG0Ev5SDjP9dG57NhS8mTg==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.4"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.1.4"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.4_1788335649557_0.0353466707785528","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.5","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.5","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"cb3752100c909e4ab06e0919ac5d2ef82fd78410","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.5.tgz","fileCount":10,"integrity":"sha512-2k/OfZEskhqI9tB5WWgOwMGySJ9Av1U7shOFk52CiwrEMuUEqYCRw7H6XYisg8gSQgXX+oRrbBHrDAYwybNwfg==","signatures":[{"sig":"MEQCIDfasmjdlXIzoYkviitlzpOMN/u5co/ecl1fdVQF+TvdAiBz6kcbJ1Qi8WDambKnlN4fLaEgQC/EXD7SPUsO6eYl4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICW++D2rwfjOEB5h2xGN2hKrKhw4UkTA+zPd6H9m6GGtAiBKw28mTgbDkgNFi3LURK+a1iAhLDM7iLnuxlurb4Vk/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/3940aa0cc93f11902432fc9652377dfd/elinpf-dsh-ops-shell-tool-0.1.5.tgz","_integrity":"sha512-2k/OfZEskhqI9tB5WWgOwMGySJ9Av1U7shOFk52CiwrEMuUEqYCRw7H6XYisg8gSQgXX+oRrbBHrDAYwybNwfg==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.5"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.1.5"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.5_1788336022239_0.2500284060260891","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.6","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.6","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"941f69f4536757f71bb4ae66258a79165f77c647","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.6.tgz","fileCount":10,"integrity":"sha512-VkT/fqW3YyHvZHIwoKKQTyo4dYxh3nPUqzePrvnRtJ4d9CxwS7QfUBcpcAlutLHYJjrTfZ+2Tl0qgrIdCqr1OA==","signatures":[{"sig":"MEUCIQCpM4KynbsyoAxnztqx/TtYCmKCEzjmY4E3TFIn+UPTjQIgZNnvqWe2JgLvwXf84Wr5pihb/gTsuPfAK1qoAr/8ocI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCN6yvXD62yM7ZssbQCV2vghX1+o4fiFDFaxr3RhqjGtgIhALDQ+pJJRAicsrjQRmwHLD0g952b1vDjAyrrNCZDhEAI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/6e9438ca505a707364882b18f50c4488/elinpf-dsh-ops-shell-tool-0.1.6.tgz","_integrity":"sha512-VkT/fqW3YyHvZHIwoKKQTyo4dYxh3nPUqzePrvnRtJ4d9CxwS7QfUBcpcAlutLHYJjrTfZ+2Tl0qgrIdCqr1OA==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.6"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.1.6"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.6_1788491457846_0.2082195398680844","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.1.7","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.1.7","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"e5f2f954dbb398b383320d35eb5d572e74dd77e1","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.1.7.tgz","fileCount":10,"integrity":"sha512-96UGlx/PzSIAWDZrKGRNTcuoq9Oad3vXGfxBceoCj3IjwecX3Bc76MScL+jxlmuqu2R/3Yi+uUumJFzLV3jwwA==","signatures":[{"sig":"MEUCIQClwnQ9A1/N8IrAcJ4aFTtUIzfYX5nErP4D6YIiM9H0cwIgYhx1tN43Oo2tEJ7X291zJ5Czqms55sfcE9iTCIDJBV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDBOCnUZFuy4OD9xXLhTGgjDEcLNpQQM3ms7ADOLeiFoAIgeW4T2k7spjAvv4Iy2rMc3vNW/9C2c/1pYDIkcvKKmj4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24760},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/285d69c1497f892125a99808db89f597/elinpf-dsh-ops-shell-tool-0.1.7.tgz","_integrity":"sha512-96UGlx/PzSIAWDZrKGRNTcuoq9Oad3vXGfxBceoCj3IjwecX3Bc76MScL+jxlmuqu2R/3Yi+uUumJFzLV3jwwA==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.7"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.1.7"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.1.7_1788768281436_0.961664397914453","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.2.0","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.2.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"2362e2750be86d9d0602cf139640b6fb44d47133","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.2.0.tgz","fileCount":10,"integrity":"sha512-HkxXfbhaXUG2JbKlDAZ7quwOwBSUCFtvVRS2/uX2wEcIWEHjDVZIfIcXq3JHGS7bT1ojQYpkv2RKvaVG/DTN8A==","signatures":[{"sig":"MEYCIQCSSyyMs0El5AYGukHfkiSu9iREymrlMD45bbYUNRGDowIhALErOxykZE4VuszfVWP7ZCNrCsnHDjrxJ8Icf2TVfP88","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCxAZT8tUOV1kEU7JCzrABnb/ls10kuL0TjK3IK7B7PfwIhAPU8Qly7ajDekyxZ7DnAYi1KUS8W6U+Ye570PCDSVOj0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31653},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/07f3a97ea9296274fb69a12b9a95931e/elinpf-dsh-ops-shell-tool-0.2.0.tgz","_integrity":"sha512-HkxXfbhaXUG2JbKlDAZ7quwOwBSUCFtvVRS2/uX2wEcIWEHjDVZIfIcXq3JHGS7bT1ojQYpkv2RKvaVG/DTN8A==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.2.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.2.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.2.0_1789349609143_0.48765121051453875","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.2.1","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.2.1","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"3d6865564123f3b62f5639b6b3567e3cb6f8b582","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.2.1.tgz","fileCount":10,"integrity":"sha512-w7/GuDTf6GK18ItZVy0m9gRbroGdR5EdIcZ2h7Ujw8fMmV2QqG7kJ4zfLyhB9r9nA/L5wv/SMn4Mk73gSkO5WQ==","signatures":[{"sig":"MEUCICZShNX3B5iG0ma5i/Ttw0/NmaiZlyTz+WJpR78eRwacAiEAvePKWSP8wV1oGzy5sz3/fwG9BqjzxrWxHp4iKtd2r8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCI945c7frecorfFg2FzMrhyMoa/vM47O9MMvRZXEb2pAIgcGlOYFRMMh4NiWlDcOjYIEb93FdSE/HL7nW1mrhzl8A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31653},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/d85ac9e1a9bb218f7be76e4993642998/elinpf-dsh-ops-shell-tool-0.2.1.tgz","_integrity":"sha512-w7/GuDTf6GK18ItZVy0m9gRbroGdR5EdIcZ2h7Ujw8fMmV2QqG7kJ4zfLyhB9r9nA/L5wv/SMn4Mk73gSkO5WQ==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.2.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.2.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.2.1_1789351435871_0.08309699263402237","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.3.0","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.3.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"7020a452c4266f1bb48e5a7d88091e9c848dc2a6","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.3.0.tgz","fileCount":10,"integrity":"sha512-MAnF+QXNHZ6qvsfDQQW212kCwdpAh0iRM51+BiQI1/JHzLoBM0X74Mm7lh6YVn9tufqFqIeEBldZ/7CDyUIsXQ==","signatures":[{"sig":"MEUCIFzNciOTGQhXECia2ftFo7blg9qmuXmspBCsf7tKu32pAiEAncmDeaFCFrPkcIuriOXkXcYbOezl7I9xAPpXOCA91VQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIE1J9Tkak5/A2YXrSrudCA2ObtPJQ+ais9Q0KJ3avw5lAiBRW5ljBsL1P1rBPaHVqOz1LA6+Ahxy5tZD+Tecg/3Jfw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31653},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/91d4587948ba39d70918d940695f6f6c/elinpf-dsh-ops-shell-tool-0.3.0.tgz","_integrity":"sha512-MAnF+QXNHZ6qvsfDQQW212kCwdpAh0iRM51+BiQI1/JHzLoBM0X74Mm7lh6YVn9tufqFqIeEBldZ/7CDyUIsXQ==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.3.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.3.0_1789355956610_0.7478337014623491","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@elinpf/dsh-ops-shell-tool","version":"0.4.0","license":"MIT","_id":"@elinpf/dsh-ops-shell-tool@0.4.0","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"dist":{"shasum":"e1b168aae78a5c4641d39ef47e8d05a260a319ae","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.4.0.tgz","fileCount":10,"integrity":"sha512-AQs48itkb0IaSzyD2FCfXnVZy+JCwlv6n9VJvfkH3fboCeSNbvdEIcjAD4msuKkjEGP5FrafqsfhRE5lOXEXyA==","signatures":[{"sig":"MEQCIHXkumaqxrSMJaL65ewR5UXAHGLMj0tK8e6uCbMs7R+eAiBepVeqnbongTIGJCnASGZPtSUCA9UQhel6aJbbdCAgOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCmOcfjOKC11D0RUKZqqskZniHDK6p27dUjtZM2+mlUowIgUSDQaqM1dysNlgdgFhVGifdfKkyyuP+FXZTBU7MiFaU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36754},"main":"lib/index.js","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/738fdd11d68077df0578bce88ac24858/elinpf-dsh-ops-shell-tool-0.4.0.tgz","_integrity":"sha512-AQs48itkb0IaSzyD2FCfXnVZy+JCwlv6n9VJvfkH3fboCeSNbvdEIcjAD4msuKkjEGP5FrafqsfhRE5lOXEXyA==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"_nodeVersion":"22.23.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.4.0"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/dsh-ops-shell-tool_0.4.0_1789542991358_0.18104123318614684","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"_id":"@elinpf/dsh-ops-shell-tool@0.4.1","dist":{"shasum":"b10b8fe1ea87ceff48981c224a652a8b1cd48ba3","tarball":"https://registry.npmjs.org/@elinpf/dsh-ops-shell-tool/-/dsh-ops-shell-tool-0.4.1.tgz","fileCount":10,"integrity":"sha512-XZNI8Ms80zFUTCgVPFpNcJtU0vQJorXBVEbvyYtC97HPOIksnpB2k3ScHqpF3aR/1SSNZfIeDGJTNLdPqk5qsA==","signatures":[{"sig":"MEUCIBN5vWRKrBddf8ko1jNSXz+bZFApcJzH4n6LWhlxJE2+AiEAndOP+m7A7vgQYswwq2U0uMCc5cLCfCyZl8XfASKDw/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC461gTJNCRhRfD0pzfFnBOETr4p3wnse7UXW3lB5UZwQIgDsWrSrmr60M1Dh4Lz4nHvf3g4ZMMn71jG94Meb3mrkY="}],"unpackedSize":36754},"main":"lib/index.js","name":"@elinpf/dsh-ops-shell-tool","type":"module","_from":"file:elinpf-dsh-ops-shell-tool-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/5b5fc353a3e5dadd1bc45614268e8e05/elinpf-dsh-ops-shell-tool-0.4.1.tgz","_integrity":"sha512-XZNI8Ms80zFUTCgVPFpNcJtU0vQJorXBVEbvyYtC97HPOIksnpB2k3ScHqpF3aR/1SSNZfIeDGJTNLdPqk5qsA==","_npmVersion":"10.9.8","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","directories":{},"maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"_nodeVersion":"22.23.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.4.1"},"peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-shell":"^0.1.0-rc.8","@deepseek-ai/dsh-tools":"^0.1.0-rc.8","@elinpf/dsh-ops-access":"^0.4.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-ops-shell-tool_0.4.1_1789699637510_0.9662909971472753"}}},"time":{"created":"2026-09-02T03:38:50.890Z","modified":"2026-09-18T02:47:17.725Z","0.1.0":"2026-09-02T03:38:51.188Z","0.1.1":"2026-09-02T03:58:30.744Z","0.1.2":"2026-09-02T05:55:18.068Z","0.1.3":"2026-09-02T07:32:21.375Z","0.1.4":"2026-09-02T07:54:09.647Z","0.1.5":"2026-09-02T08:00:22.332Z","0.1.6":"2026-09-04T03:10:57.928Z","0.1.7":"2026-09-07T08:04:41.533Z","0.2.0":"2026-09-14T01:33:29.232Z","0.2.1":"2026-09-14T02:03:55.973Z","0.3.0":"2026-09-14T03:19:16.708Z","0.4.0":"2026-09-16T07:16:31.439Z","0.4.1":"2026-09-18T02:47:17.599Z"},"license":"MIT","description":"Shared factory for ops-access consumer tools: standard shell result shape, output schema, render, and the resolve-per-call execute template.","maintainers":[{"name":"elinpf","email":"365433079@qq.com"}],"readme":"# @elinpf/dsh-ops-shell-tool\n\nops-access 消费方工具共享的工厂：统一的 shell 结果形状 `{ exitCode, stdout, stderr, command, error? }`、输出 schema 与 render、以及按调用解析（resolve-per-call）的 execute 模板。\n\n## 功能\n\n纯库（不是插件）——把每个 ops 命令工具（`ops-tool-kubectl`、`ops-tool-ceph`、`ops-tool-ssh`）否则会各自重复的样板收敛到一处。消费方在自己的插件里调用 `registerProfiledShellTool(ctx, spec)`，只保留身份四件套：工具名、解析的 ops-access kind、profile 参数名、`buildCommand`。\n\n- **统一结果形状** — 一份 `ShellToolResult` 定义、一份输出 schema、一份纯 render，所有消费方工具共用。\n- **按调用解析** — profile 在 execute 内通过 `ctx.get('opsAccess')` 解析，不做静态 inject，不缓存。\n- **凭据 token** — `buildCommand` 用 `ref(field)` 标记含文件的字段，生成展示 token `<id@tier:field>`；实际执行的命令携带 shell 转义后的真实值，而展示命令和捕获的 stdout/stderr 全部洗回 token。凭据路径永远不进入模型上下文或会话事件日志。\n- **诚实的 kill 报告** — 默认 30s 超时；信号死亡归一为 `exitCode: -1`，并在 `error` 字段写明原因（超时 / 调用方取消 / 信号名），绝不留一个光秃秃的 -1。\n- **环境故障翻译** — stderr 命中已知环境签名（如 ssh 启动期 `Couldn't open /dev/null`——沙箱/宿主机把 /dev/null 变不可写，命令根本没出门）时，`error` 字段追加定位结论与修复指引，避免模型误查凭证/网络/远端。\n- **stderr 噪音过滤** — 消费方声明的正则在清洗之后丢弃已知噪音行（如 ceph keyring 唠叨）。\n- **`shellQuote`** — 导出给需要把整条远端命令作为单个参数嵌入的消费方（ops-tool-ssh）。\n\n## 设计要点\n\n- **为什么是工厂而不是基类插件：** 三个消费方工具只差身份件。execute 模板收在这里，超时处理、kill 说明、凭据清洗只修一处，而不是三处。\n- **为什么用 `ctx.get` 按调用解析而不是静态 inject：** preset 并发挂载同组插件，静态 `inject: ['opsAccess']` 有对定义行死锁的风险；到工具调用时服务早已就绪。与 registry 文件同一纪律：按操作解析，什么都不缓存。\n- **为什么 token 按调用生成：** token → 真实值的映射只存活于单次 execute 内，凭据路径不可能跨调用、跨会话泄漏。\n\n## 配置项\n\n无 —— 本包没有插件 `Config`。所有行为由消费方通过 `ProfiledShellToolSpec` 参数化：`name`、`kind`、`targetParam`、三段描述文案、`buildCommand`、`timeoutMs`（默认 30000）、`perCallTimeout`（为工具增加 1–600 秒的 `timeoutSec` 调用参数）、`rejectShellComposition`（拒绝 `;` `&&` `||` 反引号 `$()` 与换行并给出教学式报错——单个 `|` 管道仍然允许）、`stderrNoise`。\n\n## 测试方式\n\n```sh\nnpx vitest run\n```\n\n测试用 mock ctx 驱动工厂：按调用解析、agent 透传、seam 缺失守卫、错误透传、exitCode 归一、超时/中止/信号三类 kill 说明、凭据 token 替换与清洗、stderr 噪音过滤、render 纯函数性，以及 HMR 卸载（fiber 的 effect disposer 执行后注册的工具随之消失）。\n","readmeFilename":"README.zh.md"}