Official agent skill

Profiling

by Shopify in Shopify/rubydex

Profile Rubydex indexer performance — CPU flamegraphs, memory usage, phase-level timing.

OfficialCustom licenceAuto-check: notesDevelopment

Install Profiling

skills CLI
$ npx skills add Shopify/rubydex --skill profiling -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Shopify/rubydex profiling --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Shopify/rubydex.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/profiling .claude/skills/profiling && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
profiling
GitHub stars
363
Token cost
~2.3k tokens
SKILL.md length
979 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
Custom licence

At a glance

Profile Rubydex indexer performance — CPU flamegraphs, memory usage, phase-level timing.

  • Works in 6 steps: Call Tree tab — shows cumulative time… → Flame Graph tab — visual representation… → Timeline — shows activity over time.… → …
  • The user mentions profiling
  • SKILL.md covers Profiling tool: samply, Build profile, Running a profile and Reading the results, plus 4 more sections
  • Calls cargo

What it does

Profiling is an agent skill from Shopify/rubydex, published by the product's own GitHub organization. Profile Rubydex indexer performance — CPU flamegraphs, memory usage, phase-level timing. Use this skill whenever the user mentions profiling, performance, flamegraphs, benchmarking, "why is X slow", bottlenecks, hot paths, memory usage, or wants to understand where time is spent during indexing/resolution. Also trigger when comparing performance before/after a change.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Performance optimization. It works with Rust. The repository describes itself as: A high-performance static analysis toolkit for Ruby.

When your agent uses it

  • The user mentions profiling
  • Wants to understand where time is spent during indexing/resolution
  • Comparing performance before/after a change

Example prompts

  • “why is X slow”
  • “/profiling”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Call Tree tab — shows cumulative time per function, sorted by total cost. Start here
  2. Flame Graph tab — visual representation where width = time. Look for wide bars — those
  3. Timeline — shows activity over time. Useful for spotting if one phase is unexpectedly
  4. Filtering — type a function name in the filter box to isolate it.
  5. Transform > Focus on subtree — right-click a function to see only its callees. Perfect
  6. Transform > Merge function — collapse recursive calls to see aggregate cost.

What it can do on your machine

Read from SKILL.md and the folder at commit d8ff475. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • cargo

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Profiling loads about 2.3k tokens when it runs. Until then it costs about 95 tokens; SKILL.md has 979 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~95
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteRuns commands with sudoSKILL.md:243
    sudo samply record rust/target/profiling/rubydex_cli <TARGET_PATH> --stats

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 979 words (~2,314 tokens).

“This skill helps you profile the Rubydex indexer to find CPU and memory bottlenecks. The indexer has a multi-phase pipeline (listing → indexing → resolution → querying). Use --stats to see which phase dominates, then profile to find what's expensive…”

— opening of SKILL.md by Shopify, Custom licence
name
profiling

Read the full SKILL.md on GitHub

Files

Just SKILL.md in .claude/skills/profiling of Shopify/rubydex.

Open the folder on GitHubat commit d8ff475

Compare with similar skills

Profiling next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Profiling compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Profiling this skillShopify/rubydex363—~2.3kAutomated safety check: NotesCustom licence
Samplyvortex-data/vortex3.2k—~2.7kAutomated safety check: PassApache-2.0
Investigate User Bugcristicretu/diri424—~1.2kAutomated safety check: PassApache-2.0
Cppcrazyguitar/cppcheatsheet290—~1.8kAutomated safety check: PassMIT
Rust Profilingdiodeme/Gold-Band1431 repos~1.7kAutomated safety check: NotesAGPL-3.0
Oxc Lint Rule Performance Reviewoxc-project/oxc23k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Samply

    vortex-data/vortex

    Analyze Samply Firefox-profiler output, record focused profiles, summarize hot threads/stacks, inspect symbolication, and compare profile evidence before and after a performance change.

    3.2k GitHub stars~2.7k tokensUpdated today
    DevelopmentAuto-check passed
  • Investigate User Bug

    cristicretu/diri

    Investigate a bug a specific diri user hit (crash, hang, slowness, memory leak, blank or garbled terminal, spawn/resume/remote failure, copy/paste not working) from diri's telemetry with the…

    424 GitHub stars~1.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Cpp

    crazyguitar/cppcheatsheet

    Comprehensive C/C++ programming reference covering everything from C11-C23 and C++11-C++23, system programming, CUDA GPU computing, debugging tools, Rust interop, and advanced topics.

    290 GitHub stars~1.8k tokensUpdated 6 days ago
    DevelopmentAuto-check passed
  • Rust Profiling

    diodeme/Gold-Band

    Rust profiling skill for performance analysis. An agent skill from diodeme/Gold-Band.

    143 GitHub starsUsed in 1 repo~1.7k tokens
    DevelopmentAuto-check: notes
  • Review guidance for the speed of Oxc linter rules written in Rust: narrow node-kind checks, cheap tests first, deferred diagnostics and the smallest possible iteration.

    23k GitHub stars~1.1k tokensUpdated today
    DevelopmentAuto-check passed
  • Profile the native Rust wado binary (compile/serve/run) for host-side bottlenecks — CPU with a sampling profiler, memory with the span trace's RSS and valgrind DHAT.

    116 GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check: notes

More from Shopify/rubydex

  • Rubydex MCP Benchmark

    Shopify/rubydex

    Official

    A skill your agent uses when benchmarking rubydex MCP against plain Grep/Glob for Ruby code tasks.

    363 GitHub stars~1k tokensUpdated 5 days ago
    Auto-check passed
  • Send Private Method

    Shopify/rubydex

    Official

    Remediate a send/send call that reaches a private method, restoring a real public seam instead of bypassing visibility.

    363 GitHub stars~1.8k tokensUpdated 5 days ago
    Auto-check passed
  • Benchmark Rbs

    Shopify/rubydex

    Official

    Benchmark Rubydex indexing performance on RBS core/stdlib, comparing the current branch against main.

    363 GitHub stars~723 tokensUpdated 5 days ago
    Auto-check passed

Works with

Categories

Questions about Profiling

What does Profiling do?

Profile Rubydex indexer performance — CPU flamegraphs, memory usage, phase-level timing. Profiling is an agent skill from Shopify/rubydex, published by the product's own GitHub organization. Profile Rubydex indexer performance — CPU flamegraphs, memory usage, phase-level timing.

When should I use Profiling?

Profiling fits situations like: the user mentions profiling; wants to understand where time is spent during indexing/resolution; comparing performance before/after a change.

How do I install Profiling in Claude Code?

Run `npx skills add Shopify/rubydex --skill profiling -a claude-code`. Or copy the skill folder (.claude/skills/profiling in Shopify/rubydex) into .claude/skills/profiling in your project. Claude Code loads it when a task matches its description.

How do I install Profiling in Codex?

Run `npx skills add Shopify/rubydex --skill profiling -a codex`. Or copy the skill folder (.claude/skills/profiling in Shopify/rubydex) into .agents/skills/profiling in your project. Codex loads it when a task matches its description.

Can I use Profiling in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Shopify/rubydex --skill profiling -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/profiling, .gemini/skills/profiling, .github/skills/profiling and .opencode/skills/profiling in your project.

What does Profiling need to run?

Going by SKILL.md and its folder, Profiling needs the command-line tools its instructions call (cargo).

Does Profiling access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Profiling safe to install?

Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Profiling use?

Profiling has a licence file (the repository's licence) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does Profiling use?

About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Profiling?

Skills that share tags, products or a category with Profiling: Samply (vortex-data/vortex, 3.2k stars), Investigate User Bug (cristicretu/diri, 424 stars), Cpp (crazyguitar/cppcheatsheet, 290 stars) and Rust Profiling (diodeme/Gold-Band, 143 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Profiling?

Shopify (a GitHub organization, an official publisher) maintains it in Shopify/rubydex, which has 363 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 1, 2026.

Source: Shopify/rubydex on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.