agentsclimarketplace

Analyzing releases

Skill buildinternet/releases-cli/skills/analyzing-releases

Analyze release trends across multiple companies to produce competitive intelligence. Use when asked to compare companies, analyze a market segment, identify industry trends, forecast upcoming releases, or answer questions like "what is X shipping lately" or "how does X compare to Y." Also triggers on requests for competitive landscape analysis, feature gap analysis, or release velocity comparisons.From its SKILL.md

Install
npx -y skills add buildinternet/releases-cli --skill analyzing-releases

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 7 commands, including `releases search <company> --json` and 6 more.

SKILL.md

5.3 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Analyzing Releases

Turn changelog data into competitive intelligence by analyzing release patterns across a cohort of related companies.

This is a reader workflow — it uses only the public, unauthenticated tools. There is no AI summarize/compare tool on the hosted MCP and no summary/compare command in the CLI; you fetch the raw release data and synthesize the analysis yourself.

Tools for each step

OperationCLI (reader)MCP tool
Find what's indexed for a companyreleases search <company> --jsonsearch (with type: ["orgs","catalog"])
List a company's sourcesreleases list --query <company> --jsonlist_catalog (scope with organization)
Latest releases (source or org)releases tail <slug> --json · releases tail --org <org> --jsonget_latest_releases (organization / product, since/until)
Keyword/semantic release searchreleases search <query> --jsonsearch with type: ["releases"]
Read one release in fullreleases get <rel_id> --jsonget_release
Read a tracked CHANGELOG slicereleases admin source changelog <slug> --tokens <n> (key-gated; readers use MCP)get_catalog_entry with changelog_tokens / changelog_offset (keyless)

All releases are indexed already — you don't need to (and as a reader can't) trigger fetches. If a company isn't in the registry at all, say so rather than trying to onboard it; onboarding is an operator task.

Workflow

1. Define the cohort

Pick 3-6 companies in the same competitive space. Good cohorts share a common buyer or technical layer (e.g., developer databases, frontend frameworks, observability tools).

2. See what's indexed

Resolve each company with search (or releases search). For discovery-style cohorts ("find observability vendors with edge offerings"), search with type: ["orgs","catalog"] is vector-backed and matches on description and category — better than a slug-substring list_catalog --query. If a company isn't found, note it as a gap rather than fabricating data.

3. Pull latest releases with dates

Get structured release data per source or per org. Scope by organization for a whole-company view, or by a single source/product for a narrower one. Use a since window (e.g. "6m") or a count limit to bound the set. Dates are what you'll count for velocity, so keep them.

4. Search and cross-reference

Search across all indexed releases to find a specific feature, breaking change, or pattern. Release search is hybrid (lexical + semantic) by default, so natural-language queries like "auth refresh tokens" or "cold start improvements" work without exact keyword matches. Pass mode: "lexical" (CLI --mode lexical) when you need strict keyword behavior.

Result shape: every hit carries a kind discriminator:

  • kind: "release" — a normal release row; use it directly.
  • kind: "changelog_chunk" — a passage from a stored CHANGELOG.md file. The hit nests the payload under chunk: chunk.source.slug, chunk.file_path, chunk.offset, chunk.length. Chain into get_catalog_entry({ identifier: chunk.source.slug, changelog_path: chunk.file_path, changelog_offset: chunk.offset, changelog_limit: chunk.length * 3 }) to read the surrounding section before quoting it — changelog_path is what routes monorepos with multiple CHANGELOG files to the right one. Chunk hits often surface older or more granular notes than what's in the indexed release rows, so they're useful for "when did X first ship" questions.

5. Synthesize

Combine the raw data into a structured analysis:

  • Release velocity table — releases per company over the window, cadence pattern
  • Trends adopted across the board — features 3+ companies shipped in the same window
  • Differentiating bets — what each company is investing in that others aren't
  • Gaps — what competitors shipped that a given company hasn't
  • Forecasts — predictions grounded in pre-release tracks, deprecations, and trajectory

Output

Ask the user where to save the analysis, or use your best judgment based on the project's conventions. Include a short "Process Notes" section listing the exact commands/tools used, so the analysis is reproducible.

Important

  • Focus on what companies shipped. If a source has noisy data (blog posts mixed in, missing dates), work around it silently — don't pad the report with source-quality commentary unless a company had to be substantially excluded.
  • Fill data gaps with web fetches: list a source to get release URLs, then WebFetch to spot-check pages for a missing date, version, or detail.
  • For velocity counting, lean on the dated rows from get_latest_releases / releases tail --json.
  • Comparison and summarization are yours to synthesize from raw release data — there is no built-in tool that does it for you.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most research analysis skills give in ~1.1k tokens

Counted across 1,213 of the 2,113 authors here whose files we hold, read 2026-09-06

  • Cite sources for every important claimin 47 of 1213, across 38 files
  • Separate facts from inferences and recommendationsin 21 of 1213, across 12 files
  • Write findings to a markdown filein 19 of 1213
  • Label every insight with a confidence levelin 18 of 1213, across 8 files
  • Read product marketing context before asking questionsin 18 of 1213, across 8 files
  • Rank themes by frequency and intensityin 16 of 1213, across 6 files
  • Establish research mode before proceedingin 16 of 1213, across 6 files
  • Segment survey responses by customer tier or tenurein 16 of 1213, across 6 files
  • Categorize support tickets before analyzingin 16 of 1213, across 6 files
  • Weight research sources from the last twelve monthsin 16 of 1213, across 6 files
  • Use at least five data points per segmentin 15 of 1213, across 5 files
  • Extract verbatim quotes for all research findingsin 15 of 1213, across 5 files

Said here and by no other author read

  • Select three to six companies in the same competitive space
  • Resolve each company using search tools
  • Pull structured release data per source or organization
  • Use a time window or count limit to bound data
  • Search across indexed releases for features or patterns
  • Chain catalog entry calls to read surrounding changelog sections

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.