@buildinternet/releases 0.38.1 → 0.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +50 -9
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -4,6 +4,7 @@
4
4
  [![Release](https://github.com/buildinternet/releases-cli/actions/workflows/release.yml/badge.svg)](https://github.com/buildinternet/releases-cli/actions/workflows/release.yml)
5
5
  [![Test](https://github.com/buildinternet/releases-cli/actions/workflows/test.yml/badge.svg)](https://github.com/buildinternet/releases-cli/actions/workflows/test.yml)
6
6
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
7
+ [![skills.sh](https://skills.sh/b/buildinternet/releases-cli)](https://skills.sh/buildinternet/releases-cli)
7
8
 
8
9
  Changelog registry for AI agents and developers. A lean HTTP client for [releases.sh](https://releases.sh) — search and browse release notes from GitHub, RSS/Atom/JSON feeds, and product changelog pages without any local infrastructure.
9
10
 
@@ -95,30 +96,44 @@ Or run a local stdio bridge that proxies the same tools to `api.releases.sh`:
95
96
  releases admin mcp serve
96
97
  ```
97
98
 
98
- ### Claude Code plugin
99
+ ### Claude Code plugins
99
100
 
100
- Install from the marketplace manifest in this repo:
101
+ This repo is a Claude Code marketplace named `releases` that publishes two plugins. Add the marketplace once, then install whichever surfaces you want:
101
102
 
102
103
  ```bash
103
104
  /plugin marketplace add buildinternet/releases-cli
105
+
106
+ # Reader surface — search and look up releases:
104
107
  /plugin install releases@releases
108
+
109
+ # Admin surface — onboard and maintain sources (requires admin API access):
110
+ /plugin install releases-admin@releases
105
111
  ```
106
112
 
107
113
  Or point at a local clone for development:
108
114
 
109
115
  ```bash
110
- claude --plugin-dir plugins/claude/releases
116
+ claude --plugin-dir .
111
117
  ```
112
118
 
113
- The plugin bundles:
119
+ **`releases` (reader)** — for anyone querying the registry:
114
120
 
115
121
  - **Hosted MCP connection** to `mcp.releases.sh` — search, lookup, and changelog slicing tools.
116
- - **Auto-trigger skills**:
117
- - `releases-mcp` — activates on user questions about releases, changelogs, or breaking changes ("what's new in Next.js 15?").
122
+ - **`/releases <product> [query]`** command for manual lookups.
123
+ - **Auto-trigger skills:**
124
+ - `releases-mcp` — activates on questions about releases, changelogs, or breaking changes ("what's new in Next.js 15?").
118
125
  - `releases-cli` — activates when a user mentions or runs the `releases` CLI.
119
- - `finding-changelogs`, `managing-sources`, `parsing-changelogs`, `analyzing-releases`, `classify-media-relevance`, `seeding-playbooks` operator playbooks for onboarding and maintaining sources (admin access required to act on them — see the callout at the top of this README).
126
+ - `analyzing-releases` — competitive intel across multiple companies.
127
+ - `finding-changelogs` — discovering and evaluating changelog URLs.
128
+
129
+ **`releases-admin`** — for maintainers running their own registry or contributing back:
130
+
120
131
  - **Agents** — `discovery` (finds and onboards sources) and `worker` (executes fetches).
121
- - **Commands** — `/releases <product> [query]` for manual lookups.
132
+ - **Auto-trigger skills:**
133
+ - `managing-sources` — CRUD on sources, ignored/blocked URLs, validation.
134
+ - `parsing-changelogs` — fetch and parse pipeline reference.
135
+ - `classify-media-relevance` — release-image classification helper.
136
+ - `seeding-playbooks` — bulk playbook authoring across orgs.
122
137
 
123
138
  > Claude Code plugins install atomically — there is no Claude Code–native flow for grabbing a single skill without the rest of the plugin. See the next section for an agent-neutral install path.
124
139
 
@@ -141,11 +156,37 @@ npx skills add buildinternet/releases-cli
141
156
 
142
157
  Use this path when you only want the skill behavior (auto-triggering on release/CLI questions) without also registering the hosted MCP connection, agents, and `/releases` command that the plugin provides. Skills are symlinked by default, so re-running `releases skills install` (or `npx skills update releases-cli`) refreshes everything atomically.
143
158
 
159
+ ## Authentication
160
+
161
+ Admin commands require an API token. You can store one persistently using the `auth` command namespace so you don't need to set `RELEASED_API_KEY` in your shell every time.
162
+
163
+ ```bash
164
+ releases auth login # interactive prompt (masked input)
165
+ releases auth login --token <token> # pass directly
166
+ releases auth login --token - # read from stdin (pipe-friendly)
167
+ ```
168
+
169
+ The token is verified against `GET /v1/tokens/me` before being saved. If verification fails, nothing is written.
170
+
171
+ ```bash
172
+ releases auth status # show current auth state
173
+ releases auth status --json # machine-readable (authenticated, source, scopes, …)
174
+ releases auth status --verify # re-check the token against the API live
175
+ releases auth token # print the raw token (for scripts)
176
+ releases auth logout # remove the stored token
177
+ ```
178
+
179
+ `whoami` is an alias for `auth status`.
180
+
181
+ **Credential precedence:** if `RELEASED_API_KEY` is set in the environment it takes priority over any stored credential — useful for CI or per-command overrides.
182
+
183
+ **Storage:** credentials are written to `~/.releases/credentials` with `0600` permissions (owner read/write, rw-------). The file is JSON and contains the token, name, scopes, the API URL the token was verified against, and a `savedAt` timestamp.
184
+
144
185
  ## Environment
145
186
 
146
187
  Nothing is required for reader access. For admin operations (closed beta — see above):
147
188
 
148
- - `RELEASED_API_KEY` — Bearer token for write endpoints. Required for any `releases admin …` command that mutates state. Keys are not self-serve right now.
189
+ - `RELEASED_API_KEY` — Bearer token for write endpoints. Overrides any stored credential from `releases auth login`. Required for any `releases admin …` command that mutates state if no stored credential is present. Keys are not self-serve right now.
149
190
  - `RELEASED_API_URL` — Override the default `https://api.releases.sh` endpoint (useful for staging).
150
191
  - `RELEASED_TELEMETRY_DISABLED=1` — Opt out of anonymous usage pings. `DO_NOT_TRACK=1` is also honored.
151
192
  - `RELEASES_DISABLE_SKILL_UPDATE_CHECK=1` — Silence the "skills are behind, run `releases skills install`" stderr nag that fires (at most once per 24h) when the GitHub `skills/` tree has moved since your last install.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@buildinternet/releases",
3
- "version": "0.38.1",
3
+ "version": "0.40.0",
4
4
  "description": "Changelog indexer and registry for AI agents and developers",
5
5
  "bin": {
6
6
  "releases": "bin/releases"
@@ -13,11 +13,11 @@
13
13
  "README.md"
14
14
  ],
15
15
  "optionalDependencies": {
16
- "@buildinternet/releases-darwin-arm64": "0.38.1",
17
- "@buildinternet/releases-darwin-x64": "0.38.1",
18
- "@buildinternet/releases-linux-x64": "0.38.1",
19
- "@buildinternet/releases-linux-arm64": "0.38.1",
20
- "@buildinternet/releases-windows-x64": "0.38.1"
16
+ "@buildinternet/releases-darwin-arm64": "0.40.0",
17
+ "@buildinternet/releases-darwin-x64": "0.40.0",
18
+ "@buildinternet/releases-linux-x64": "0.40.0",
19
+ "@buildinternet/releases-linux-arm64": "0.40.0",
20
+ "@buildinternet/releases-windows-x64": "0.40.0"
21
21
  },
22
22
  "keywords": [
23
23
  "changelog",