{"_id":"@benjick/holden-cli","_rev":"8-860a063172a9f53d3192581098c26e52","name":"@benjick/holden-cli","dist-tags":{"alpha":"0.1.0-alpha.6","latest":"0.1.0-alpha.10"},"versions":{"0.1.0-alpha.1":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.1","_id":"@benjick/holden-cli@0.1.0-alpha.1","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"bin":{"holden":"dist/main.js"},"dist":{"shasum":"4c4a58a071e0191fe4155567e6803b380093e3ed","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.1.tgz","fileCount":2,"integrity":"sha512-QT77nCv8xws1X8YJh00TxIhbJKOy8avoZ46XU+2aGHYwpwocr99TIDj6R1maGsVKGRbzbp/pUQ3vQyyNzcAPjg==","signatures":[{"sig":"MEYCIQCMq8XQqXBMZ0wM0tQfbqKgTrAnpywLJ4KjF5qR5prmsgIhAMtGAj7OQ/g7123wY5g3YPZvX1QlW6yKidXf/7TAO+ha","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":543062},"type":"module","gitHead":"ed779560511354d885b28ae393bb796ba9501f8f","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"benjick","email":"benjick@dumfan.net"},"_npmVersion":"11.7.0","directories":{},"_nodeVersion":"25.3.0","dependencies":{"yaml":"^2","commander":"^14"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","@types/node":"^22","@holden/types":"workspace:*","@holden/config":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.1_1772984612018_0.0415490186495886","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.2":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.2","_id":"@benjick/holden-cli@0.1.0-alpha.2","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"homepage":"https://github.com/benjick/holden#readme","bugs":{"url":"https://github.com/benjick/holden/issues"},"bin":{"holden":"dist/main.js"},"dist":{"shasum":"a4e6650bfa7bb68ceddab10cef82adaad5669e61","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.2.tgz","fileCount":3,"integrity":"sha512-b7BQ6yZw8DgGx5eI5lgVRhdAee7ics8CRYjsZ4WTk+Ia/y2cXtqVB0pmNMfoLRAOoIS7lLa6PAt4m1rxgu63kA==","signatures":[{"sig":"MEQCIFmbCOOb9WTG+WYT5lbgW59rmHdGcHUfQWBp0j5JLsLTAiBTPIcCSZG0RANMtKAQT1Ot5nBV5SWjbiDCKjjB3o+D7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":547267},"type":"module","gitHead":"8f2d919c6502878690c2a7c2bfcb2a67d22393a9","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"repository":{"url":"git+https://github.com/benjick/holden.git","type":"git","directory":"apps/cli"},"_npmVersion":"11.9.0","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2","commander":"^14"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.5.1","@types/node":"^22","@holden/types":"workspace:*","@holden/config":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.2_1773164084995_0.15971172051445826","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.3":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.3","_id":"@benjick/holden-cli@0.1.0-alpha.3","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"homepage":"https://github.com/benjick/holden#readme","bugs":{"url":"https://github.com/benjick/holden/issues"},"bin":{"holden":"dist/main.js"},"dist":{"shasum":"cbd3eb8320fe06c6417ff19eb5a77db7ddd24162","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.3.tgz","fileCount":3,"integrity":"sha512-twwbLs8yqOYOgMyK0o3h2JA/cbnWlKL+6UCykOzXBQCZxLfB9cVv6cUpuFRtnjYuJjEhV4zEQ6EAuBqC/qI11g==","signatures":[{"sig":"MEQCIBet1iSdOvWDI8hah+ZjG2iwTmDUg5cX2VkGCCt/6G+EAiB90pOxvUMFCybho1pddzbcFtsjbaRFmeiExpb2rXSQjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":547962},"type":"module","gitHead":"194461b80d94008f08743ae013db087f59f5a2b9","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"repository":{"url":"git+https://github.com/benjick/holden.git","type":"git","directory":"apps/cli"},"_npmVersion":"11.9.0","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2","commander":"^14"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.5.1","@types/node":"^22","@holden/types":"workspace:*","@holden/config":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.3_1773185966874_0.24684684577728744","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.6":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.6","_id":"@benjick/holden-cli@0.1.0-alpha.6","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"homepage":"https://github.com/benjick/holden#readme","bugs":{"url":"https://github.com/benjick/holden/issues"},"bin":{"holden":"dist/main.js"},"dist":{"shasum":"824cd0a3ef16db145d9c66fca521cf87966d1dea","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.6.tgz","fileCount":3,"integrity":"sha512-GC/GBq8bPvQo28MnC1x4DvxtuW1YgHYEbwYAoNZiMYhA+S8bzWn0EKPp0gyoXDzlHl4ajG537eCGiU4GRDt0ZA==","signatures":[{"sig":"MEQCIEC1CpaXEygUFK+5WAZPJcDc9CiPOfR3nL++/XmUDzgrAiB0lZuKrU3/EQaRuD1nJlhityjDG8H6bKiJJ5EAMg1/0g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":548890},"type":"module","gitHead":"9173aaa1d38acaa85d2404cba4f838cd9207c433","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"repository":{"url":"git+https://github.com/benjick/holden.git","type":"git","directory":"apps/cli"},"_npmVersion":"11.9.0","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2.8.0","commander":"^14","age-encryption":"^0.3.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.5.1","@types/node":"^22.19.9","@holden/types":"workspace:*","@holden/config":"workspace:*","@holden/tsconfig":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.6_1773347867420_0.048200961868114955","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.7":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.7","_id":"@benjick/holden-cli@0.1.0-alpha.7","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"homepage":"https://github.com/benjick/holden#readme","bugs":{"url":"https://github.com/benjick/holden/issues"},"bin":{"holden":"dist/main.js"},"dist":{"shasum":"06d24ec947670feacfc7262fc50572fa6bd6289b","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.7.tgz","fileCount":3,"integrity":"sha512-ebgcbOVZN/ekbYlleNQ3ANDqHyadzYAtc+W+L75f7waQ7oK6hRegEuwd/dPvIoIskva0cy1+TZWSNtrCizRsXQ==","signatures":[{"sig":"MEQCIH7UQgf8wzIeTuqtAzNJC8BO2R4W0InUbmnalOB3pScTAiAP4jSazZm3fq5BfJya+uwGvBObLKIg/ixbcR9nGijRNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":545556},"type":"module","gitHead":"7da2e68008044b2bab83c0ee4f374cf1df1f01a4","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"repository":{"url":"git+https://github.com/benjick/holden.git","type":"git","directory":"apps/cli"},"_npmVersion":"11.9.0","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2.8.0","commander":"^14","age-encryption":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","@types/node":"^22.19.9","@holden/types":"workspace:*","@holden/config":"workspace:*","@holden/tsconfig":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.7_1773603799746_0.05516117794855413","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.8":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.8","_id":"@benjick/holden-cli@0.1.0-alpha.8","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"homepage":"https://github.com/benjick/holden#readme","bugs":{"url":"https://github.com/benjick/holden/issues"},"bin":{"holden":"dist/main.js"},"dist":{"shasum":"12571d4a0992831f4d2120b340394444e0d7e1a8","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.8.tgz","fileCount":3,"integrity":"sha512-reLdJNlTQKWKVOe3gJbldiuYMfbZikw8BjkZpHXFhzabZiw9EKgWvr4wEycaf9P37y7q2yVal4FBdDobjf2qag==","signatures":[{"sig":"MEQCIHsOGr5HHSMRlZJtZnx2Rrie7SBmy1xQw67zsBUH2sQYAiBB/nKv9GK8Tr3xjmkMNUUblB+N7jTTDGpKlaZjhf4BUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":547078},"type":"module","gitHead":"366436c6f91c93db4f8decc0b0147ac48ba36823","scripts":{"dev":"tsx src/main.ts","build":"tsup","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"repository":{"url":"git+https://github.com/benjick/holden.git","type":"git","directory":"platform/cli"},"_npmVersion":"11.9.0","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"yaml":"^2.8.0","commander":"^14","age-encryption":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","@types/node":"^22.19.9","@holden/types":"workspace:*","@holden/config":"workspace:*","@holden/tsconfig":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/holden-cli_0.1.0-alpha.8_1773852394050_0.36055369310830754","host":"s3://npm-registry-packages-npm-production"}},"0.1.0-alpha.10":{"name":"@benjick/holden-cli","version":"0.1.0-alpha.10","repository":{"type":"git","url":"git+https://github.com/benjick/holden.git","directory":"platform/cli"},"bin":{"holden":"dist/main.js"},"type":"module","scripts":{"build":"tsup","dev":"tsx src/main.ts","typecheck":"tsc --noEmit"},"dependencies":{"age-encryption":"^0.3.0","commander":"^14","yaml":"^2.8.0"},"devDependencies":{"@holden/config":"workspace:*","@holden/tsconfig":"workspace:*","@holden/types":"workspace:*","@types/node":"^22.19.9","tsup":"^8.5.1"},"gitHead":"a65b5df36bae8548f655efb6c6afb5a9d349a42a","_id":"@benjick/holden-cli@0.1.0-alpha.10","description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","bugs":{"url":"https://github.com/benjick/holden/issues"},"homepage":"https://github.com/benjick/holden#readme","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-D/5GmKY3d8tx4OVFtVS7x9fxivBBn/1EU6+JLkRRxGNtJ7S8uZh0EjdvdEs66nFmoyHics172USh2A6B7ZVj3A==","shasum":"15cdf2109b50efd3f80a9a2e72c1ccbc73baad0c","tarball":"https://registry.npmjs.org/@benjick/holden-cli/-/holden-cli-0.1.0-alpha.10.tgz","fileCount":3,"unpackedSize":547503,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD0eR1lPC/sTACBRdUTu/oQ8ZQ0F6XZwtPCuoJT8/7r+QIgW2oDxTAUUe1CrB3BAVfZTkTKwzzgPFdb5IoXTcNSybE="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7504cf63-770e-4f7a-afc1-49edce801090"}},"directories":{},"maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/holden-cli_0.1.0-alpha.10_1773957444077_0.5439022506125466"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-08T15:43:31.900Z","modified":"2026-03-19T21:57:24.331Z","0.1.0-alpha.1":"2026-03-08T15:43:32.186Z","0.1.0-alpha.2":"2026-03-10T17:34:45.127Z","0.1.0-alpha.3":"2026-03-10T23:39:27.076Z","0.1.0-alpha.6":"2026-03-12T20:37:47.754Z","0.1.0-alpha.7":"2026-03-15T19:43:19.901Z","0.1.0-alpha.8":"2026-03-18T16:46:34.217Z","0.1.0-alpha.10":"2026-03-19T21:57:24.233Z"},"bugs":{"url":"https://github.com/benjick/holden/issues"},"homepage":"https://github.com/benjick/holden#readme","repository":{"type":"git","url":"git+https://github.com/benjick/holden.git","directory":"platform/cli"},"description":"CLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.","maintainers":[{"name":"benjick","email":"benjick@dumfan.net"}],"readme":"# @benjick/holden-cli\n\nCLI for [Holden](https://github.com/benjick/holden) — a self-hosted, GitOps-based container orchestrator.\n\n> **Alpha** — Holden is under active development. Expect breaking changes.\n\n## Install\n\n```bash\nnpm install -g @benjick/holden-cli@alpha\n```\n\n## Setup\n\nPoint the CLI at your Holden server:\n\n```bash\nholden config set server user@myserver.example.com\n```\n\nThis fetches the server's encryption key via SSH and caches it locally for encrypting secrets.\n\n## Commands\n\n### `holden vars set <key> [value]`\n\nSet a config variable or encrypted secret in `holden.vars.yml`.\n\n```bash\nholden vars set LOG_LEVEL debug\nholden vars set API_KEY --secret sk-secret-key\nholden vars set API_KEY --secret  # prompts for hidden input\n```\n\n### `holden vars get <key>`\n\nRead a config variable.\n\n```bash\nholden vars get LOG_LEVEL        # debug\nholden vars get API_KEY           # [secret]\nholden vars get API_KEY --show-secrets  # sk-secret-key\n```\n\n### `holden validate`\n\nValidate Holden configuration files (YAML syntax, required fields, duplicate app IDs).\n\n```bash\nholden validate\n```\n\n### `holden deploy [app]`\n\nTrigger a reconcile cycle on the server via SSH.\n\n```bash\nholden deploy          # all apps\nholden deploy my-app   # specific app\n```\n\n### `holden config set/get`\n\nManage CLI settings (`server`, `port`).\n\n```bash\nholden config set server user@myserver.example.com\nholden config get server\n```\n","readmeFilename":"README.md"}