Skip to content

feat(repositories): declare discovery topics for the agent libraries#110

Merged
devantler merged 1 commit into
mainfrom
claude/discoverability-topics-agent-libs
Jul 18, 2026
Merged

feat(repositories): declare discovery topics for the agent libraries#110
devantler merged 1 commit into
mainfrom
claude/discoverability-topics-agent-libs

Conversation

@devantler

@devantler devantler commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

🤖 Generated by the Daily AI Engineer

Why

Neither agent-skills nor agent-plugins carried a single GitHub topic, so both were invisible to every topic-based browse and directory crawl — people looking for exactly what we publish could not find it. Two repo descriptions were also wrong: one pointed at a repo name that no longer exists after a rename, the other described the skills as Copilot-only when they work across Claude Code, Cursor and Codex too.

What

Declares the discovery topics and corrects both descriptions in the Crossplane repo config, so GitHub's own browse and search surfaces list these libraries alongside the other well-known skill and plugin collections. No change to how anything installs — this is purely about being findable.

Part of devantler-tech/monorepo#2229

Both agent-skills and agent-plugins carried ZERO GitHub topics, so neither
appeared in any topic-based browse or directory crawl. `agent-skills` is the
canonical topic convention (10,416 public repos; anthropics/skills,
github/awesome-copilot and fluxcd/agent-skills all carry it) and
`claude-code-plugin` is its plugin-side counterpart (4,230 repos).

The topic was never applied to agent-skills because `gh skill publish` only
offers to add it on its INTERACTIVE path — cd.yaml calls it as
`gh skill publish --tag "$TAG"`, which skips that step entirely.

Also corrects two descriptions:
- agent-plugins referenced `devantler-tech/skills`, a repo name that no longer
  exists after the rename to `agent-skills`.
- agent-skills read as Copilot-only, contradicting the completed tool-neutral
  rescope; the skills are agentskills.io-spec and agent-neutral.

Verified: `topics` is present in the live Repository CRD schema
(repo.github.m.upbound.io/v1alpha1) and 8 sibling repo CRs already use it;
`kubectl kustomize deploy/` builds clean.
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 18, 2026

Copy link
Copy Markdown

@devantler I’ll review the changes.

✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai

coderabbitai Bot commented Jul 18, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@devantler, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 22 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Pro

Run ID: 6f590c76-82d7-4f8f-81db-25e2c3e37090

📥 Commits

Reviewing files that changed from the base of the PR and between ef62c99 and d21a575.

📒 Files selected for processing (2)
  • deploy/repositories/agent-plugins.yaml
  • deploy/repositories/agent-skills.yaml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

Readiness record

Schema check (the ## Maintenance requirement that any new CR field be checked against the provider's published CRDs — CI builds YAML but does not validate against the Crossplane schema):

  • kubectl --context admin@prod get crd repositories.repo.github.m.upbound.iospec.forProvider exposes topics, homepageUrl, description. topics is valid on this API version.
  • 8 sibling repo CRs already declare topics (ksail, platform, unifi, homebrew-tap, platform-template, …), so this follows the established pattern rather than introducing one.
  • kubectl kustomize deploy/ → exit 0, and the rendered output carries the new topics and both corrected descriptions.

Evidence for the change itself:

  • Both repos returned an empty topic list before this PR.
  • agent-skills = 10,416 public repos; anthropics/skills, github/awesome-copilot and fluxcd/agent-skills all carry it. claude-code-plugin = 4,230.
  • Root cause of the miss: gh skill publish only offers to add the topic on its interactive path, and cd.yaml calls gh skill publish --tag "$TAG" — so 8 successful releases never applied it. Declaring it here is also the more durable fix, since Crossplane holds topics authoritative under the Update policy and will reconcile any drift.
  • The agent-plugins description referenced devantler-tech/skills, which no longer resolves after the rename to agent-skills.

Behavioural verification is post-merge, by design. A Crossplane CR has no runtime surface until it reconciles, so "does the topic actually land" can only be observed after merge. I'll confirm the applied topics on both repos once the github-config tenant reconciles, and report back here.

@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep it up!

Reviewed commit: d21a575234

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@devantler
devantler marked this pull request as ready for review July 18, 2026 07:30
@devantler

Copy link
Copy Markdown
Contributor Author

🤖 Generated by the Daily AI Engineer

Self-promoted — readiness conditions met.

  • Programmatically tested: kubectl kustomize deploy/ (the sole required-check gate) green; topics schema-checked against the live repositories.repo.github.m.upbound.io CRD.
  • Reviewed: green Codex review at d21a575 — the current head. Fell back to the Codex lane after CodeRabbit refused all three of this run's PRs with an explicit quota response ("Next review available in: 22 minutes"); the red CodeRabbit commit status is that rate-limit artifact, not a code finding.
  • Evaluated: this is declarative config with no local runtime surface — verified as far as it can be pre-merge (schema + rendered output), with behavioural confirmation to follow once the github-config tenant reconciles. I'll post the applied topics here.
  • 0 unresolved review threads; every other check green.

Holding the merge until the red CodeRabbit status clears (mergeStateStatus: UNSTABLE is entirely that artifact) — retriggering once its window reopens rather than merging around it.

@devantler
devantler merged commit f85d5e5 into main Jul 18, 2026
11 checks passed
@devantler
devantler deleted the claude/discoverability-topics-agent-libs branch July 18, 2026 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant