catalog-publisher

catalog-publisher is an agent for Claude Code from hmcts/agentic-plugins-marketplace. It costs 356 tokens per session (4,170 once invoked), scanned A, original, MIT.

An automated release agent that registers or updates API specifications in the HMCTS AMP catalog, a public directory of APIs.

In plain words
What is it for?
Use it when an HMCTS API repository releases a new version or changes its specification metadata and the corresponding catalog entry must be maintained.
Why use it?
It coordinates the catalog update after a GitHub Release and checks that the API documentation can be publicly exposed and published correctly.

Agent for Claude Code

Written for Claude Code: a Claude Code subagent (agents/*.md). Also seen: model in frontmatter.

Part of the hmcts-apim-sdlc-orchestrator plugin — 9 skills, 12 agents, 3 hooks shipped together

Good fit Use it when an HMCTS API repository releases a new version or changes its specification metadata and the corresponding catalog entry must be maintained.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/hmcts/agentic-plugins-marketplace/catalog-publisher
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/hmcts/agentic-plugins-marketplace

Made for: Claude Code.

Or install hmcts-apim-sdlc-orchestrator, the plugin that ships this one along with the rest of its 9 skills, 12 agents, 3 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for catalog-publisher

README.md
[![agentmods](https://agentmods.dev/badge/agents/hmcts/agentic-plugins-marketplace/catalog-publisher/github.svg)](https://agentmods.dev/agents/hmcts/agentic-plugins-marketplace/catalog-publisher)
Your own site
<a href="https://agentmods.dev/agents/hmcts/agentic-plugins-marketplace/catalog-publisher"><img src="https://agentmods.dev/badge/agents/hmcts/agentic-plugins-marketplace/catalog-publisher/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for catalog-publisher

Your own site · 80×15
<a href="https://agentmods.dev/agents/hmcts/agentic-plugins-marketplace/catalog-publisher"><img src="https://agentmods.dev/badge/agents/hmcts/agentic-plugins-marketplace/catalog-publisher.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 356 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 4,170 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00356 $0.04170
Opus 5 $0.00178 $0.02085
Sonnet 5 $0.00071 $0.00834
Haiku 4.5 $0.00036 $0.00417

Measured 8d ago against content hash f77936245dbe, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

catalog-publisher scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -sf "https://hmcts.github.io/$REPO/openapi-spec.yml" -o /tmp/spec.yml \
plugins/agents/hmcts-apim-sdlc-orchestrator/agents/catalog-publisher.md · 406 lines

How it starts

The opening of the file, as written. The whole thing — 406 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Agent: Catalog Publisher

Role

Register new api-cp-* specs in the HMCTS AMP catalog, and keep existing entries up to date when spec metadata changes. Fires once per GitHub Release — not a scheduled runner.

This agent's steps mirror the canonical process maintained in amp-catalog itself (amp-catalog/.claude/skills/publish-api-to-catalog/SKILL.md), adapted to this orchestrator's release-triggered framing. That file is the source of truth for the per-repo workflow side of publishing; this agent owns the catalog-registration side plus an examples-validation gate it adds on top.

  • Catalog repo: hmcts/amp-catalog
  • Registry file: docs/apis.json
  • Catalog page: https://hmcts.github.io/amp-catalog/
  • Spec location: https://hmcts.github.io/<repo>/openapi-spec.yml (bundled — the publish workflow inlines all $refs, including examples/*.yaml files, before deploying; the published spec has no external refs left)
  • Per-repo workflow: a thin caller .github/workflows/publish-api-docs.yml that calls the reusable hmcts/amp-catalog/.github/workflows/publish-swagger-ui.yml@v1
  • Auto-discovery: amp-catalog/scripts/discover_apis.py runs daily in CI; this agent closes the gap for immediate registration and drift detection.

Instructions

Step 1 — Eligibility / public-exposure check (mandatory, blocking)

GitHub Pages on a public repo is world-readable. Before anything else, confirm this API is allowed to be exposed that way:

REPO=$(basename "$PWD")
gh repo view --json visibility,nameWithOwner -q '.visibility + "  " + .nameWithOwner'

Ask the user to explicitly confirm the API is external and safe to expose to the public internet (documentation-only or mock-execution use cases are fine; internal-only APIs are not). If the API is internal-only, or the user is unsure, or the repo is private/internal and they cannot confirm it should be public: STOP. Do not proceed to any later step. Internal APIs stay off the public catalog until the APIM Developer Portal lands.

Read the full file on GitHub · 406 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 406 lines · 356 tokens per session scan A f77936245dbe

Subscribe to this mod's changes

catalog-publisher is an agent published in the GitHub repository hmcts/agentic-plugins-marketplace (3 stars, last pushed today), licensed MIT. It adds 356 tokens to every session and 4,170 once invoked, about $0.0018 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories

deployment-specialist

Handles all deployment operations.

luongnv89/claude-howto · 8 tokens

geo-roadmap-release-manager

Manages SemVer decisions, package version bump proposals, roadmap alignment, release readiness, tag checklist, CI gate review, and post-merge release sequencing for GEO Optimizer and GeoReady.

Auriti-Labs/geo-optimizer-skill · 44 tokens

release-validator

Validates release readiness by checking tests, build, dependencies, and changelog. Use before creating a release.

rlajous/claude-code-commands · 25 tokens

pr-ghostwriter

Kod değişikliklerinden PR açıklaması, commit mesajı ve changelog üretir. Gerçek diff'i okuyarak değişikliğin ne, neden ve nasıl olduğunu açıklar. Kullanıcı PR açmak, commit mesajı yazmak veya release notu hazırlamak istediğinde kullanılır. Jenerik açıklama üretmez — her zaman gerçek değişikliğe özgü yazar.

komunite/kalfa · 81 tokens

iris

GitHub operations specialist — branches, pull requests, issues, releases, tags. Called by zeus after review. Never pushes or merges without explicit human approval. Integrates with VS Code GitHub Pull Requests extension.

ils15/pantheon-legacy · 45 tokens

shipper

Deployment pipeline agent that executes the full ship sequence: pre-ship checks, conventional commit, feature branch + PR, CI verification, and rollback documentation. Use in Phase 5 after Gate 2 passes. Never commits directly to main. Not for implementation or review approval.

ngocsangyem/MeowKit · 57 tokens