# My favorite skill: /s

> Two characters that keep me sane. Not sarcasm.

- Author: Alex Tkachev
- Published: 2026-11-01
- URL: https://leksat.me/posts/my-favorite-skill

No joke, this one line of agent instructions saves my brain:

> Your last response is too long. The user won't read it. Shorten it. Keep only essential information.

+ The rest of the skill file is metadata

  ```markdown
  ---
  name: s
  description: Shorten the last response.
  disable-model-invocation: true
  ---

  Your last response is too long. The user won't read it. Shorten it. Keep only essential information.
  ```

  `disable-model-invocation` keeps the agent from calling the skill on its own.

+ Blah blah blah

  My agent talks too much. Recently Claude Code got a setting for it, `"outputStyle": "Concise"`, and it helps a bit, but the answers are still often wordy. I don't know if other tools have the same problem. Most likely they all do: at the core of any agent is a text generator.

  + First I tried an always-on rule in my user instructions

    Over several months, my global `CLAUDE.md` went through more than a dozen versions of it. Some of them:

    - "In all messages, commit messages, pull request descriptions and other interactions, be extremely concise and sacrifice grammar for the sake of concision."
    - "Reason as deeply as needed; only the output must be dense. Cut filler, never substance."
    - "Be concise."
    - "Think a lot, talk little."
    - "If a final response exceeds a couple of sentences, end it with a short summary prefixed with 'Net:'."
    - "The user doesn't like to read. He skips long messages. Avoid long messages at all costs. Long messages = wasted work."

  No such rule really helped. The agent tries to be as helpful as possible, and in its eyes, the most helpful answer is the one with the most information.

  That's how `/s` was born. Say I ask: "This works like so-and-so, right?" All I need is a yes or no, maybe with a short clarification. But sometimes, even with the Concise style, the agent puts out a whole wall of text: it considers some points important, and I don't. So I hit three keys: `/`, `s`, `enter`. The answer comes back compact, with only what matters 🔪

  There's a reason the skill works where the rules didn't. Neither people nor agents are good at multitasking: both can do several things at once, but each comes out worse. Focused on one thing, both do better. That's why I give each review agent [a single axis](/posts/one-reviewer-one-axis).

  With a general rule, the agent has to do the work and, at the same time, figure out which parts matter to me and how to put them in as few words as possible. With the skill, there's no juggling: first the agent does the task, then, with the finished answer in hand, it focuses only on making it shorter.

  When the stakes are low, I hit `/s` as soon as a long answer comes in. Sometimes twice in a row.

  + It also informs the agent that I didn't read the long version

    Sometimes the agent fires off a long answer; I skim it and reply only to the question at the end. It may then assume I read, understood and remembered all of it, and build the rest of the conversation on that. But I didn't read it, so later I may miss something, possibly something important.

    The skill says it plainly: the user won't read this response. The idea is that the agent now knows I missed some nuances and can remind me of them later.

  Right now `/s` is my favorite skill: it really saves me from cognitive overload 😍

/s
