{"_id":"@9apes/cli","_rev":"2-f35f9fdf90b66f72331d11c78c5934ed","name":"@9apes/cli","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@9apes/cli","version":"0.1.0","keywords":["cli","typescript","node"],"author":"","license":"ISC","_id":"@9apes/cli@0.1.0","maintainers":[{"name":"9apes-publisher","email":"pr.bot@nineapes.com"}],"bin":{"apesdev-cli":"dist/index-dev.js","apeslocal-cli":"dist/index-local.js"},"dist":{"shasum":"01d43915dcc7e26a50cc471e8bc143265669de70","tarball":"https://registry.npmjs.org/@9apes/cli/-/cli-0.1.0.tgz","fileCount":53,"integrity":"sha512-3H6x06ClJMTF7epd7DE6VdJvlQ/pO1OQ+jog3cp3NHokpH2HOpFe8ZJ+XiZUjlFO2IjjrMaOT1zRGClqB9xIUQ==","signatures":[{"sig":"MEUCIF6WtwYneOihQUPS19t7nsuo854H+UM8cfk2qdXu86yFAiEAtkPV6bwsSMrrOO73MDVSY/dpBjLlEb+AzR3Ot/FrNYw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111781},"main":"dist/index.js","type":"module","_from":"file:9apes-cli-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./vite":{"types":"./dist/vite-plugin.d.ts","import":"./dist/vite-plugin.js"}},"scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","format":"prettier --write src/**/*.ts","lint:fix":"eslint src/**/*.ts --fix","format:check":"prettier --check src/**/*.ts"},"_npmUser":{"name":"9apes-publisher","email":"pr.bot@nineapes.com"},"_resolved":"/private/var/folders/rr/7lns2rqj4174t781fftrv60r0000gn/T/dd9e33822cb87f3da76a51fe2cbd2f0f/9apes-cli-0.1.0.tgz","_integrity":"sha512-3H6x06ClJMTF7epd7DE6VdJvlQ/pO1OQ+jog3cp3NHokpH2HOpFe8ZJ+XiZUjlFO2IjjrMaOT1zRGClqB9xIUQ==","_npmVersion":"11.6.1","description":"A CLI tool built with TypeScript","directories":{},"_nodeVersion":"24.11.0","dependencies":{"axios":"^1.6.0","p-limit":"^7.2.0","commander":"14.0.1","fast-glob":"^3.3.3","form-data":"^4.0.0","cli-progress":"^3.12.0","@inquirer/prompts":"7.9.0"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^6.3.1","eslint":"8.57.0","prettier":"3.6.2","typescript":"5.9.3","@types/node":"24.9.1","@types/cli-progress":"^3.11.6","eslint-config-prettier":"10.1.8","@typescript-eslint/parser":"8.46.2","@typescript-eslint/eslint-plugin":"8.46.2"},"peerDependencies":{"vite":">=6"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.0_1771609465293_0.07438076228294799","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@9apes/cli","version":"0.1.1","type":"module","description":"Connects your production builds to the 9apes error tracking pipeline","main":"dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./vite":{"types":"./dist/vite-plugin.d.ts","import":"./dist/vite-plugin.js"},"./astro":{"types":"./dist/astro-integration.d.ts","import":"./dist/astro-integration.js"}},"bin":{"apeslocal-cli":"dist/index-local.js","apesdev-cli":"dist/index-dev.js"},"keywords":["cli","typescript","node"],"author":"","license":"ISC","devDependencies":{"@types/cli-progress":"^3.11.6","@types/node":"24.9.1","@typescript-eslint/eslint-plugin":"8.46.2","@typescript-eslint/parser":"8.46.2","eslint":"8.57.0","eslint-config-prettier":"10.1.8","prettier":"3.6.2","typescript":"5.9.3","vite":"^6.3.1"},"peerDependencies":{"vite":">=6"},"dependencies":{"@inquirer/prompts":"7.9.0","axios":"^1.6.0","cli-progress":"^3.12.0","commander":"14.0.1","fast-glob":"^3.3.3","form-data":"^4.0.0","p-limit":"^7.2.0"},"scripts":{"build":"tsc","dev":"tsc --watch","start":"node dist/index.js","clean":"rm -rf dist","lint":"eslint src/**/*.ts","lint:fix":"eslint src/**/*.ts --fix","format":"prettier --write src/**/*.ts","format:check":"prettier --check src/**/*.ts"},"types":"./dist/index.d.ts","_id":"@9apes/cli@0.1.1","_integrity":"sha512-T/HqwDPZtk6mXqhskUjE+p3CJqh2LySiUK+YT1ujjEdAL5E4IZW1L/9WQ0cK+YVaabEdbTfKfsBF2AOeUI5uTg==","_resolved":"/private/var/folders/rr/7lns2rqj4174t781fftrv60r0000gn/T/cd396aa8c7b44431da9851b8ada2c559/9apes-cli-0.1.1.tgz","_from":"file:9apes-cli-0.1.1.tgz","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-T/HqwDPZtk6mXqhskUjE+p3CJqh2LySiUK+YT1ujjEdAL5E4IZW1L/9WQ0cK+YVaabEdbTfKfsBF2AOeUI5uTg==","shasum":"1baa802803ad03bf27bc2f934d98fe52cfc2ea8b","tarball":"https://registry.npmjs.org/@9apes/cli/-/cli-0.1.1.tgz","fileCount":68,"unpackedSize":128663,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFJHpt6JIK7Fa4CsRB2dIgfUjcI3fdCdsLo/kejkNVEtAiB9hYUM3JCNeXLpnqIZ7lSb1oTWSi002OmVItPFagIRqw=="}]},"_npmUser":{"name":"9apes-publisher","email":"pr.bot@nineapes.com"},"directories":{},"maintainers":[{"name":"9apes-publisher","email":"pr.bot@nineapes.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.1.1_1771664198868_0.3160013107289783"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-20T17:44:25.200Z","modified":"2026-02-21T08:56:39.170Z","0.1.0":"2026-02-20T17:44:25.433Z","0.1.1":"2026-02-21T08:56:39.035Z"},"license":"ISC","keywords":["cli","typescript","node"],"description":"Connects your production builds to the 9apes error tracking pipeline","maintainers":[{"name":"9apes-publisher","email":"pr.bot@nineapes.com"}],"readme":"# @9apes/cli\n\n**Sourcemap tooling by [9Apes](https://9apes.com)**\n\n> Inject debug IDs into your JavaScript bundles and upload source maps to the 9Apes platform -- as a CLI or a Vite plugin.\n\n---\n\n## Overview\n\n`@9apes/cli` connects your production builds to the 9Apes error tracking pipeline. It generates unique debug IDs, injects them into compiled JavaScript files and their source maps, then uploads everything to your 9Apes project so stack traces can be un-minified in the dashboard.\n\n**A valid 9Apes API key is required.** Get yours at [9apes.com](https://9apes.com).\n\n### Two ways to use it\n\n| Method | Best for |\n| --- | --- |\n| **Vite plugin** (`@9apes/cli/vite`) | Vite-based apps -- runs automatically at the end of `vite build` |\n| **CLI** (`apesdev-cli` / `apeslocal-cli`) | Any build tool -- run as a post-build step |\n\n---\n\n## Installation\n\n```bash\npnpm add -D @9apes/cli\n```\n\n---\n\n## Vite Plugin\n\nAdd `withNineapesSourcemaps` to your Vite config and remove any manual post-build CLI step -- the plugin handles injection and upload automatically when `vite build` finishes.\n\n```typescript\n// vite.config.ts\nimport { defineConfig } from 'vite';\nimport vue from '@vitejs/plugin-vue';\nimport { withNineapesSourcemaps } from '@9apes/cli/vite';\n\nexport default defineConfig({\n  plugins: [\n    vue(),\n    withNineapesSourcemaps({\n      projectId: 'my-project',\n      apiKey: 'YOUR_API_KEY',\n    }),\n  ],\n  build: {\n    sourcemap: true,\n  },\n});\n```\n\n### Options\n\n| Option | Type | Required | Description |\n| --- | --- | --- | --- |\n| `projectId` | `string` | Yes | Project identifier in your 9Apes dashboard |\n| `apiKey` | `string` | Yes | 9Apes API key |\n| `baseUrl` | `string` | No | API base URL (defaults to `https://dev.nineapes.com/api/v1`) |\n| `releaseVersion` | `string` | No | Tag uploads with a release version |\n\n> Make sure `build.sourcemap` is `true` in your Vite config -- the plugin needs `.js.map` files to work.\n\n---\n\n## CLI Usage\n\nTwo binaries are provided for different environments:\n\n| Binary | API endpoint | Config file |\n| --- | --- | --- |\n| `apesdev-cli` | `https://dev.nineapes.com/api/v1` | `config-dev.json` |\n| `apeslocal-cli` | `http://127.0.0.1:8000/api/v1` | `config-local.json` |\n\nBoth CLIs share the same command structure.\n\n### `config set [apikey]`\n\nSave an API key for subsequent commands.\n\n```bash\napesdev-cli config set              # interactive prompt\napesdev-cli config set YOUR_KEY     # inline\n```\n\n### `config show`\n\nDisplay the currently saved API key.\n\n```bash\napesdev-cli config show\n```\n\n### `sourcemaps inject <path>`\n\nInject debug IDs and upload source maps from a build output directory.\n\n```bash\napesdev-cli sourcemaps inject ./dist --projectid my-project\napesdev-cli sourcemaps inject ./dist --projectid my-project --release-version 1.2.0\napesdev-cli sourcemaps inject ./dist --projectid my-project --apikey YOUR_KEY\n```\n\n| Argument / Option | Required | Description |\n| --- | --- | --- |\n| `<path>` | Yes | Directory containing `.js` and `.js.map` files |\n| `--projectid <id>` | Yes | Project identifier |\n| `--release-version <version>` | No | Release version tag |\n| `--apikey <key>` | No | API key (overrides saved config) |\n\n---\n\n## How It Works\n\n1. Scans the output directory for `.js` and `.js.map` file pairs\n2. Generates a unique UUID (debug ID) per file pair\n3. Injects a small runtime snippet into each `.js` file that maps stack traces to its debug ID\n4. Adds a `debug_id` field to each `.js.map` file\n5. Uploads both files to 9Apes with project ID, release version, and git commit hash\n6. The 9Apes dashboard uses these debug IDs to match production errors to their original source maps\n\n---\n\n## License\n\nThis software is proprietary and provided under a commercial license by **9Apes Technologies**.\nUnauthorized copying, modification, distribution, or use of this software outside the terms\nof your subscription agreement is strictly prohibited.\n\nRefer to your service agreement or contact [support@9apes.com](mailto:support@9apes.com) for licensing details.\n\n---\n\n## Support\n\n| Channel | Details |\n| --- | --- |\n| Documentation | [docs.9apes.com](https://docs.9apes.com) |\n| Email | [support@9apes.com](mailto:support@9apes.com) |\n| Dashboard | [app.9apes.com](https://dash.9apes.com) |\n\nFor enterprise support plans and SLAs, contact your account manager.\n","readmeFilename":"README.md"}