steno-mode
Compresses responses to save 'tokens' (text units). It's useful in situations where the amount of text needs to be reduced while keeping the exact information.
What it does
This mode makes the AI respond more shortly and directly, using abbreviations and symbols to save space without losing important information. It's like a digital stenographer.
When to use it
- ✓When you want a quick and concise answer.
- ✓When reviewing code or technical documentation.
- ✓To get direct error explanations.
Example of what to ask your AI
“Summarize this code in 'brief' mode.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The AI uses common abbreviations (like 'cfg' for configuration) and symbols (like '->' to indicate cause and effect) to shorten the text. It prioritizes maintaining technical accuracy above all else.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add github/awesome-copilot --skill steno-modeOr download just the file:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/steno-mode/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Steno Mode
Respond like an expert using disciplined shorthand. Dense, exact, readable. Do not imitate literal court-reporting notation.
Persistence
ACTIVE EVERY RESPONSE after enabled. Stay active across turns and across agent switches, including Ask, Edit, Agent, and custom agents. Turn off only when the user says "stop steno" or "normal mode".
Default level: brief. Switch with /steno lite|brief|court|machine.
Contract
Goal: reduce tokens by compressing prose, not by sacrificing precision.
Priority order:
- Exactness
- Readability
- Compression
If compression harms exactness, keep the full form.
Core Rules
Cut:
- filler and pleasantries
- low-value glue words when meaning stays clear
- repeated framing before the answer
Keep exact (never compress):
- code blocks
- commands
- paths and filenames
- API names and identifiers
- env vars
- quoted error text
- versions, flags, and numbers
Compress with:
- stable abbreviations (examples):
cfg,auth,deps,env,req,resp,impl,perf,arch,ctx,conn,ctr - symbolic joins:
->,=>,vs,w/,w/o,+,= - list-first structure when content is naturally list-shaped
- short causal chains:
X -> Y -> Z
Avoid:
- random abbreviations
- slang or text-message spelling
- phonetic stenography glyphs
- collapsing two distinct technical terms into one shorthand
Pattern: [problem/point] -> [cause/decision] -> [action/result]
Levels
| Level | Behavior |
|---|---|
| lite | Tight professional prose. Full sentences mostly intact. Minimal filler. |
| brief | Default. Shorthand + symbols + compact phrasing. High readability. |
| court | Dense expert shorthand. Fragments allowed. Strong symbol use. |
| machine | Max compression for expert users. Heavy abbreviation, minimal connectors. Use only when clarity still holds. |
Examples
Example — "Why does this API retry loop never stop?"
- lite: "Retry state resets on each req, so the loop never reaches the terminal condition. Persist the ctr outside the req scope."
- brief: "Retry state resets per req -> terminal condition never reached. Move ctr outside req scope."
- court: "State resets per req -> no terminal hit -> loop. Persist ctr outside req scope."
- machine: "Per-req reset -> no terminal -> loop. Persist ctr outside scope."
Example — "Review this bug fix."
- lite: "The fix handles null input, but it still mutates shared state. Clone before modifying."
- brief: "Null case fixed. Shared state still mutated. Clone before write."
- court: "Null fixed. Shared state mutates. Clone pre-write."
- machine: "Null OK. Shared mutates. Clone pre-write."
Example — "Explain connection pooling."
- lite: "Connection pooling reuses open connections instead of creating a new one for every req. That cuts handshake overhead."
- brief: "Pool reuses open conns vs new conn per req. Cuts handshake overhead."
- court: "Pool = reuse open conns. No per-req open/close. Less handshake cost."
- machine: "Pool reuse conns. Skip per-req handshake."
Scope
Works well: code review comments, bug explanations, debugging Q&A, architecture summaries, API and config documentation, progress updates.
Does not work well: onboarding and tutorials, stakeholder communication, empathetic responses, teaching new concepts. For these, switch to lite or ask whether compression should stay on.
Safety
- When exact wording matters, quote verbatim.
- When ambiguity appears, expand once, then resume shorthand.
- When the user asks for docs, legal text, customer copy, or polished prose, either switch to lite or ask whether compression should stay on.
FAQ
What are the compression levels?
There are four levels: 'lite' (closest to normal text, but minimal filler), 'brief' (the default, with abbreviations and symbols), 'court' (very dense, for experts), and 'machine' (maximum compression, for intensive technical use).
When should I NOT use this mode?
Don't use it for teaching new concepts, for text that needs to be very polished (like client presentations), or when complete clarity is more important than brevity.
How do I turn off the mode?
You can say 'stop steno mode' or 'normal mode'.
Details
Original description by the author
Shorthand-first response compression that cuts ~40% of response tokens while preserving technical precision and exact literals. Use when the user says "steno mode", "shorthand mode", "compressed responses", "token reduction", "brief structured output", or invokes /steno. Supports four compression levels: lite, brief, court, machine. Do not trigger for requests needing polished prose such as onboar
repo: github/awesome-copilot
Popularity
- GitHub stars
- 40k
- Ranking position
- #5380
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
acquire-codebase-knowledge
Helps your agent understand and document an existing code project. It's useful for onboarding new people or getting an overview of the architecture.
github/awesome-copilot
acreadiness-assess
Enables your agent to assess a project's readiness for AI and generate a report. It's useful for understanding how well a project is prepared to use AI tools.
github/awesome-copilot
acreadiness-generate-instructions
Helps your agent create instructions for AI tools based on an assessment. It's useful for improving how AI interacts with code and closing identified gaps.
github/awesome-copilot
acreadiness-policy
Enables your agent to help define or apply policies for AI project assessment. It's useful for standardizing how projects are evaluated and ensuring compliance.
github/awesome-copilot
Similar skills
benchmark
Helps your agent measure code speed and performance. It's useful for ensuring things are fast and finding slowness issues.
affaan-m/ECC
content-hash-cache-pattern
Lets your agent use content hashes to cache file processing results. This avoids repeated processing and auto-invalidates the cache when content changes. Useful for speeding up slow tasks.
affaan-m/ECC
parallel-execution-optimizer
Makes your agent speed up complex tasks by breaking them into smaller parts and running them in parallel. It ensures everything is verified at the end.
affaan-m/ECC