Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问clear审计通过

ruby-gems-bundlerRuby gems bundler 搜索

Agent Skill

ruby-gems-bundler 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

465

周安装

19

GitHub Stars

142

下载量

150
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ruby-gems-bundler(Ruby gems bundler 搜索)
来源仓库:https://github.com/thebushidocollective/han
仓库路径:skills/ruby-gems-bundler
安装命令:
npx skills add https://github.com/thebushidocollective/han --skill ruby-gems-bundler
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/thebushidocollective/han --skill ruby-gems-bundler

简介

用于查找、检索和筛选 Ruby gems bundler 相关信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中根据关键词快速定位候选结果。
  • 通过 npx 命令从指定 GitHub 仓库安装,需确认权限和维护状态。
  • 使用时应结合来源仓库和 README 文档核验具体用法。
  • 注意检查是否会触发联网或文件读写操作。

SKILL.md

Ruby Gems and Bundler

Master Ruby's package management system with gems and Bundler. Learn to manage dependencies, create gems, and publish to RubyGems.

Bundler Basics

Gemfile

source 'https://rubygems.org'

# Ruby version
ruby '3.3.0'

# Production gems
gem 'rails', '~> 7.1'
gem 'pg', '>= 1.1'
gem 'puma', '~> 6.0'

# Development and test gems
group :development, :test do
  gem 'rspec-rails'
  gem 'factory_bot_rails'
  gem 'faker'
end

# Development only
group :development do
  gem 'rubocop'
  gem 'rubocop-rails'
end

# Test only
group :test do
  gem 'capybara'
  gem 'selenium-webdriver'
end

# Git source
gem 'my_gem', git: 'https://github.com/user/my_gem.git'

# Local path (for development)
gem 'local_gem', path: '../local_gem'

# Specific branch
gem 'experimental_gem', git: 'https://github.com/user/repo.git', branch: 'develop'

# Require specific file or false to not auto-require
gem 'sidekiq', require: 'sidekiq/web'
gem 'bootsnap', require: false

Version Constraints

# Exact version
gem 'rails', '7.1.0'

# Pessimistic operator (allows patch updates)
gem 'rails', '~> 7.1.0'  # >= 7.1.0 and < 7.2.0
gem 'rails', '~> 7.1'    # >= 7.1.0 and < 8.0.0

# Greater than or equal
gem 'pg', '>= 1.1'

# Range
gem 'ruby-version', '>= 1.0', '< 2.0'

# Multiple constraints
gem 'nokogiri', '>= 1.10', '< 2.0'

Bundler Commands

# Install all gems from Gemfile
bundle install

# Install to specific path
bundle install --path vendor/bundle

# Update all gems
bundle update

# Update specific gem
bundle update rails

# Check for outdated gems
bundle outdated

# Show gem location
bundle show rails

# Execute command with bundled gems
bundle exec rspec

# Open gem in editor
bundle open rails

# Check Gemfile syntax
bundle check

# Remove unused gems
bundle clean

# List all installed gems
bundle list

# Show dependency tree
bundle viz

Gemfile.lock

The Gemfile.lock file locks gem versions for consistent installations:

# Always commit Gemfile.lock to version control
# This ensures all developers use same gem versions

# Regenerate Gemfile.lock
rm Gemfile.lock
bundle install

Creating Gems

Gem Structure

# Create new gem
bundle gem my_gem

# Structure:
my_gem/
├── lib/
│   ├── my_gem/
│   │   └── version.rb
│   └── my_gem.rb
├── spec/
│   ├── my_gem_spec.rb
│   └── spec_helper.rb
├── bin/
│   ├── console
│   └── setup
├── .gitignore
├── Gemfile
├── LICENSE.txt
├── my_gem.gemspec
├── Rakefile
└── README.md

Gemspec

# my_gem.gemspec
require_relative 'lib/my_gem/version'

Gem::Specification.new do |spec|
  spec.name          = "my_gem"
  spec.version       = MyGem::VERSION
  spec.authors       = ["Your Name"]
  spec.email         = ["your.email@example.com"]

  spec.summary       = "Short summary of gem"
  spec.description   = "Longer description of what gem does"
  spec.homepage      = "https://github.com/username/my_gem"
  spec.license       = "MIT"

  spec.required_ruby_version = ">= 3.0.0"

  spec.metadata["homepage_uri"] = spec.homepage
  spec.metadata["source_code_uri"] = "https://github.com/username/my_gem"
  spec.metadata["changelog_uri"] = "https://github.com/username/my_gem/CHANGELOG.md"

  # Specify which files should be added to the gem
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
    `git ls-files -z`.split("\x0").reject do |f|
      f.match(%r{\A(?:test|spec|features)/})
    end
  end

  spec.bindir        = "exe"
  spec.executables   = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
  spec.require_paths = ["lib"]

  # Runtime dependencies
  spec.add_dependency "activesupport", "~> 7.0"
  spec.add_dependency "nokogiri", ">= 1.10"

  # Development dependencies
  spec.add_development_dependency "rspec", "~> 3.12"
  spec.add_development_dependency "rubocop", "~> 1.50"
end

Version File

# lib/my_gem/version.rb
module MyGem
  VERSION = "0.1.0"
end

Main Library File

# lib/my_gem.rb
require_relative "my_gem/version"
require_relative "my_gem/core"
require_relative "my_gem/helpers"

module MyGem
  class Error < StandardError; end

  def self.configure
    yield configuration
  end

  def self.configuration
    @configuration ||= Configuration.new
  end

  class Configuration
    attr_accessor :api_key, :timeout

    def initialize
      @api_key = nil
      @timeout = 30
    end
  end
end

Building and Publishing

Build Gem

# Build gem locally
gem build my_gem.gemspec

# This creates my_gem-0.1.0.gem

# Install locally for testing
gem install ./my_gem-0.1.0.gem

# Uninstall
gem uninstall my_gem

Publish to RubyGems

# First time setup (one-time)
gem push my_gem-0.1.0.gem
# You'll be prompted to log in

# For subsequent pushes
gem push my_gem-0.2.0.gem

# Yank a version (removes from RubyGems)
gem yank my_gem -v 0.1.0

# Unyank a version
gem unyank my_gem -v 0.1.0

Versioning

# Semantic Versioning: MAJOR.MINOR.PATCH
# 1.0.0 -> 1.0.1 (patch)
# 1.0.1 -> 1.1.0 (minor)
# 1.1.0 -> 2.0.0 (major)

# lib/my_gem/version.rb
module MyGem
  VERSION = "1.0.0"
end

# Update version, then build and push:
# 1. Edit version.rb
# 2. gem build my_gem.gemspec
# 3. gem push my_gem-1.0.0.gem

RubyGems Commands

# List installed gems
gem list

# Search for gems
gem search rails

# Show gem info
gem info rails

# List gem dependencies
gem dependency rails

# Update all gems
gem update

# Update specific gem
gem update rails

# Cleanup old versions
gem cleanup

# Show gem environment
gem env

# Install specific version
gem install rails -v 7.1.0

# Install without documentation (faster)
gem install rails --no-document

# Uninstall gem
gem uninstall rails

# Fetch gem but don't install
gem fetch rails

Gem Groups

# Define groups
group :development do
  gem 'pry'
end

group :test do
  gem 'rspec'
end

group :development, :test do
  gem 'factory_bot'
end

# Install without specific groups
bundle install --without production

# Require specific groups
Bundler.require(:default, :development)

Gem Sources

# Primary source
source 'https://rubygems.org'

# Additional sources
source 'https://gems.example.com' do
  gem 'private_gem'
end

# Git sources
gem 'my_gem', git: 'https://github.com/user/my_gem.git'
gem 'my_gem', git: 'https://github.com/user/my_gem.git', tag: 'v1.0'
gem 'my_gem', git: 'https://github.com/user/my_gem.git', branch: 'main'
gem 'my_gem', git: 'https://github.com/user/my_gem.git', ref: 'abc123'

# GitHub shorthand
gem 'my_gem', github: 'user/my_gem'

# Local path
gem 'my_gem', path: '../my_gem'

Requiring Gems

# In code
require 'my_gem'

# Bundler auto-requires gems based on Gemfile
# To disable auto-require:
gem 'my_gem', require: false

# Then manually require where needed:
require 'my_gem'

# Require specific file
gem 'sidekiq', require: 'sidekiq/web'

Platform-Specific Gems

# Only install on specific platforms
gem 'pg', platforms: :ruby
gem 'sqlite3', platforms: [:mingw, :mswin, :x64_mingw]

# Multiple platforms
platforms :ruby do
  gem 'pg'
  gem 'nokogiri'
end

platforms :jruby do
  gem 'activerecord-jdbc-adapter'
end

Private Gems

Using Private Gem Server

# Gemfile
source 'https://rubygems.org'

source 'https://gems.mycompany.com' do
  gem 'private_gem'
end

Using Git Credentials

# .netrc file for private repos
machine github.com
  login your-username
  password your-token

Gem Development

Using bundle console

# Open IRB with gem loaded
bin/console

# Or
bundle console

Running Tests

# Using Rake
rake spec

# Or directly
bundle exec rspec

Local Development

# In your app's Gemfile, point to local gem
gem 'my_gem', path: '../my_gem'

# Or use bundle config
bundle config local.my_gem ../my_gem

Best Practices

  1. Always commit Gemfile.lock to version control
  2. Use pessimistic versioning (~>) for stability
  3. Keep gems updated but test thoroughly
  4. Use groups to separate dev/test/production gems
  5. Specify Ruby version in Gemfile for consistency
  6. Use bundle exec to ensure correct gem versions
  7. Document gem dependencies and why they're needed
  8. Test gems locally before publishing
  9. Follow semantic versioning for your gems
  10. Keep gemspecs clean and well-documented

Anti-Patterns

Don't commit vendor/bundle to git (use.gitignore) ❌ Don't use require: false unnecessarily - adds manual work ❌ Don't specify exact versions unless absolutely necessary ❌ Don't push untested gem versions to RubyGems ❌ Don't include unnecessary files in gem packages ❌ Don't hardcode credentials in gemspec or Gemfile

Troubleshooting

# Clear bundler cache
bundle clean --force

# Regenerate Gemfile.lock
rm Gemfile.lock && bundle install

# Check for gem conflicts
bundle exec gem dependency

# Verbose output
bundle install --verbose

# Show why a gem is needed
bundle show rails

# List all gem versions
bundle list

Related Skills

  • ruby-oop - For structuring gem code
  • ruby-metaprogramming - Used in many gems
  • ruby-standard-library - Core Ruby functionality

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenCode

29.08%
按下载量换算44

Codex

25.16%
按下载量换算38

Claude Code

16.4%
按下载量换算25

windsurf

13.01%
按下载量换算20

Antigravity

7.21%
按下载量换算11

Gemini CLI

3.69%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills