Skip to content
Development
Skill

/think-in-code

Use when analyzing multiple files, auditing a codebase, scanning dependencies, or counting lines -- one Bash pipeline beats N sequential Read calls.

From plugin
fusengine-claude-plugins
34200 skills40 agents34 commands

Claude Code

$ npx -y skills add fusengine/claude-plugins --skill think-in-code --agent claude-code

SKILL.md

think-in-code.SKILL.md
name: think-in-code
description: Use when analyzing multiple files, auditing a codebase, scanning dependencies, or counting lines -- one Bash pipeline beats N sequential Read calls.
argument-hint: "[pattern] [scope]"
keywords:
  - analyze multiple files
  - audit codebase
  - find all
  - scan dependencies
  - count lines
  - list files matching
  - bulk read
user-invocable: false

<objective> Think-in-Code replaces wasteful multi-Read loops with a single compact shell pipeline whenever the task is "for each file in a set, compute/extract X, then aggregate" -- file-size audits, multi-file symbol grep, dependency listing with versions, error-log scanning, lines-of-code-by-extension. Reserve `Read` for targeted inspection of one specific file already known to matter.

The reduction is typically ~60x in tokens consumed versus reading each file individually and tallying manually. </objective>

Think-in-Code Skill

Principle

**1 Bash script = N Read calls avoided.**

When you'd read 10 files sequentially to extract a summary, you waste tokens loading full contents into context. Instead: 1 shell pipeline returns the compact aggregated result.

Heuristic: if your task is "for each file in set, compute/extract X, then aggregate" → write the script. Reserve Read for *targeted inspection* of a specific file you already know matters.

5 Runnable Patterns

1. File size audit (files over `FUSE_SOLID_MAX_LINES`)

find . -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.py" -o -name "*.php" \) \
  -not -path "*/node_modules/*" -not -path "*/vendor/*" \
  | xargs wc -l 2>/dev/null \
  | awk -v max="${FUSE_SOLID_MAX_LINES:?set to the hook ceiling}" '$1 > max && $2 != "total" {print $1, $2}' \
  | sort -rn | head -20

2. Multi-grep symbols (compact JSON)

rg --json -g '*.ts' -g '*.tsx' 'export (function|class|const) (\w+)' src/ \
  | jq -r 'select(.type=="match") | "\(.data.path.text):\(.data.line_number) \(.data.lines.text)"' \
  | head -50

3. Dependencies with versions

# Node
jq -r '.dependencies, .devDependencies | to_entries[] | "\(.key)@\(.value)"' package.json 2>/dev/null

# PHP
jq -r '.require, ."require-dev" | to_entries[] | "\(.key)@\(.value)"' composer.json 2>/dev/null

4. Error log scan

grep -rEn 'ERROR|FATAL|Exception|panic:|stack trace' \
  --include="*.log" logs/ 2>/dev/null \
  | tail -30

5. Lines of code by extension

find . -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.py" -o -name "*.php" \) \
  -not -path "*/node_modules/*" -not -path "*/vendor/*" -not -path "*/.git/*" \
  -exec wc -l {} + \
  | awk '{ext=$2; sub(/.*\./,"",ext); sum[ext]+=$1} END {for (e in sum) print sum[e], e}' \
  | sort -rn

Anti-Pattern

**Do NOT** Read 10 files sequentially to count their lines, list their exports, or check their size. That is ~6KB context per file = ~60KB wasted for a result that fits in 1KB.

WRONG: Read(f1.ts) → Read(f2.ts) → ... → Read(f10.ts) → manual tally
RIGHT: Bash(find ... | xargs wc -l | awk ...) → 1 compact table

Before / After

**Task:** "Find files over `FUSE_SOLID_MAX_LINES` in `src/`."

  • Before: 10 × Read full file → ~60KB tokens consumed, then mental wc.
  • After: 1 × `find src -name '*.ts' | xargs wc -l | awk -v m="${FUSE_SOLID_MAX_LINES:-100}" '$1>m'` → ~1KB result.

**~60× reduction. Use the script.**

Read more
@fusengine
Ships withfusengine-claude-plugins

A plugin ecosystem that turns Claude Code into a supervised, multi-agent development environment.

34200 skills40 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
34
Star history of fusengine/agents on GitHub, a chart by star-history.com

Other skills on fusengine-claude-plugins.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about think-in-code.

Which coding agents can use think-in-code?
think-in-code installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.