Skip to content
Back to skills

Plugin Release

ASecurity

Use when releasing, installing, updating or rolling back the OpenCode ai-monitoring plugin (plugins/opencode): version bump, changelog, tests, build, install into ~/.config/opencode/plugins, verification and tagging. Drives scripts/install-plugin.sh and the mise plugin:* tasks.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentsgonodegitapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add accso/ai-monitoring --skill plugin-release --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plugin Release?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Plugin Release
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/accso-plugin-release/badge)](https://www.skillsdirectory.com/skills/accso-plugin-release)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: plugin-release
description: >
  Use when releasing, installing, updating or rolling back the OpenCode
  ai-monitoring plugin (plugins/opencode): version bump, changelog, tests,
  build, install into ~/.config/opencode/plugins, verification and tagging.
  Drives scripts/install-plugin.sh and the mise plugin:* tasks.
---

# OpenCode plugin release flow

Details and rationale: `docs/releasing.md`, `docs/plugin.md`, ADR 0010. Never skip a step; stop and report on the first failure.

1. **Plan first.** Ask which bump level applies (patch/minor/major) and summarise the changes since the last release. Wait for confirmation.
2. **Preconditions.** Run `mise run status`; if the stack is down, run `mise run up` so integration tests are not skipped.
3. **Test.** `mise run plugin:test` must pass (typecheck + unit + integration). For behaviour changes confirm the test was observed failing before the fix (see `.github/instructions/ai-context-tdd.instructions.md` for the red/green discipline).
4. **Version and changelog.** Set the new version in `plugins/opencode/package.json` and add an entry at the top of `plugins/opencode/CHANGELOG.md`. If a significant decision was made, add an ADR in `docs/adr/` and update its index.
5. **Install.** Run `scripts/install-plugin.sh` (or `mise run plugin:install`). It runs typecheck and tests (Vitest on Node), bundles with esbuild, verifies the bundle default-exports only `{ id, setup, server }`, and copies it atomically to `~/.config/opencode/plugins/ai-monitoring.js` (removing a stale `ai-monitoring/` directory). Use `--dry-run` to rehearse and `--target DIR` for another location. Never use `--skip-tests` for a release.
6. **Verify live.** Tell the user to start a new opencode session and send a prompt (the plugin loads per session). Then check:
   - `curl -s 'http://127.0.0.1:8428/api/v1/query?query=gen_ai_client_token_usage_sum'` returns series for the expected provider/model/project;
   - `grep ai-monitoring ~/.local/share/opencode/log/opencode.log` shows no export warnings.
   Do not claim success until data is seen.
7. **Commit and tag.** If the directory is a git repository: commit with the Co-authored-by trailer, tag `plugin-vX.Y.Z`. Otherwise say that no tag was created.

**Rollback:** `git checkout plugin-v<previous>` then `scripts/install-plugin.sh`, or `scripts/install-plugin.sh --uninstall`.

**Pitfalls:** one bundle for OpenCode 1 + 2 (default export `{ id, setup, server }`, ADR 0018); never install a second copy or a plugin directory next to `ai-monitoring.js` (double loading counts twice); one tracker/exporter per call, flushed on cleanup/dispose; V2 has no plugin logger and console output is not forwarded, so V2 warnings go to `~/.local/share/opencode/log/ai-monitoring.log`, V1 uses `client.app.log` (opencode.log); re-verify token sums vs. the opencode DB after changes, on V1 and V2.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.