{"_id":"@cybersierra/cybersierra-cli","_rev":"4-8670909abcabe291b345b1453d7c3bff","name":"@cybersierra/cybersierra-cli","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@cybersierra/cybersierra-cli","version":"1.0.0","keywords":["grc","tprm","compliance","cybersierra","cli"],"author":{"name":"Cyber Sierra"},"license":"UNLICENSED","_id":"@cybersierra/cybersierra-cli@1.0.0","maintainers":[{"name":"vivekvenukv","email":"vivek.v@keyvalue.systems"},{"name":"cybersierra-cli","email":"devtools@cybersierra.co"}],"bin":{"cybersierra":"bin/cybersierra"},"dist":{"shasum":"cc71d86aed37d061a99a529654bb6e95ab304269","tarball":"https://registry.npmjs.org/@cybersierra/cybersierra-cli/-/cybersierra-cli-1.0.0.tgz","fileCount":4,"integrity":"sha512-6L2s5J/OA4PkBqq3VQLF+gIYXB61w3VWNKGik1DKKYIo5DruHSSg9dhFZn1JFac4czJ0Ugu/jn0d5u7r1dKyAw==","signatures":[{"sig":"MEUCIQDL/nY7JY3jQIw3bsl7YVorwohlNfHJB5LMBNqURhhxCgIgGg8BL0+iL9XRAkKYXUBnNlZk7j4qSLt3BZEEw93E8gI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":265188},"_from":"file:cybersierra-cybersierra-cli-1.0.0.tgz","engines":{"node":">=18"},"_npmUser":{"name":"vivekvenukv","email":"vivek.v@keyvalue.systems"},"_resolved":"/Users/vivek/Work/morpheus_backend/morpheus/cybersierra-cybersierra-cli-1.0.0.tgz","_integrity":"sha512-6L2s5J/OA4PkBqq3VQLF+gIYXB61w3VWNKGik1DKKYIo5DruHSSg9dhFZn1JFac4czJ0Ugu/jn0d5u7r1dKyAw==","_npmVersion":"8.19.4","description":"Command-line client for the Cyber Sierra GRC platform. The command surface is loaded from your own backend after you authenticate.","directories":{},"_nodeVersion":"16.20.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cybersierra-cli_1.0.0_1787045260773_0.4006805161282083","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@cybersierra/cybersierra-cli","version":"1.0.1","keywords":["grc","tprm","compliance","cybersierra","cli"],"author":{"name":"Cyber Sierra"},"license":"UNLICENSED","_id":"@cybersierra/cybersierra-cli@1.0.1","maintainers":[{"name":"vivekvenukv","email":"vivek.v@keyvalue.systems"},{"name":"hatrg","email":"ha.t@cybersierra.co"},{"name":"cybersierra-cli","email":"devtools@cybersierra.co"}],"bin":{"cybersierra":"bin/cybersierra"},"dist":{"shasum":"67932a6423440ab58ff3e1fb2f1cebf13dcf460b","tarball":"https://registry.npmjs.org/@cybersierra/cybersierra-cli/-/cybersierra-cli-1.0.1.tgz","fileCount":4,"integrity":"sha512-XMDTe6H8GHLSfKL3ACLV62iDu77eWLUJMEqaxFIIT7xnngTq/AhhmEHAZ4v0N88j6dXIaNxPI1sCx32TZ52mvg==","signatures":[{"sig":"MEQCIByU0HccNR9mE34JKf1Ehz9UXKhYhGoFLiiTY+cfFBU+AiANZ2uk+awitwS/JK5w5ROACIoitLfsi6pmSWdNRFJiIw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDbRZSjFrKtHa2gVCu9jKQO0rP+37X7L+IKaQCWjysMZAIgbSmm6Q0/NzQMcecgiyrB3TyAgEgibSRv1322nnLVhdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":265348},"_from":"file:cybersierra-cybersierra-cli-1.0.1.tgz","engines":{"node":">=18"},"_npmUser":{"name":"hatrg","email":"ha.t@cybersierra.co"},"_resolved":"/Users/ha/Work/cybersierra/morpheus_backend/morpheus/cybersierra-cybersierra-cli-1.0.1.tgz","_integrity":"sha512-XMDTe6H8GHLSfKL3ACLV62iDu77eWLUJMEqaxFIIT7xnngTq/AhhmEHAZ4v0N88j6dXIaNxPI1sCx32TZ52mvg==","_npmVersion":"8.5.5","description":"Command-line client for the Cyber Sierra GRC platform. The command surface is loaded from your own backend after you authenticate.","directories":{},"_nodeVersion":"16.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/cybersierra-cli_1.0.1_1790743387211_0.5544025402022399","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-08-18T09:27:40.489Z","modified":"2026-09-30T05:30:24.651Z","1.0.0":"2026-08-18T09:27:40.911Z","1.0.1":"2026-09-30T04:43:07.310Z"},"author":{"name":"Cyber Sierra"},"license":"UNLICENSED","keywords":["grc","tprm","compliance","cybersierra","cli"],"description":"Command-line client for the Cyber Sierra GRC platform. The command surface is loaded from your own backend after you authenticate.","maintainers":[{"email":"ha.t@cybersierra.co","name":"hatrg"},{"email":"devtools@cybersierra.co","name":"cybersierra-cli"}],"readme":"# @cybersierra/cybersierra-cli\n\nCommand-line client for the [Cyber Sierra](https://cybersierra.co) GRC platform — third-party risk assessments, permissions, and platform health from a terminal, a CI pipeline, or an AI agent.\n\n```bash\nnpm install -g @cybersierra/cybersierra-cli\n```\n\n## This package ships without a command surface\n\nThe CLI's commands are not compiled in — they are **data**, loaded from your own backend once you authenticate. A fresh install knows how to log in and nothing else:\n\n```bash\n$ cybersierra --help\nCommands:\n  auth          Manage CLI authentication\n  self-update   Sync the CLI command surface to the backend it points at\n  manifest      Print the agent command catalog as JSON\n  version       Print CLI and loaded manifest versions\n\nNo command surface loaded yet. Run `cybersierra auth login` to authenticate —\nthe platform commands are fetched from your backend on login.\n```\n\nThis is deliberate. The set of API operations available to you depends on your deployment, so it is served by your deployment — not baked into a public package.\n\n## Getting started\n\n```bash\n# email + password\ncybersierra auth login --url https://morpheus-api.<your-env>.cybersierra.ai \\\n                       --org <org-id> --email you@company.com\n\n# SSO or MFA accounts — opens a browser\ncybersierra auth login-browser --url https://morpheus-api.<your-env>.cybersierra.ai\n```\n\nLogin stores a profile at `~/.cybersierra/config.json` (mode `0600`; the JWT only, never your password) and immediately fetches your command surface. After that:\n\n```bash\ncybersierra manifest                        # what can I do? (JSON catalog)\ncybersierra tprm assessments list           # run a command\n```\n\n## Commands\n\nEvery platform command follows `cybersierra <module> <resource> <action>`. Run `cybersierra manifest` for the full catalog as structured JSON — one call, including each parameter's type, defaults, and allowed values, plus a `safe` flag marking read-only operations.\n\n## Output\n\nstdout is always a JSON envelope; errors go to stderr.\n\n```json\n{ \"data\": [ ... ], \"meta\": { \"total\": 112, \"page\": 1, \"limit\": 50 } }\n{ \"error\": { \"code\": 401, \"message\": \"Token expired. Run: cybersierra auth login\" } }\n```\n\nExit codes: `0` success · `1` API error · `2` auth · `3` not found · `4` forbidden.\n\n## Staying in sync\n\nThe CLI checks your backend's public `/health` checksum periodically and tells you when your surface is stale. To sync on demand:\n\n```bash\ncybersierra self-update           # fetch the current surface\ncybersierra self-update --check   # compare only; exit 3 if out of sync\n```\n\nSet `MORPHEUS_NO_UPDATE_CHECK=1` to disable the background check entirely.\n\n## Configuration\n\n| Variable | Purpose |\n|---|---|\n| `MORPHEUS_TOKEN` | JWT — preferred for agents and CI |\n| `MORPHEUS_BASE_URL` | Backend base URL |\n| `MORPHEUS_ORG` | Organisation / tenant ID |\n| `MORPHEUS_EMAIL` / `MORPHEUS_PASSWORD` | Non-interactive login |\n| `MORPHEUS_PROFILE` via `--profile <name>` | Named profiles for multiple tenants |\n| `MORPHEUS_CONFIG_DIR` | Override `~/.cybersierra` |\n| `MORPHEUS_CLIENT` | Force the client tag (`agent` / `operator` / `ci`) |\n| `MORPHEUS_NO_UPDATE_CHECK` | Disable the background drift check |\n\nEnvironment variables always take precedence over the stored profile.\n","readmeFilename":"README.md"}