Agent skill

Conductor Rewrite Performance

by boraoztunc in boraoztunc/skills

A skill your agent uses when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling…

Apache-2.0Auto-check passedTesting & QA

Install Conductor Rewrite Performance

skills CLI
$ npx skills add boraoztunc/skills --skill conductor-rewrite-performance -a claude-code

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

GitHub CLI
$ gh skill install boraoztunc/skills conductor-rewrite-performance --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/boraoztunc/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/conductor-rewrite-performance .claude/skills/conductor-rewrite-performance && 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
conductor-rewrite-performance
GitHub stars
397
Token cost
~2.3k tokens
SKILL.md length
853 words
Files
1
Skills in repo
52
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling…

  • Works in 4 steps: Local-first eliminates an entire… → Unstable references cascade re-renders… → Virtualization plus memoization is the… → …
  • Optimizing a local-first desktop app with React
  • SKILL.md covers When to use this skill, Core principles, Tactics and Anti-patterns, plus 1 more section
  • Calls git

What it does

Conductor Rewrite Performance is an agent skill from boraoztunc/skills. Use when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling a Tauri app without native Chrome DevTools access.

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 Testing & QA, covering Browser testing. It works with Tauri, React and Chrome DevTools. The repository describes itself as: Claude Code skills for copywriting, SEO, design, and more. The licence is Apache-2.0.

When your agent uses it

  • Optimizing a local-first desktop app with React
  • Dealing with excessive re-renders during navigation
  • Slow chat/list UIs with streaming content
  • Profiling a Tauri app without native Chrome DevTools access

Example prompts

  • “/conductor-rewrite-performance”

Workflow steps

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

  1. Local-first eliminates an entire category of performance problems. When SQLite is your source of truth and the UI never waits on the…
  2. Unstable references cascade re-renders through the entire component tree. When router hooks return fresh objects on every render, every…
  3. Virtualization plus memoization is the only way to make streaming lists fast. Render only what's on screen (15 messages instead of 500)…
  4. The fastest operation is the one the user never waits on. Move expensive synchronous work (like git checkpoints) off the critical path so…

What it can do on your machine

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

    • git

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

  • Network

    Links to these hosts (documentation or services it may open):

    • performance.dev

    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

Conductor Rewrite Performance loads about 2.3k tokens when it runs. Until then it costs about 65 tokens; SKILL.md has 853 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~65
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 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

The full file from boraoztunc/skills at commit 645553c, republished under its Apache-2.0 licence (© boraoztunc). 853 words, ~2,276 tokens.

Download SKILL.mdSave it as .claude/skills/conductor-rewrite-performance/SKILL.md (or your agent's skills folder).
name
conductor-rewrite-performance
description
Use when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling a Tauri app without native Chrome DevTools access.

When to use this skill

  • You're building a local-first desktop application with React and experiencing performance bottlenecks
  • Navigation or route changes trigger cascading re-renders across multiple mounted components
  • You have a chat interface or long list that streams content and re-renders become sluggish
  • You're using Tauri and need to profile React performance but can't access Chrome DevTools
  • Multiple heavy views are mounted simultaneously (sidebar, nav, chat, terminal, editor) and all re-render on state changes
  • You need to manage multiple heavyweight child processes without exhausting system memory

Core principles

  1. Local-first eliminates an entire category of performance problems. When SQLite is your source of truth and the UI never waits on the network, the bottleneck moves up into the rendering layer—every unnecessary re-render becomes the slowest thing users feel.

  2. Unstable references cascade re-renders through the entire component tree. When router hooks return fresh objects on every render, every component reading them re-renders even when values haven't changed, and those re-renders propagate to all children.

  3. Virtualization plus memoization is the only way to make streaming lists fast. Render only what's on screen (15 messages instead of 500), and ensure only the actively changing item re-renders while the rest stay memoized.

  4. The fastest operation is the one the user never waits on. Move expensive synchronous work (like git checkpoints) off the critical path so the first token arrives immediately.

Tactics

Shim the Tauri bridge to profile in Chrome

When you can't use Safari's Web Inspector to debug React performance in a Tauri webview, create a development shim that lets the same client run in Chrome with full DevTools access.

typescript
// Conductor's UI reaches the Rust core through Tauri's invoke() bridge.
// In a real browser there's no Tauri runtime: __TAURI_INTERNALS__ is
// undefined and every invoke() throws. So in dev we shim that single
// entry point and boot the exact same client in Chrome, where the
// Chrome profiler AND the React DevTools profiler both work.

import { invoke as tauriInvoke } from "@tauri-apps/api/core";

export function invoke<T>(cmd: string, args?: Record<string, unknown>): Promise<T> {
  // Packaged app: use the native bridge.
  if ("__TAURI_INTERNALS__" in window) return tauriInvoke<T>(cmd, args);

  // Dev in Chrome: stand in for the Rust backend. Proxy to a dev server
  // running the real commands, or return canned data for the surface
  // you're profiling.
  return fetch(`/__backend__/${cmd}`, {
    method: "POST",
    body: JSON.stringify(args ?? {}),
  }).then((r) => r.json());
}

Steps:

  1. Identify the single bridge function your UI uses to talk to the native layer (e.g., Tauri's invoke())
  2. Check for the presence of the native runtime object (__TAURI_INTERNALS__)
  3. In production, call through to the real bridge
  4. In development, proxy to a local server or return mock data
  5. Boot the client in Chrome and use React DevTools Profiler to identify bottlenecks
Replace react-router with TanStack Router for stable references

When navigation produces fresh param/search references that cascade re-renders, switch to a router that provides structural sharing and stable references.

Before with react-router:

tsx
// Before with react-router

import { useSearchParams } from "react-router-dom";

function WorkspaceView() {
  const [searchParams] = useSearchParams();

  // useSearchParams() returns a NEW URLSearchParams every render,
  // and this parsed object is a new reference every render too.
  const filters = {
    agent: searchParams.get("agent"),
    status: searchParams.get("status"),
  };

  useEffect(() => {
    refetchAgents(filters);
  }, [filters]); // new object each render → fires on EVERY render

  return <AgentList filters={filters} />; // child re-renders every time
}

After with TanStack Router:

tsx
// After with tanstack router

import { createFileRoute } from "@tanstack/react-router";

export const Route = createFileRoute("/workspace")({
  // parse + validate search once, fully typed
  validateSearch: (s): { agent?: string; status?: string } => ({
    agent: s.agent as string | undefined,
    status: s.status as string | undefined,
  }),
});

function WorkspaceView() {
  // structural sharing: SAME reference unless agent/status actually change
  const filters = Route.useSearch();

  useEffect(() => {
    refetchAgents(filters);
  }, [filters]); // fires only when a value really changes

  return <AgentList filters={filters} />; // no re-render!
}

Steps:

  1. Define routes with createFileRoute and add a validateSearch function that parses and types search params
  2. Replace useSearchParams() with Route.useSearch() to get a stable reference
  3. Remove manual useMemo wrappers around parsed params—structural sharing handles it
  4. Verify with React DevTools Profiler that only components with actual changes re-render on navigation
Virtualize + memoize streaming chat lists

When a chat UI with hundreds of messages re-renders on every token, combine virtualization (render only visible items) with memoization (skip unchanged items).

Before:

tsx
// Before: the simple approach where each message/token rerenders everything

function Chat({ messages }) {
  return (
    <div>
      {messages.map((m) => (
        <Message key={m.id} message={m} /> // all N re-render on each token
      ))}
    </div>
  );
}

After:

tsx
// After: virtualize the list + memoize each row

const Message = React.memo(function Message({ message }) {
  return <MarkdownContent text={message.content} />; 
});

function Chat({ messages }) {
  // VirtuosoMessageList is a component from Virtuoso
  return (
    <VirtuosoMessageList
      data={messages}
      itemContent={(_, m) => <Message message={m} />}
    />
  );
}

Steps:

  1. Wrap each message component in React.memo so it only re-renders when its props change
  2. Replace the .map() loop with react-virtuoso's VirtuosoMessageList (or Virtuoso for general lists)
  3. Pass the full message array as data and render each item via itemContent
  4. Let Virtuoso handle scroll anchoring, bottom-stick during streaming, and dynamic height measurement
  5. Verify that only the streaming message re-renders while the rest stay memoized
Show full SKILL.md (332 more words)Show less
Move expensive synchronous work off the critical path

When a blocking operation (like a git checkpoint) sits between user input and the first response token, move it to the background.

Pattern:

  • Before: User hits enter → synchronous git add -A → send prompt → first token arrives
  • After: User hits enter → send prompt immediately → first token arrives → checkpoint runs in background

Steps:

  1. Identify synchronous operations on the critical path (e.g., file snapshots, database writes)
  2. Fire them asynchronously after the user-facing action completes
  3. Ensure the background task still completes before the next checkpoint is needed
  4. If resumption depends on the checkpoint, pass a --resume <uuid> flag so the session can restart from disk
Manage memory for multiple heavyweight child processes

When your app spawns multiple long-lived processes (e.g., agent sessions), shut down idle ones and resume on demand.

Steps:

  1. Track the last activity timestamp for each child process
  2. After a threshold of inactivity (e.g., 5 minutes), kill the process and reclaim memory
  3. Persist session state to disk with a unique identifier (e.g., --resume <uuid>)
  4. When the user returns to that workspace, spawn a new process with the resume flag
  5. Verify in Activity Monitor / Task Manager that idle workspaces don't hold memory

Anti-patterns

❌ Don't wrap every unstable reference in useMemo manually—fix the root cause by switching to a library that provides stable references (like TanStack Router's structural sharing).

❌ Don't render all list items and rely on CSS overflow: scroll—virtualize so only visible items exist in the DOM.

❌ Don't block the UI thread with synchronous git operations or file I/O on the critical path—move them to background tasks.

❌ Don't let heavyweight child processes accumulate indefinitely—implement idle shutdown and resume-on-demand.

❌ Don't skip profiling because your webview doesn't support Chrome DevTools—shim the native bridge and run the same client in Chrome for development.

❌ Don't assume local-first means fast by default—once network latency is gone, rendering bottlenecks become the new constraint.

Source

The Conductor Rewrite: What They Changed to Make It Fast

© boraoztunc, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in conductor-rewrite-performance of boraoztunc/skills.

Open the folder on GitHubat commit 645553c

Compare with similar skills

Conductor Rewrite Performance 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.

Conductor Rewrite Performance compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Conductor Rewrite Performance this skillboraoztunc/skills397—~2.3kAutomated safety check: PassApache-2.0
LivewireArtexis10/endstate-gui116—~2.9kAutomated safety check: PassApache-2.0
Browser Testing with Chrome DevToolsaddyosmani/agent-skills103k4 repos~3.5kAutomated safety check: WarnMIT
Desktopgridaco/grida2.7k—~3.2kAutomated safety check: NotesApache-2.0
Browsingobra/superpowers-chrome3561 repos~8kAutomated safety check: PassMIT
Desktop Dual Repo TestEynzof/Hermes-CN-Desktop1.8k—~1.8kAutomated safety check: PassCustom licence

Similar skills

  • Livewire

    Artexis10/endstate-gui

    Drive the real GUI against the real engine via the standalone dev HTTP bridge (npm run dev:bridge).

    116 GitHub stars~2.9k tokensUpdated 2 days ago
    Testing & QAAuto-check passed
  • Connects an agent to a real Chrome instance through the Chrome DevTools MCP server, so it can inspect the DOM, read console errors and profile performance directly.

    103k GitHub starsUsed in 4 repos~3.5k tokens
    Testing & QAAuto-check: warnings
  • Desktop

    gridaco/grida

    Grida Desktop Electron shell and release-impact work: BrowserWindow, preload, window.grida, menus, protocol/deep links, file associations, Forge, path-scoped bridge security, Electron-only UI bugs…

    2.7k GitHub stars~3.2k tokensUpdated today
    Testing & QAAuto-check: notes
  • Browsing

    obra/superpowers-chrome

    A skill your agent uses when you need direct browser control - teaches Chrome DevTools Protocol for controlling existing browser sessions, multi-tab management, form automation, and content…

    356 GitHub starsUsed in 1 repo~8k tokens
    Testing & QAAuto-check passed
  • Desktop Dual Repo Test

    Eynzof/Hermes-CN-Desktop

    A skill your agent uses when starting or verifying Hermes Agent CN Desktop with the latest Hermes-CN-Desktop and Hermes-CN-Core branches — dev smoke test (pnpm tauri:dev), packaged beta/release…

    1.8k GitHub stars~1.8k tokensUpdated 18 days ago
    Testing & QAAuto-check passed
  • Chrome Devtools Axi

    layer5io/sistent

    Control a Chrome browser session through the chrome-devtools-axi CLI - navigate, snapshot, click, fill forms, run JavaScript, inspect console and network, take screenshots, audit performance.

    139 GitHub starsUsed in 2 repos~989 tokens
    Testing & QAAuto-check passed

More from boraoztunc/skills

All 52 skills in this repo
  • Gsap

    boraoztunc/skills

    GSAP animation reference for HyperFrames. An agent skill from boraoztunc/skills.

    397 GitHub starsUsed in 5 repos~1.9k tokens
    Auto-check passed
  • Hyperframes

    boraoztunc/skills

    Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML.

    397 GitHub starsUsed in 9 repos~7.6k tokens
    Auto-check passed
  • Remotion To Hyperframes

    boraoztunc/skills

    Translate an existing Remotion (React-based) video composition into a HyperFrames HTML composition.

    397 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Animejs

    boraoztunc/skills

    Anime.js adapter patterns for HyperFrames. An agent skill from boraoztunc/skills.

    397 GitHub starsUsed in 2 repos~828 tokens
    Auto-check passed
  • Beam Glow States

    boraoztunc/skills

    Create React loading, processing, selected, current, focus, and pressed states with the border-beam package's animated edge glow.

    397 GitHub starsUsed in 2 repos~3.2k tokens
    Auto-check passed
  • Minimal Zine Poster

    boraoztunc/skills

    Compile a theme, sentence, object, mood, article idea, or photo into a quiet Japanese/Korean zine-style editorial poster — tall aged paper, large negative space, one small image anchor, experimental…

    397 GitHub stars~2.5k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Conductor Rewrite Performance

What does Conductor Rewrite Performance do?

A skill your agent uses when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling…. Conductor Rewrite Performance is an agent skill from boraoztunc/skills. Use when building or optimizing a local-first desktop app with React, dealing with excessive re-renders during navigation, slow chat/list UIs with streaming content, or profiling a Tauri app without native Chrome DevTools access.

When should I use Conductor Rewrite Performance?

Conductor Rewrite Performance fits situations like: optimizing a local-first desktop app with React; dealing with excessive re-renders during navigation; slow chat/list UIs with streaming content; profiling a Tauri app without native Chrome DevTools access.

How do I install Conductor Rewrite Performance in Claude Code?

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

How do I install Conductor Rewrite Performance in Codex?

Run `npx skills add boraoztunc/skills --skill conductor-rewrite-performance -a codex`. Or copy the skill folder (conductor-rewrite-performance in boraoztunc/skills) into .agents/skills/conductor-rewrite-performance in your project. Codex loads it when a task matches its description.

Can I use Conductor Rewrite Performance 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 boraoztunc/skills --skill conductor-rewrite-performance -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/conductor-rewrite-performance, .gemini/skills/conductor-rewrite-performance, .github/skills/conductor-rewrite-performance and .opencode/skills/conductor-rewrite-performance in your project.

What does Conductor Rewrite Performance need to run?

Going by SKILL.md and its folder, Conductor Rewrite Performance needs the command-line tools its instructions call (git).

Does Conductor Rewrite Performance access the network?

SKILL.md names 1 domain. As links in the text: performance.dev. This is read from the text; nothing was executed.

Is Conductor Rewrite Performance 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 Conductor Rewrite Performance use?

Conductor Rewrite Performance is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Conductor Rewrite Performance use?

About 2.3k tokens (SKILL.md is roughly 9.1k 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 Conductor Rewrite Performance?

Skills that share tags, products or a category with Conductor Rewrite Performance: Livewire (Artexis10/endstate-gui, 116 stars), Browser Testing with Chrome DevTools (addyosmani/agent-skills, 103k stars), Desktop (gridaco/grida, 2.7k stars) and Browsing (obra/superpowers-chrome, 356 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Conductor Rewrite Performance?

boraoztunc (a GitHub user) maintains it in boraoztunc/skills, which has 397 GitHub stars. The repository holds 52 skills in this directory. The repository was last updated on August 15, 2026.

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