agents-opencode
Advanced tools
+6
-2
| { | ||
| "name": "agents-opencode", | ||
| "version": "2.3.1", | ||
| "version": "2.3.2", | ||
| "description": "OpenCode Agents: Intelligent AI assistants for software development. Features 9 specialized agents (including legal-advisor for license auditing and compliance), 14 coding standards, automated code review, documentation generation, OpenCode plugin compatibility, and cross-platform installation. Supports .NET, Python, TypeScript, Flutter, Go, Java, Node.js, React, Ruby, and Rust with plan-first execution and context-aware assistance.", | ||
| "files": [ | ||
| "install.js", | ||
| ".opencode", | ||
| ".opencode/agents", | ||
| ".opencode/commands", | ||
| ".opencode/instructions", | ||
| ".opencode/plugins", | ||
| ".opencode/skills", | ||
| "opencode.json", | ||
@@ -9,0 +13,0 @@ "scripts/lib" |
+105
-141
@@ -9,15 +9,27 @@ # OpenCode Agents | ||
| Lean OpenCode agent pack for fast setup, safer skill loading, and production-ready workflows. | ||
| **9 specialized agents, 23 on-demand skills, production-ready workflows.** | ||
| Install once, get 97% context cache hits — sessions start near-instantly and cost ~20× less. | ||
| Also available for Claude Code — see [Installation](#installation). | ||
| ## Why this pack | ||
| ## Efficiency | ||
| - **Fast onboarding:** install in minutes with `npx`. | ||
| - **Clear execution flow:** plan, implement, review, and document with purpose-built agents. | ||
| - **Safer defaults:** on-demand skills + deny-by-default skill permissions. | ||
| - **Operationally ready:** built-in validation and release automation. | ||
| OpenCode's context caching dramatically reduces token consumption across sessions. | ||
| The following metrics are from production usage (May–July 2026) with the | ||
| `deepseek-v4-pro` model. | ||
| Quick jump: [Agents](#agents) · [Skills Matrix](./docs/skills-matrix.md) · [Commands](#commands) · [Full Docs](https://shahboura.github.io/agents-opencode/) | ||
| | Metric | May 2026 | June 2026 | July 2026 | Combined | | ||
| |---|---|---|---|---| | ||
| | Cache Hit Tokens | 263.3M | 21.9M | 145.0M | 430.2M | | ||
| | Cache Miss Tokens | 7.9M | 1.3M | 2.7M | 11.9M | | ||
| | Output Tokens | 0.8M | 0.2M | 0.5M | 1.5M | | ||
| | Total Requests | 1,407 | 380 | 1,016 | 2,803 | | ||
| | **Cache Hit Rate** | **97.1%** | **94.5%** | **98.2%** | **97.3%** | | ||
| | Avg Tokens/Request | 193K | 62K | 146K | 158K | | ||
| Key takeaway: persistent context reuse keeps ~97% of input tokens in cache, | ||
| avoiding costly re-processing across agent sessions. Cache-hit tokens cost | ||
| ~120× less than cache-miss tokens, translating to substantial efficiency | ||
| gains for long-running multi-agent workflows. | ||
| ## Quick Start | ||
@@ -28,12 +40,9 @@ | ||
| ```bash | ||
| # Via npx (recommended) | ||
| npx agents-opencode --global | ||
| ``` | ||
| # Alternative (direct npm install) | ||
| npm install -g agents-opencode && agents-opencode --global | ||
| <details><summary>More install options (filter, update, uninstall, status)</summary> | ||
| # Project install (current directory only) | ||
| npx agents-opencode --project . | ||
| # Filter language instruction references for a lighter install | ||
| ```bash | ||
| # Filter language references for a lighter install | ||
| npx agents-opencode --global --languages python,typescript | ||
@@ -44,14 +53,5 @@ | ||
| # Force update both global + current project scopes | ||
| npx agents-opencode --update --all | ||
| # Uninstall current project scope (default) | ||
| # Uninstall | ||
| npx agents-opencode --uninstall | ||
| # Uninstall global scope only | ||
| npx agents-opencode --uninstall --global | ||
| # Uninstall both global + current project scopes | ||
| npx agents-opencode --uninstall --all | ||
| # Check detected installation scopes | ||
@@ -61,28 +61,14 @@ npx agents-opencode --status | ||
| Install behavior note: | ||
| - `npx`/`npm` installs from the published npm package version (deterministic release artifact). | ||
| - npm package and installer command: `agents-opencode` | ||
| - OpenCode CLI runtime command: `opencode` | ||
| - `--languages` filters language instruction reference files; runtime skill loading remains on-demand per agent allowlists. | ||
| **Install:** npm package and installer command: `agents-opencode`. OpenCode CLI runtime command: `opencode`. | ||
| Uninstall behavior: | ||
| - `npx agents-opencode --uninstall` targets the **current project** by default. | ||
| - Use `--global` or `--all` for explicit scope control. | ||
| - Uninstall removes installer-managed files via install manifest tracking. | ||
| - Project backups: `<project>/.opencode/.backups/<timestamp>--<operation>--<scope>/` | ||
| - Global backups: `~/.config/opencode/.backups/<timestamp>--<operation>--<scope>/` | ||
| - Backup retention: latest 10 sessions and sessions newer than 30 days. | ||
| **Uninstall:** targets current project by default; use `--global` or `--all` for | ||
| explicit scope. Creates timestamped backups before removal. | ||
| Restore from backup: | ||
| 1. Open the latest backup session folder. | ||
| 2. Review `backup-manifest.json` for file paths. | ||
| 3. Copy files back to their original paths. | ||
| **Update:** auto-detects installed scopes; use `--all`, `--global`, or | ||
| `--project [dir]` for explicit scope. | ||
| Update behavior: | ||
| - `npx agents-opencode --update` auto-detects and updates installed scopes (global and/or current project). | ||
| - Use `--all`, `--global`, or `--project [dir]` to force explicit update scope. | ||
| **Config:** installer merges only missing global permission defaults into | ||
| `opencode.json`. Existing provider/model/instructions settings are preserved. | ||
| Configuration behavior: | ||
| - Installer merges only missing global permission defaults (`external_directory`, `doom_loop`) into `opencode.json`. | ||
| - Existing provider/model/instructions settings are preserved and never overwritten by installer defaults. | ||
| </details> | ||
@@ -92,65 +78,67 @@ Then run: | ||
| ```bash | ||
| opencode | ||
| /init | ||
| opencode # start the TUI | ||
| /init # initialize a new session | ||
| @orchestrator Build a REST API with JWT auth | ||
| ``` | ||
| ## Installation | ||
| The orchestrator plans, delegates to @codebase for implementation, | ||
| @review for quality checks, and @docs for documentation — all in one session. | ||
| ### npx (Recommended) | ||
| ## Agents | ||
| ```bash | ||
| npx agents-opencode --global | ||
| ``` | ||
| | Agent | Best For | | ||
| |---|---| | ||
| | `@orchestrator` | End-to-end features: plans, delegates to specialists, validates results | | ||
| | `@codebase` | Write code across 10+ languages with auto-detected project conventions | | ||
| | `@planner` | Architecture reviews, risk assessment, step-by-step implementation plans | | ||
| | `@review` | Catch bugs, security holes, and perf issues before they ship | | ||
| | `@docs` | READMEs, API docs, ADRs, wiki pages | | ||
| | `@blogger` | Blog posts, YouTube scripts, podcast outlines, resumes, LinkedIn profiles | | ||
| | `@brutal-critic` | Ruthless content QA against proven frameworks with actionable scores | | ||
| | `@em-advisor` | 1-on-1 prep, team strategy, roadmap planning | | ||
| | `@legal-advisor` | License auditing, compliance checks, IP review, export controls | | ||
| ### Claude Code Plugin | ||
| Canonical source for exact allowlists and skill triggers: [Skills Matrix](./docs/skills-matrix.md) | ||
| ```bash | ||
| # Add marketplace (one-time) | ||
| /plugin marketplace add shahboura/agents-opencode-claude | ||
| ## Commands | ||
| # Install | ||
| /plugin install agents-opencode@shahboura | ||
| Type `/command-name` in the TUI to run: | ||
| # Update | ||
| /plugin update agents-opencode@shahboura | ||
| ``` | ||
| | Command | Description | | ||
| |---|---| | ||
| | `/code-review` | Comprehensive code review | | ||
| | `/security-audit` | Security audit | | ||
| | `/generate-tests` | Unit test generation | | ||
| | `/refactor-plan` | Refactoring plan | | ||
| | `/architecture-review` | Architecture review | | ||
| | `/architecture-decision` | ADR creation | | ||
| | `/api-docs` | Generate API documentation | | ||
| | `/create-readme` | Generate README | | ||
| | `/blog-post` | Blog post creation | | ||
| | `/content-review` | Content quality scoring | | ||
| | `/plan-project` | Multi-phase project planning | | ||
| | `/execution-loop` | Bounded iterative execution workflow | | ||
| | `/stop-loop` | Stop loop and summarize state | | ||
| | `/checkpoint` | Phase-boundary checkpoint for human decision | | ||
| | `/1-on-1-prep` | Meeting preparation | | ||
| Gives Claude Code access to the same 23 on-demand skills. Skills load only when | ||
| invoked — no context cost until you use them. See [adapters/claude-code/](./adapters/claude-code/) | ||
| for the plugin manifest and generator script. | ||
| ## Why this pack | ||
| ## Agents | ||
| - **Fast onboarding:** install in minutes with `npx`. | ||
| - **Clear execution flow:** plan, implement, review, and document with purpose-built agents. | ||
| - **Safer defaults:** on-demand skills + deny-by-default skill permissions. | ||
| - **Operationally ready:** built-in validation and release automation. | ||
| | Agent | Best For | | ||
| |-------|----------| | ||
| | `@orchestrator` | Multi-phase coordination | | ||
| | `@planner` | Read-only architecture/planning | | ||
| | `@codebase` | Feature implementation | | ||
| | `@review` | Security/performance/code quality | | ||
| | `@docs` | Documentation updates | | ||
| | `@em-advisor` | EM/leadership guidance | | ||
| | `@blogger` | Blog/video/podcast drafting | | ||
| | `@brutal-critic` | Final content quality gate | | ||
| | `@legal-advisor` | Legal research, jurisdiction-aware compliance, contract review, license auditing, data privacy, IP, export controls | | ||
| Canonical source for exact allowlists and skill triggers: [Skills Matrix](./docs/skills-matrix.md) | ||
| ## Skill Loading (OpenCode) | ||
| - Instruction files live in `.opencode/instructions/*.instructions.md` as reference material. | ||
| - Reusable skill packs live in `.opencode/skills/<name>/SKILL.md`. | ||
| - Skills are the primary runtime mechanism and are loaded on demand via the `skill` tool. | ||
| - Use one relevant skill per task/phase by default; add another only for clear cross-domain work. | ||
| - If stack/domain is unclear, ask for clarification before loading. | ||
| Skills load on demand via the `skill` tool — no context cost until you use them. | ||
| Use one relevant skill per task/phase; add another only for clear cross-domain work. | ||
| ## Skill Scope Policy | ||
| Instruction files live in `.opencode/instructions/`, skill packs in `.opencode/skills/<name>/SKILL.md`. | ||
| Scope remains core-only; additions pass demand, clear-gap, ownership, and licensing/provenance checks. | ||
| - Scope remains **core-only** skills (no optional skill packs). | ||
| - Additions should pass demand, clear-gap, ownership, and licensing/provenance checks. | ||
| <details><summary>Permission configuration (least-privilege patterns)</summary> | ||
| ## Skill Permissions (Least Privilege) | ||
| Skill permissions (prevent unrelated skill loads): | ||
| Use `permission.skill` allowlists in agent frontmatter to prevent unrelated skill loads. | ||
| ```yaml | ||
@@ -164,8 +152,4 @@ permission: | ||
| This keeps skills focused by agent role and reduces accidental context bloat. | ||
| Task permissions (control which subagents each agent can invoke): | ||
| ## Task Permissions (Subagent Hardening) | ||
| Use `permission.task` allowlists to control which subagents each agent can invoke. | ||
| ```yaml | ||
@@ -179,60 +163,40 @@ permission: | ||
| Pattern notes: | ||
| - Start with `"*": "deny"`, then add explicit allows. | ||
| - Keep allowlists narrow by role. | ||
| - Rules are matched in order and the last matching rule wins. | ||
| Start with `"*": "deny"`, add explicit allows. Rules match in order — last match wins. | ||
| ## Usage & Efficiency | ||
| </details> | ||
| OpenCode's context caching dramatically reduces token consumption across sessions. | ||
| The following metrics are from production usage (May–June 2026) with the | ||
| `deepseek-v4-pro` model. | ||
| ## Installation | ||
| | Metric | May 2026 | June 2026 | Combined | | ||
| |---|---|---|---| | ||
| | Cache Hit Tokens | 263.3M | 21.9M | 285.2M | | ||
| | Cache Miss Tokens | 7.9M | 1.3M | 9.2M | | ||
| | Output Tokens | 0.8M | 0.2M | 1.0M | | ||
| | Total Requests | 1,407 | 380 | 1,787 | | ||
| | **Cache Hit Rate** | **97.1%** | **94.5%** | **96.9%** | | ||
| | Avg Tokens/Request | 193K | 62K | 165K | | ||
| ### npx (Recommended) | ||
| Key takeaway: persistent context reuse keeps ~97% of input tokens in cache, | ||
| avoiding costly re-processing across agent sessions. Cache-hit tokens cost | ||
| ~120× less than cache-miss tokens, translating to substantial efficiency | ||
| gains for long-running multi-agent workflows. | ||
| ```bash | ||
| npx agents-opencode --global | ||
| ``` | ||
| ## Commands | ||
| ### Claude Code Plugin | ||
| Type `/command-name` in the TUI to run: | ||
| ```bash | ||
| # Add marketplace (one-time) | ||
| /plugin marketplace add shahboura/agents-opencode-claude | ||
| | Command | Description | | ||
| |---------|-------------| | ||
| | `/api-docs` | Generate API documentation | | ||
| | `/code-review` | Comprehensive code review | | ||
| | `/generate-tests` | Unit test generation | | ||
| | `/security-audit` | Security audit | | ||
| | `/refactor-plan` | Refactoring plan | | ||
| | `/create-readme` | Generate README | | ||
| | `/architecture-decision` | ADR creation | | ||
| | `/architecture-review` | Architecture review | | ||
| | `/blog-post` | Blog post creation | | ||
| | `/content-review` | Content quality scoring | | ||
| | `/plan-project` | Multi-phase project planning | | ||
| | `/execution-loop` | Bounded iterative execution workflow | | ||
| | `/stop-loop` | Stop loop and summarize state | | ||
| | `/checkpoint` | Phase-boundary checkpoint for human decision | | ||
| | `/1-on-1-prep` | Meeting preparation | | ||
| # Install | ||
| /plugin install agents-opencode@shahboura | ||
| ## Agent Evals | ||
| # Update | ||
| /plugin update agents-opencode@shahboura | ||
| ``` | ||
| - `npm run eval:agents` runs deterministic contract checks for agent and command metadata. | ||
| - `npm run eval:agents:json` writes machine-readable output to `evals/reports/latest.json`. | ||
| - These checks are integrated into doctor and CI validation summary gating. | ||
| Gives Claude Code access to the same 23 on-demand skills. Skills load only when | ||
| invoked — no context cost until you use them. See [adapters/claude-code/](./adapters/claude-code/) | ||
| for the plugin manifest and generator script. | ||
| ## Validation | ||
| - Run `npm run doctor` for the complete local validation suite. | ||
| - For full check mapping (local commands ↔ CI gates), see **[Compatibility](./docs/compatibility.md)**. | ||
| Run `npm run doctor` for the complete local validation suite (agent contracts, | ||
| markdown linting, docs links, session state, eval trends, and more). | ||
| For full check mapping (local commands ↔ CI gates), see **[Compatibility](./docs/compatibility.md)**. | ||
| Agent evals: `npm run eval:agents` runs deterministic contract checks for agent | ||
| and command metadata. `npm run eval:agents:json` writes machine-readable output. | ||
| ## Docs | ||
@@ -239,0 +203,0 @@ |
| { | ||
| "name": ".opencode", | ||
| "lockfileVersion": 3, | ||
| "requires": true, | ||
| "packages": { | ||
| "": { | ||
| "dependencies": { | ||
| "@opencode-ai/plugin": "1.14.39" | ||
| } | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz", | ||
| "integrity": "sha512-QZHtlVgbAdy2zAqNA9Gu1UpIuI8Xvsd1v8ic6B2pZmeFnFcMWiPLfWXh7TVw4eGEZ/C9TH281KwhVoeQUKbyjw==", | ||
| "cpu": [ | ||
| "arm64" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "darwin" | ||
| ] | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-darwin-x64": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-x64/-/msgpackr-extract-darwin-x64-3.0.3.tgz", | ||
| "integrity": "sha512-mdzd3AVzYKuUmiWOQ8GNhl64/IoFGol569zNRdkLReh6LRLHOXxU4U8eq0JwaD8iFHdVGqSy4IjFL4reoWCDFw==", | ||
| "cpu": [ | ||
| "x64" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "darwin" | ||
| ] | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm/-/msgpackr-extract-linux-arm-3.0.3.tgz", | ||
| "integrity": "sha512-fg0uy/dG/nZEXfYilKoRe7yALaNmHoYeIoJuJ7KJ+YyU2bvY8vPv27f7UKhGRpY6euFYqEVhxCFZgAUNQBM3nw==", | ||
| "cpu": [ | ||
| "arm" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "linux" | ||
| ] | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-linux-arm64": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-arm64/-/msgpackr-extract-linux-arm64-3.0.3.tgz", | ||
| "integrity": "sha512-YxQL+ax0XqBJDZiKimS2XQaf+2wDGVa1enVRGzEvLLVFeqa5kx2bWbtcSXgsxjQB7nRqqIGFIcLteF/sHeVtQg==", | ||
| "cpu": [ | ||
| "arm64" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "linux" | ||
| ] | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-linux-x64": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-linux-x64/-/msgpackr-extract-linux-x64-3.0.3.tgz", | ||
| "integrity": "sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg==", | ||
| "cpu": [ | ||
| "x64" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "linux" | ||
| ] | ||
| }, | ||
| "node_modules/@msgpackr-extract/msgpackr-extract-win32-x64": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-win32-x64/-/msgpackr-extract-win32-x64-3.0.3.tgz", | ||
| "integrity": "sha512-x0fWaQtYp4E6sktbsdAqnehxDgEc/VwM7uLsRCYWaiGu0ykYdZPiS8zCWdnjHwyiumousxfBm4SO31eXqwEZhQ==", | ||
| "cpu": [ | ||
| "x64" | ||
| ], | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "os": [ | ||
| "win32" | ||
| ] | ||
| }, | ||
| "node_modules/@opencode-ai/plugin": { | ||
| "version": "1.14.39", | ||
| "resolved": "https://registry.npmjs.org/@opencode-ai/plugin/-/plugin-1.14.39.tgz", | ||
| "integrity": "sha512-h3p3qCZLjodiKquCI9/YSDxgUoHTQ0/AK7t71tLWkUpEUicPZWsixdn3lk53/uLU+Wh+qp5FV+GTZWAXkKmAkw==", | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "@opencode-ai/sdk": "1.14.39", | ||
| "effect": "4.0.0-beta.59", | ||
| "zod": "4.1.8" | ||
| }, | ||
| "peerDependencies": { | ||
| "@opentui/core": ">=0.2.2", | ||
| "@opentui/solid": ">=0.2.2" | ||
| }, | ||
| "peerDependenciesMeta": { | ||
| "@opentui/core": { | ||
| "optional": true | ||
| }, | ||
| "@opentui/solid": { | ||
| "optional": true | ||
| } | ||
| } | ||
| }, | ||
| "node_modules/@opencode-ai/sdk": { | ||
| "version": "1.14.39", | ||
| "resolved": "https://registry.npmjs.org/@opencode-ai/sdk/-/sdk-1.14.39.tgz", | ||
| "integrity": "sha512-hguOA5huhys7zwCR3ESbSHyQNuJBNtfrxUxYZF/s/6trRW+imqGmDtC/RsOSNuk7GE06ZnvOTwb4T2WhXYIBxw==", | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "cross-spawn": "7.0.6" | ||
| } | ||
| }, | ||
| "node_modules/@standard-schema/spec": { | ||
| "version": "1.1.0", | ||
| "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", | ||
| "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", | ||
| "license": "MIT" | ||
| }, | ||
| "node_modules/cross-spawn": { | ||
| "version": "7.0.6", | ||
| "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", | ||
| "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "path-key": "^3.1.0", | ||
| "shebang-command": "^2.0.0", | ||
| "which": "^2.0.1" | ||
| }, | ||
| "engines": { | ||
| "node": ">= 8" | ||
| } | ||
| }, | ||
| "node_modules/detect-libc": { | ||
| "version": "2.1.2", | ||
| "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", | ||
| "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", | ||
| "license": "Apache-2.0", | ||
| "optional": true, | ||
| "engines": { | ||
| "node": ">=8" | ||
| } | ||
| }, | ||
| "node_modules/effect": { | ||
| "version": "4.0.0-beta.59", | ||
| "resolved": "https://registry.npmjs.org/effect/-/effect-4.0.0-beta.59.tgz", | ||
| "integrity": "sha512-xyUDLeHSe8d6lWGOvR6Fgn2HL6gYeTZ/S4Jzk9uc4ZUxMPPsNZlNXrvk0C7/utQFzeX7uAWcVnG2BjbA0SRoAA==", | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "@standard-schema/spec": "^1.1.0", | ||
| "fast-check": "^4.6.0", | ||
| "find-my-way-ts": "^0.1.6", | ||
| "ini": "^6.0.0", | ||
| "kubernetes-types": "^1.30.0", | ||
| "msgpackr": "^1.11.9", | ||
| "multipasta": "^0.2.7", | ||
| "toml": "^4.1.1", | ||
| "uuid": "^13.0.0", | ||
| "yaml": "^2.8.3" | ||
| } | ||
| }, | ||
| "node_modules/fast-check": { | ||
| "version": "4.7.0", | ||
| "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-4.7.0.tgz", | ||
| "integrity": "sha512-NsZRtqvSSoCP0HbNjUD+r1JH8zqZalyp6gLY9e7OYs7NK9b6AHOs2baBFeBG7bVNsuoukh89x2Yg3rPsul8ziQ==", | ||
| "funding": [ | ||
| { | ||
| "type": "individual", | ||
| "url": "https://github.com/sponsors/dubzzz" | ||
| }, | ||
| { | ||
| "type": "opencollective", | ||
| "url": "https://opencollective.com/fast-check" | ||
| } | ||
| ], | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "pure-rand": "^8.0.0" | ||
| }, | ||
| "engines": { | ||
| "node": ">=12.17.0" | ||
| } | ||
| }, | ||
| "node_modules/find-my-way-ts": { | ||
| "version": "0.1.6", | ||
| "resolved": "https://registry.npmjs.org/find-my-way-ts/-/find-my-way-ts-0.1.6.tgz", | ||
| "integrity": "sha512-a85L9ZoXtNAey3Y6Z+eBWW658kO/MwR7zIafkIUPUMf3isZG0NCs2pjW2wtjxAKuJPxMAsHUIP4ZPGv0o5gyTA==", | ||
| "license": "MIT" | ||
| }, | ||
| "node_modules/ini": { | ||
| "version": "6.0.0", | ||
| "resolved": "https://registry.npmjs.org/ini/-/ini-6.0.0.tgz", | ||
| "integrity": "sha512-IBTdIkzZNOpqm7q3dRqJvMaldXjDHWkEDfrwGEQTs5eaQMWV+djAhR+wahyNNMAa+qpbDUhBMVt4ZKNwpPm7xQ==", | ||
| "license": "ISC", | ||
| "engines": { | ||
| "node": "^20.17.0 || >=22.9.0" | ||
| } | ||
| }, | ||
| "node_modules/isexe": { | ||
| "version": "2.0.0", | ||
| "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", | ||
| "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", | ||
| "license": "ISC" | ||
| }, | ||
| "node_modules/kubernetes-types": { | ||
| "version": "1.30.0", | ||
| "resolved": "https://registry.npmjs.org/kubernetes-types/-/kubernetes-types-1.30.0.tgz", | ||
| "integrity": "sha512-Dew1okvhM/SQcIa2rcgujNndZwU8VnSapDgdxlYoB84ZlpAD43U6KLAFqYo17ykSFGHNPrg0qry0bP+GJd9v7Q==", | ||
| "license": "Apache-2.0" | ||
| }, | ||
| "node_modules/msgpackr": { | ||
| "version": "1.11.12", | ||
| "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.11.12.tgz", | ||
| "integrity": "sha512-RBdJ1Un7yGlXWajrkxcSa93nvQ0w4zBf60c0yYv7YtBelP8H2FA7XsfBbMHtXKXUMUxH7zV3Zuozh+kUQWhHvg==", | ||
| "license": "MIT", | ||
| "optionalDependencies": { | ||
| "msgpackr-extract": "^3.0.2" | ||
| } | ||
| }, | ||
| "node_modules/msgpackr-extract": { | ||
| "version": "3.0.3", | ||
| "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.3.tgz", | ||
| "integrity": "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==", | ||
| "hasInstallScript": true, | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "dependencies": { | ||
| "node-gyp-build-optional-packages": "5.2.2" | ||
| }, | ||
| "bin": { | ||
| "download-msgpackr-prebuilds": "bin/download-prebuilds.js" | ||
| }, | ||
| "optionalDependencies": { | ||
| "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3", | ||
| "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3", | ||
| "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3", | ||
| "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3", | ||
| "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3", | ||
| "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3" | ||
| } | ||
| }, | ||
| "node_modules/multipasta": { | ||
| "version": "0.2.7", | ||
| "resolved": "https://registry.npmjs.org/multipasta/-/multipasta-0.2.7.tgz", | ||
| "integrity": "sha512-KPA58d68KgGil15oDqXjkUBEBYc00XvbPj5/X+dyzeo/lWm9Nc25pQRlf1D+gv4OpK7NM0J1odrbu9JNNGvynA==", | ||
| "license": "MIT" | ||
| }, | ||
| "node_modules/node-gyp-build-optional-packages": { | ||
| "version": "5.2.2", | ||
| "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.2.2.tgz", | ||
| "integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==", | ||
| "license": "MIT", | ||
| "optional": true, | ||
| "dependencies": { | ||
| "detect-libc": "^2.0.1" | ||
| }, | ||
| "bin": { | ||
| "node-gyp-build-optional-packages": "bin.js", | ||
| "node-gyp-build-optional-packages-optional": "optional.js", | ||
| "node-gyp-build-optional-packages-test": "build-test.js" | ||
| } | ||
| }, | ||
| "node_modules/path-key": { | ||
| "version": "3.1.1", | ||
| "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", | ||
| "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", | ||
| "license": "MIT", | ||
| "engines": { | ||
| "node": ">=8" | ||
| } | ||
| }, | ||
| "node_modules/pure-rand": { | ||
| "version": "8.4.0", | ||
| "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-8.4.0.tgz", | ||
| "integrity": "sha512-IoM8YF/jY0hiugFo/wOWqfmarlE6J0wc6fDK1PhftMk7MGhVZl88sZimmqBBFomLOCSmcCCpsfj7wXASCpvK9A==", | ||
| "funding": [ | ||
| { | ||
| "type": "individual", | ||
| "url": "https://github.com/sponsors/dubzzz" | ||
| }, | ||
| { | ||
| "type": "opencollective", | ||
| "url": "https://opencollective.com/fast-check" | ||
| } | ||
| ], | ||
| "license": "MIT" | ||
| }, | ||
| "node_modules/shebang-command": { | ||
| "version": "2.0.0", | ||
| "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", | ||
| "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "shebang-regex": "^3.0.0" | ||
| }, | ||
| "engines": { | ||
| "node": ">=8" | ||
| } | ||
| }, | ||
| "node_modules/shebang-regex": { | ||
| "version": "3.0.0", | ||
| "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", | ||
| "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", | ||
| "license": "MIT", | ||
| "engines": { | ||
| "node": ">=8" | ||
| } | ||
| }, | ||
| "node_modules/toml": { | ||
| "version": "4.1.1", | ||
| "resolved": "https://registry.npmjs.org/toml/-/toml-4.1.1.tgz", | ||
| "integrity": "sha512-EBJnVBr3dTXdA89WVFoAIPUqkBjxPMwRqsfuo1r240tKFHXv3zgca4+NJib/h6TyvGF7vOawz0jGuryJCdNHrw==", | ||
| "license": "MIT", | ||
| "engines": { | ||
| "node": ">=20" | ||
| } | ||
| }, | ||
| "node_modules/uuid": { | ||
| "version": "13.0.2", | ||
| "resolved": "https://registry.npmjs.org/uuid/-/uuid-13.0.2.tgz", | ||
| "integrity": "sha512-vzi9uRZ926x4XV73S/4qQaTwPXM2JBj6/6lI/byHH1jOpCzb0zDbfytgA9LcN/hzb2l7WQSQnxITOVx5un/wGw==", | ||
| "funding": [ | ||
| "https://github.com/sponsors/broofa", | ||
| "https://github.com/sponsors/ctavan" | ||
| ], | ||
| "license": "MIT", | ||
| "bin": { | ||
| "uuid": "dist-node/bin/uuid" | ||
| } | ||
| }, | ||
| "node_modules/which": { | ||
| "version": "2.0.2", | ||
| "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", | ||
| "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", | ||
| "license": "ISC", | ||
| "dependencies": { | ||
| "isexe": "^2.0.0" | ||
| }, | ||
| "bin": { | ||
| "node-which": "bin/node-which" | ||
| }, | ||
| "engines": { | ||
| "node": ">= 8" | ||
| } | ||
| }, | ||
| "node_modules/yaml": { | ||
| "version": "2.8.4", | ||
| "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.4.tgz", | ||
| "integrity": "sha512-ml/JPOj9fOQK8RNnWojA67GbZ0ApXAUlN2UQclwv2eVgTgn7O9gg9o7paZWKMp4g0H3nTLtS9LVzhkpOFIKzog==", | ||
| "license": "ISC", | ||
| "bin": { | ||
| "yaml": "bin.mjs" | ||
| }, | ||
| "engines": { | ||
| "node": ">= 14.6" | ||
| }, | ||
| "funding": { | ||
| "url": "https://github.com/sponsors/eemeli" | ||
| } | ||
| }, | ||
| "node_modules/zod": { | ||
| "version": "4.1.8", | ||
| "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.8.tgz", | ||
| "integrity": "sha512-5R1P+WwQqmmMIEACyzSvo4JXHY5WiAFHRMg+zBZKgKS+Q1viRa0C1hmUKtHltoIFKtIdki3pRxkmpP74jnNYHQ==", | ||
| "license": "MIT", | ||
| "funding": { | ||
| "url": "https://github.com/sponsors/colinhacks" | ||
| } | ||
| } | ||
| } | ||
| } |
303929
-4.69%105
-0.94%1456
-20.61%203
-15.06%