You're Invited:Meet the Socket Team at RSAC and BSidesSF 2026, March 23–26.RSVP
Socket
Book a DemoSign in
Socket

opencode-lazy

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

opencode-lazy - npm Package Compare versions

Comparing version
0.2.1
to
0.2.2
+1
-1
dist/index.js

@@ -46,3 +46,3 @@ import { tool } from "@opencode-ai/plugin";

plugin_install: tool({
description: "Install an OpenCode plugin by adding it to opencode.json and running bun install. Requires a restart to activate.",
description: "Install an OpenCode plugin by adding it to opencode.json. Requires a restart to activate.",
args: {

@@ -49,0 +49,0 @@ name: tool.schema.string().describe("npm package name to install"),

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}

@@ -1,1 +0,1 @@

{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAWD,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAUD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAYxE;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAWlE"}
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAWD,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAUD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAYxE;AASD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,CAAC,CAe7B;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAWlE"}

@@ -23,4 +23,10 @@ const NPM_REGISTRY = "https://registry.npmjs.org";

}
function encodePackageName(name) {
if (name.startsWith("@")) {
return `@${encodeURIComponent(name.slice(1))}`;
}
return encodeURIComponent(name);
}
export async function getPackageMetadata(name) {
const url = `${NPM_REGISTRY}/${encodeURIComponent(name)}`;
const url = `${NPM_REGISTRY}/${encodePackageName(name)}`;
const response = await fetch(url);

@@ -27,0 +33,0 @@ if (response.status === 404) {

@@ -1,1 +0,1 @@

{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,MAAM,YAAY,GAAG,4BAA4B,CAAA;AACjD,MAAM,eAAe,GAAG,GAAG,YAAY,cAAc,CAAA;AA+BrD,SAAS,gBAAgB,CAAC,GAAe;IACvC,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAA;IACjD,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5E,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1D,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IACnD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAa;IAC/C,MAAM,GAAG,GAAG,GAAG,eAAe,mBAAmB,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAA;IACpF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;IAEjC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACxE,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAoB,CAAA;IACvD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY;IAEZ,MAAM,GAAG,GAAG,GAAG,YAAY,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;IAEjC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,qBAAqB,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,+BAA+B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACxE,CAAA;IACH,CAAC;IAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAA;AACtD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAsB;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,2EAA2E,CAAA;IACpF,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACxE,OAAO,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,EAAE,CAAA;IAC9C,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,SAAS,QAAQ,CAAC,MAAM,aAAa,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzE,CAAC"}
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
{
"name": "opencode-lazy",
"version": "0.2.1",
"version": "0.2.2",
"description": "Plugin manager for OpenCode. Search, install, and manage plugins without leaving your session.",

@@ -12,2 +12,6 @@ "keywords": [

],
"homepage": "https://github.com/griffinmartin/opencode-lazy#readme",
"bugs": {
"url": "https://github.com/griffinmartin/opencode-lazy/issues"
},
"license": "MIT",

@@ -14,0 +18,0 @@ "repository": {

+16
-20
# opencode-lazy
[![npm](https://img.shields.io/npm/v/opencode-lazy)](https://www.npmjs.com/package/opencode-lazy)
[![CI](https://github.com/griffinmartin/opencode-lazy/actions/workflows/ci.yml/badge.svg)](https://github.com/griffinmartin/opencode-lazy/actions/workflows/ci.yml)
[![Socket Badge](https://socket.dev/api/badge/npm/package/opencode-lazy)](https://socket.dev/npm/package/opencode-lazy)

@@ -9,2 +11,6 @@ Plugin manager for OpenCode. Search, install, and manage plugins without leaving your session.

## How it works
The plugin registers a `/plugin` slash command and four tools via OpenCode's plugin hooks. When you run a command, the LLM calls the appropriate tool, which hits the npm registry and modifies your `opencode.json` directly. Config modifications use `jsonc-parser` to preserve any comments in your config files.
## Installation

@@ -24,17 +30,7 @@

Or use a local path for development:
```json
{
"plugin": ["/path/to/opencode-lazy"]
}
```
## Usage
The plugin registers a `/plugin` slash command with four operations:
```
/plugin search <query> Search npm for OpenCode plugins
/plugin install <name> Add a plugin to your config and install it
/plugin install <name> Add a plugin to your config
/plugin list Show all installed plugins

@@ -50,3 +46,3 @@ /plugin remove <name> Remove a plugin from your config

Searches the npm registry for packages prefixed with `opencode-` and returns matching results with name, version, and description.
Searches the npm registry for packages prefixed with `opencode-` and returns matching results with name, version, and description. Supports scoped packages (`@org/opencode-*`).

@@ -59,3 +55,3 @@ ### Install a plugin

Validates the package on npm, adds it to your `opencode.json` plugin array, and installs it. Restart OpenCode to activate.
Validates the package on npm, adds it to your `opencode.json` plugin array. Restart OpenCode to activate.

@@ -80,11 +76,11 @@ By default, plugins are added to the global config (`~/.config/opencode/opencode.json`). The LLM can also install to the project config if you ask.

## How it works
## How it works (technical)
The plugin uses two OpenCode hooks:
- Registers a `/plugin` command via the `config` hook at startup
- Registers four tools via the `tool` hook (`plugin_search`, `plugin_install`, `plugin_list`, `plugin_remove`)
- Searches npm using the public registry API (`registry.npmjs.org/-/v1/search`)
- Filters results to packages prefixed with `opencode-` or tagged with `opencode-plugin`
- Modifies `opencode.json` using `jsonc-parser` to preserve comments and formatting
- Supports both global (`~/.config/opencode/`) and project-level configs
- **`config` hook** — Injects the `/plugin` command definition at startup
- **`tool` hook** — Registers four tools (`plugin_search`, `plugin_install`, `plugin_list`, `plugin_remove`) that the LLM calls when you use the `/plugin` command
Config modifications use `jsonc-parser` to preserve any comments in your `opencode.json` files.
## Limitations

@@ -91,0 +87,0 @@