Agent skill

Perf Benchmarking

by GetStream in GetStream/stream-chat-react-native

Measure React Native performance on-device for stream-chat-react-native — Hermes CPU profiles, deterministic call/listener counting, component render profiling, and memory/jank capture.

Custom licenceAuto-check passedMobile

Install Perf Benchmarking

skills CLI
$ npx skills add GetStream/stream-chat-react-native --skill perf-benchmarking -a claude-code

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

GitHub CLI
$ gh skill install GetStream/stream-chat-react-native perf-benchmarking --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/GetStream/stream-chat-react-native.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/perf-benchmarking .claude/skills/perf-benchmarking && 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
perf-benchmarking
GitHub stars
1.2k
Token cost
~5.6k tokens
SKILL.md length
2,593 words
Files
1
Skills in repo
3
Repo updated
First seen
Licence
Custom licence

At a glance

Measure React Native performance on-device for stream-chat-react-native — Hermes CPU profiles, deterministic call/listener counting, component render profiling, and memory/jank capture.

  • Works in 4 steps: Deterministic call/listener counting —… → Hermes CPU profile + diff… → Driving the device — scenarios on… → …
  • Asked to benchmark a change
  • SKILL.md covers What we're measuring for, Non-negotiable rules, The toolbox (perf/) and Execution patterns, plus 6 more sections
  • Calls adb, node and git

What it does

Perf Benchmarking is an agent skill from GetStream/stream-chat-react-native. Measure React Native performance on-device for stream-chat-react-native — Hermes CPU profiles, deterministic call/listener counting, component render profiling, and memory/jank capture. Use when asked to benchmark a change, prove or disprove a perf claim, compare before/after, find what re-renders or what's heavy on the JS thread, or "do some perf testing". Drives the SampleApp on a connected Android device via the perf/ toolkit. Read this BEFORE measuring — it encodes which instrument to pick and the methodology…

Its SKILL.md is about 5.6k 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 Mobile, covering Cross-platform mobile apps and Mobile performance. It works with React Native and Android. The repository describes itself as: 💬 React-Native Chat SDK ➜ Stream Chat. Includes a tutorial on building your own chat app experience using React-Native, React-Navigation and Stream.

When your agent uses it

  • Asked to benchmark a change
  • Disprove a perf claim
  • Compare before/after
  • Find what re-renders

Example prompts

  • “s heavy on the JS thread, or”
  • “/perf-benchmarking”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Deterministic call/listener counting — the reliable default
  2. Hermes CPU profile + diff (non-interactive)
  3. Driving the device — scenarios on scenario-lib.sh
  4. A/B around a committed change (git-hands-off-safe)

What it can do on your machine

Read from SKILL.md and the folder at commit 4de08ed. 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:

    • adb
    • node
    • git
    • bash
    • yarn
    • curl
    • xcrun

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

  • Network

    No URLs in SKILL.md. Its commands use git, yarn and curl, which can reach the network depending on how they are called.

    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

Perf Benchmarking loads about 5.6k tokens when it runs. Until then it costs about 141 tokens; SKILL.md has 2,593 words of instructions outside code blocks.

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

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 passed

The automated check found no risky patterns in SKILL.md.

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 2,593 words (~5,604 tokens).

“How to measure SDK performance for real, against the SampleApp running on a physical Android device, using the committed perf/ toolkit. This skill exists because the methodology is full of traps that produce confidently-wrong numbers; follow the rules and recipes…”

— opening of SKILL.md by GetStream, Custom licence
name
perf-benchmarking

Read the full SKILL.md on GitHub

Files

Just SKILL.md in .claude/skills/perf-benchmarking of GetStream/stream-chat-react-native.

Open the folder on GitHubat commit 4de08ed

Compare with similar skills

Perf Benchmarking 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.

Perf Benchmarking compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Perf Benchmarking this skillGetStream/stream-chat-react-native1.2k—~5.6kAutomated safety check: PassCustom licence
React Native ExpertJeffallan/claude-skills12k—~1.7kAutomated safety check: PassMIT
Senior Mobileborghei/Claude-Skills881—~1.9kAutomated safety check: PassMIT
React Native Best Practicesvercel-labs/openreview1.7k17 repos~1.1kAutomated safety check: PassMIT
Rnn Codebasewix/react-native-navigation13k—~2kAutomated safety check: PassMIT
Expo Tailwind SetupCherryHQ/cherry-studio-app4k8 repos~3kAutomated safety check: PassMIT

Similar skills

  • React Native Expert

    Jeffallan/claude-skills

    Builds React Native and Expo apps for iOS and Android: Expo Router navigation, FlatList tuning, platform-specific code and build error recovery.

    12k GitHub stars~1.7k tokensUpdated 4 days ago
    MobileAuto-check passed
  • Senior Mobile

    borghei/Claude-Skills

    A skill your agent uses when the user asks to "build a mobile app", "scaffold React Native project", "create SwiftUI views", "set up Jetpack Compose", "optimize mobile performance", "configure Expo…

    881 GitHub stars~1.9k tokensUpdated today
    MobileAuto-check passed
  • React Native Best Practices

    vercel-labs/openreview

    Official

    A prioritized rule set for React Native and Expo apps covering list performance, animation, navigation, UI patterns, state, rendering, monorepos and configuration.

    1.7k GitHub starsUsed in 17 repos~1.1k tokens
    MobileAuto-check passed
  • Rnn Codebase

    wix/react-native-navigation

    Official

    Navigate and work with the react-native-navigation (RNN) codebase.

    13k GitHub stars~2k tokensUpdated yesterday
    MobileAuto-check passed
  • Expo Tailwind Setup

    CherryHQ/cherry-studio-app

    Set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling

    4k GitHub starsUsed in 8 repos~3k tokens
    MobileAuto-check passed
  • Claude Android Ninja

    Drjacky/claude-android-ninja

    Build and migrate Android apps with Kotlin, Jetpack Compose, MVVM, Hilt, Room 3 (KSP, SQLiteDriver, Flow/suspend DAOs), Navigation3, and multi-module Gradle.

    124 GitHub stars~5.2k tokensUpdated 8 days ago
    MobileAuto-check passed

More from GetStream/stream-chat-react-native

  • Rtl

    GetStream/stream-chat-react-native

    Audit and maintain RTL (right-to-left) layout compatibility in stream-chat-react-native.

    1.2k GitHub stars~4.4k tokensUpdated today
    Auto-check passed
  • Accessibility

    GetStream/stream-chat-react-native

    Maintain VoiceOver/TalkBack-focused accessibility in stream-chat-react-native.

    1.2k GitHub stars~6.5k tokensUpdated today
    Auto-check passed

Categories

Questions about Perf Benchmarking

What does Perf Benchmarking do?

Measure React Native performance on-device for stream-chat-react-native — Hermes CPU profiles, deterministic call/listener counting, component render profiling, and memory/jank capture. Perf Benchmarking is an agent skill from GetStream/stream-chat-react-native. Measure React Native performance on-device for stream-chat-react-native — Hermes CPU profiles, deterministic call/listener counting, component render profiling, and memory/jank capture.

When should I use Perf Benchmarking?

Perf Benchmarking fits situations like: asked to benchmark a change; disprove a perf claim; compare before/after; find what re-renders.

How do I install Perf Benchmarking in Claude Code?

Run `npx skills add GetStream/stream-chat-react-native --skill perf-benchmarking -a claude-code`. Or copy the skill folder (.claude/skills/perf-benchmarking in GetStream/stream-chat-react-native) into .claude/skills/perf-benchmarking in your project. Claude Code loads it when a task matches its description.

How do I install Perf Benchmarking in Codex?

Run `npx skills add GetStream/stream-chat-react-native --skill perf-benchmarking -a codex`. Or copy the skill folder (.claude/skills/perf-benchmarking in GetStream/stream-chat-react-native) into .agents/skills/perf-benchmarking in your project. Codex loads it when a task matches its description.

Can I use Perf Benchmarking 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 GetStream/stream-chat-react-native --skill perf-benchmarking -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/perf-benchmarking, .gemini/skills/perf-benchmarking, .github/skills/perf-benchmarking and .opencode/skills/perf-benchmarking in your project.

What does Perf Benchmarking need to run?

Going by SKILL.md and its folder, Perf Benchmarking needs the command-line tools its instructions call (adb, node, git, bash, yarn and curl).

Does Perf Benchmarking access the network?

SKILL.md contains no URLs. Its commands use git and curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Perf Benchmarking safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Perf Benchmarking use?

Perf Benchmarking 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 Perf Benchmarking use?

About 5.6k tokens (SKILL.md is roughly 22k 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 Perf Benchmarking?

Skills that share tags, products or a category with Perf Benchmarking: React Native Expert (Jeffallan/claude-skills, 12k stars), Senior Mobile (borghei/Claude-Skills, 881 stars), React Native Best Practices (vercel-labs/openreview, 1.7k stars) and Rnn Codebase (wix/react-native-navigation, 13k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Perf Benchmarking?

GetStream (a GitHub organization) maintains it in GetStream/stream-chat-react-native, which has 1,180 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.

Source: GetStream/stream-chat-react-native on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.