talk-normal: A System Prompt That Removes AI Verbosity
Make any LLM talk like a normal person. A system prompt that removes AI slop.
At a glance
- What is it?
- talk-normal is an MIT-licensed single system prompt that transforms verbose, corporate-sounding LLM output into direct responses, tested to reduce GPT-4o-mini output length by 73% while preserving all useful content. It works with any model that accepts a system prompt.
- Who is it for?
- talk-normal is the right tool when LLM verbosity is a concrete problem: financial analysis, developer tooling, or any workflow where reading through boilerplate summaries and bolded headers costs time. It is not suitable when the extra structure in a response serves a purpose, such as tutorials for beginners or structured summaries designed for skimming.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 161 days ago.
- What is it written in?
- Mainly Shell, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What Problem talk-normal Addresses
Large language models produce verbose output by default. A question like 'What is Python?' routinely returns multiple paragraphs with bolded headers, numbered feature lists, and a closing remark about Python's community. The actual answer occupies a fraction of that output. For developers running automated pipelines, for analysts reading dozens of model responses per day, or for applications that display model output directly to end users, this verbosity has a real cost.
The README gives a concrete before-and-after comparison for the Python question. The before response from GPT-4o-mini runs 1,583 characters across multiple formatted sections. The after response runs 513 characters: three sentences covering the same substantive content without headers, lists, or closing remarks. The README states all useful information is preserved.
The motivation behind the project was a real financial analysis workflow. A trader's market commentary on energy, fertilizer, and equity movements was submitted to a model, and the response pattern of excessive structure and hedging was interfering with the actual analysis. The repository grew from that practical case.
How the System Prompt Works
The repository contains two main prompt files: prompt.md for general use and prompt-chatgpt.md for ChatGPT specifically. The README describes the prompt as transforming corporate-sounding LLM output into direct, informative responses. The rules in the prompt target specific patterns: filler openings, formatted lists where prose would serve equally well, bolded emphasis, hedging phrases, and closing uplift sentences.
The mechanism is a set of explicit instructions passed as a system prompt before user input. It does not modify the model's weights or require fine-tuning. It works by telling the model what not to do, rather than telling it to be shorter, which tends to produce vague truncation rather than genuine compression.
The README reports test results on ten questions for two models. GPT-4o-mini showed a 73% reduction in character count. GPT-5.4 showed a 72% reduction. The full comparison including all ten questions and complete before-and-after answers is in TEST_RESULTS.md in the repository. The README notes the results are for preserving useful information, not just cutting length, though the methodology for determining what counts as useful is not described in detail.
Applying talk-normal to Your Workflow
The simplest application is to copy the contents of prompt.md and paste it as the system prompt in any chat interface or API call. The README lists compatible model families: GPT, Claude, Gemini, and LLaMA. Because the prompt is plain text instructions rather than model-specific configuration, it applies to any model that accepts a system prompt in its API or interface.
For API integration, the system prompt goes in the system role message before the user message in the conversation. For Claude's API, it goes in the system parameter. For ChatGPT's custom instructions feature, the prompt-chatgpt.md variant is provided as a separate file tuned for that interface.
The repository includes a skill/ directory and a skill-hermes/ directory, which suggest the prompt is packaged as a Claude Code skill installable through the Claude Code skill system. The repository also contains an install.sh file, which can install the skill automatically. The README does not describe the skill installation steps in detail; the relevant documentation is in the skill-hermes/ directory.
The Financial Market Analysis Case
The README includes the full text of the market commentary that motivated the project. A trader's note on energy, fertilizer, agricultural equities, and crude oil curve behaviour was submitted to a model. The note covers specific instruments, relative value trades between curve months, and distinctions between what matters for equities versus what matters for commodity prices during a geopolitical event involving shipping strait access.
This is a domain where every word in the analysis carries weight, and a model that responds with generic acknowledgements, restatements, or cautionary framing degrades the value of the interaction. The talk-normal prompt addresses that specific failure mode: the model should engage with the substance, not add structural scaffolding around it.
The README does not show the before-and-after output for this specific case; it presents it as the motivating example. The Python question comparison serves as the quantified demonstration. The financial case illustrates why the 73% reduction statistic matters in practice: in a domain where precise reading of market signals matters, a response that buries the signal in padding is worse than no response.
Limitations and When Not to Use talk-normal
The system prompt is a set of negative constraints. It removes patterns without adding domain knowledge. For use cases where formatting serves the reader, such as a step-by-step tutorial for a beginner who benefits from numbered lists, or a structured report designed for skimming by executives, removing that structure creates a worse experience.
The prompt also does not address factual accuracy or reasoning quality. A model following talk-normal rules will still hallucinate or reason incorrectly; it will just do so in shorter prose without headers. Verbosity and correctness are independent problems.
The README notes that contributions to the prompt rules are welcome and that recent rule changes are tracked in CHANGELOG.md. This means the prompt is a living document, not a fixed specification. Deploying it in a production application means tracking upstream changes to determine whether each update improves or degrades output quality for your specific use case.
talk-normal vs. Model-Level Brevity Settings
Several model providers offer built-in ways to reduce response length. OpenAI's custom instructions feature, Claude's system prompt field, and various model-level verbosity parameters all give some control over response style. The difference between those approaches and talk-normal is specificity. Model-level brevity instructions tend to trade length for vagueness: a shorter response often omits content rather than compressing it.
The talk-normal README positions the prompt as targeting specific patterns that produce verbosity without information: filler openings, synonym cycling, list formatting for content that reads better as prose, and generic closings. The goal is not shorter responses in general but responses where every character carries content.
This is a qualitative claim, and the evidence in TEST_RESULTS.md is quantitative only (character counts). Whether the approach works better than a simpler 'be concise' instruction depends on the model and the domain. For developers who find the default output of their chosen model consistently over-formatted, talk-normal provides a starting point that has been tested on multiple model generations.
Editorial conclusion
talk-normal is the right tool when LLM verbosity is a concrete problem: financial analysis, developer tooling, or any workflow where reading through boilerplate summaries and bolded headers costs time. It is not suitable when the extra structure in a response serves a purpose, such as tutorials for beginners or structured summaries designed for skimming. The system prompt is in prompt.md in the repository; apply it directly to see whether the output style matches your expectations before committing to it. The last push was on 2026-04-22.
Frequently asked questions
Does talk-normal work with Claude?
The README lists Claude as one of the compatible models alongside GPT, Gemini, and LLaMA. Because talk-normal is a plain text system prompt rather than a model-specific configuration, it works with any model that accepts a system prompt. The prompt-chatgpt.md file provides a variant tuned for ChatGPT's custom instructions interface.
Does talk-normal work with locally hosted models like LLaMA?
The README explicitly lists LLaMA as a compatible model. Because the prompt is plain text passed as a system message, it works with any local serving setup that accepts a system prompt, such as Ollama or llama.cpp with a chat template that supports system messages.
How was the 73% reduction figure measured?
According to the README, the figure is a character count reduction on GPT-4o-mini across ten test questions, with the README asserting that all useful information from the longer responses was preserved in the shorter ones. The full set of questions and complete before-and-after answers is in TEST_RESULTS.md in the repository.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/hexiecs-talk-normal)