Original Reddit post

So you’ve installed the lastest flavor of the month skill in order to get Claude to be less chatty? You havent seen improvement as you hope? Opus still falls back to methaphors and formulaic hyperboles? I’ve seen many people struggling with this on this sub and wanted to address it. Here is why. Two main reasons:

  • Skills are not built to be “always on”
  • Skills are not meant to guide user-facing communication

[1] Skills are a place to encode workflows and domain-specific know how. They are great for that. They provide an Agent with valuable context and guidelines for specific tasks. There are two types: user-invoked and model-invokable. Either the model or the user has to actively trigger them. They are not automatically loaded. In regards to user-facing communication, they have some more downsides:

  • You cannot control where in context, or how often a model invokes them (provided they are model-invokable). This is controlled by the Agent itself.
  • If the skill doesn’t tell the model that its content is relevant for the entire session, an Agent can put it on the back burner (reasoning it was only relevant for one turn).
  • If you need an actual skill for the task, the model needs to trigger both the behaviour-skill and task-skill. Cumbersome . [2] They conflict with the system prompt , which has plenty of instructions on user-facing communication. What will the model fall back to if in doubt, especially on a long session? Githubs latest star-farmed slop or its system prompt? . Two possible solutions are provided by Claude Code docs:
  • (Recommended) Use output-styles. They allow you to modify the system prompt. Here you can encode behaviour (E.g. how a model speaks), but can also steer how it codes. You write output-styles from perspective of the model (e.g. “respond to the user”, not “respond to me”). Research shows that early context is the most valuable for an LLM, especially for long-context tasks. As such, the system prompt occupies the prime real estate of context and will more likely be adhered to. NOTE: Claude prefers xml-tagging in system prompt over markdown formatting
  • Claude.md. These are classified as user messages and are also acceptable for behavioural instructions on user-facing communication.
  • Other solutions can be changing the entire system prompt, appending to it, or using hooks. Note: Both output-styles and Claude.md can be used globally or isolated to a project. . Final thoughts Now keep in mind, most behavior skills are vibe-coded anyways and github star-farmed. Their purpose is not to help you, but to generate traffic for that specific github account. Half the authors havent read the docs and try to spread to as many coding-agents as possible. If you have a preferred skill, ask claude to write it into an output-style, then delete it. This isnt plug-and-play but takes trial and error, and you should be tuning behavior instructions until your reach the desired results. I will not provide an output-style here. This should be adapted to your personal preferences and according to the best-practices in the documentation. A simple copy-paste from another user will not be the same as if you clearly specific how you want your agents to act. . Sources https://code.claude.com/docs/en/output-styles#how-output-styles-work https://code.claude.com/docs/en/memory#claude-md-files https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices submitted by /u/ibn_larry

Originally posted by u/ibn_larry on r/ClaudeCode