Skip to content

What is rubygems-skills?

rubygems-skills is a production-ready Go SDK for the RubyGems.org HTTP API. It wraps every read and write endpoint into a typed Go interface, so you — or your AI agent — can query, search, and publish gems without hand-rolling an HTTP client.

At a glance

CapabilityPackageInterface
Read (no auth)pkg/repositoryRepository
Write (auth)pkg/repositoryWriteRepository
Cross-platform installpkg/installInstaller
Data modelspkg/modelsstructs
Cachingpkg/cache / pkg/repositoryCachedRepository
go
import "github.com/scagogogo/rubygems-skills/pkg/repository"

repo := repository.NewRepository()
pkg, err := repo.GetPackage(ctx, "rails")

Why another SDK?

The RubyGems.org API has no official Go client. When you ask an AI agent to "use RubyGems", it improvises a fragile HTTP client — guessing JSON shapes, ignoring rate limits, failing on transient errors. rubygems-skills replaces that improvisation with one typed, tested module.

Read the full rationale in Why use it?.

Who is it for?

  • AI coding agents (Claude Code, Codex, Cursor) that need a reliable, self-documenting RubyGems API surface.
  • Go developers building tooling around the Ruby ecosystem (dependency analysis, audit scripts, mirrors, CI bots).
  • Anyone in China who needs mirror support (Ruby China, Tsinghua, Aliyun) for fast, GFW-friendly access.

Module path

github.com/scagogogo/rubygems-skills

Requires Go 1.21+ (uses generics for getJson[T] and runWorkerPool[T]).

Released under the MIT License.