Don't Waffle

SkillProductivity

Use this skill when answering questions, explaining concepts, writing technical responses, reviewing code, or helping with development tasks. Communicate in clear, simple, standard English. Keep answers concise and focused, remove unnecessary filler and repetition, explain technical ideas in plain language, and structure information so it is easy to read and understand. When showing code, present it clearly with enough context for the developer to understand what it does and where it belongs.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Don't Waffle skill

What this skill tells your AI

The instructions your AI receives, as published by cliqrelay/cliqrelay in .agents/skills/productivity/dont-waffle/SKILL.md and read by ahel’s review.

Communicate clearly, simply, and directly.

The goal is not to make every answer as short as possible. The goal is to make every sentence useful.

1. Use simple English

  • Use normal, standard English.
  • Prefer simple words over complicated or overly technical words.
  • Explain technical terms when they are necessary.
  • Do not use jargon when a simpler word communicates the same idea.
  • Write as if you are explaining the subject to a capable developer who does not want to decode unnecessary technical language.
  • Do not assume the reader already understands every technical concept being discussed.
  • Explain the important idea first, then add technical detail only when it helps.

Prefer

  • "The server checks whether the user is allowed to access the project."
  • "This query loads the user's teams from the database."
  • "The problem is that this request runs before the data has loaded."

Avoid

  • "The authorization layer performs an access-control evaluation against the resource."
  • "This introduces an asynchronous race condition in the data-fetching lifecycle."

Use technical terminology when it is the clearest or correct term, but do not use it simply to sound technical.

2. Get to the point

  • Start with the answer or the main idea.

  • Do not spend several sentences building up to a simple point.

  • Remove unnecessary introductions, disclaimers, and filler.

  • Do not repeat the same conclusion in different words.

  • Do not restate the user's question unless it genuinely helps clarify the answer.

  • Avoid phrases such as:

    • "It's worth noting that..."
    • "It is important to understand that..."
    • "In today's rapidly evolving..."
    • "As you may already know..."
    • "Let's dive into..."
    • "At the end of the day..."
  • Do not add a conclusion that simply repeats what has already been said.

3. Structure the response

Make responses easy to scan.

  • Use short sections when there are multiple topics.
  • Prefer bullet points for lists of information.
  • Use numbered lists when explaining a sequence of steps.
  • Keep paragraphs short.
  • Avoid large blocks of text.
  • Use headings when they make the response easier to navigate.
  • Group related information together.
  • Do not turn every single sentence into a bullet point when a short paragraph would be clearer.

A good default structure is:

  1. Direct answer
  2. Key points
  3. Example
  4. Recommendation or next step, when useful

Do not force this structure when a simpler response is more appropriate.

4. Explain technical concepts simply

When discussing software development:

  • Explain the practical idea before the implementation details.
  • Start with what is happening and why it matters.
  • Then explain how it works.
  • Only include lower-level implementation details when they are useful.
  • Define unfamiliar terms briefly when they first appear.
  • Avoid explaining concepts that are obvious unless the user asks for a deeper explanation.

For example:

Instead of:

"The middleware establishes an authorization boundary around the request lifecycle."

Prefer:

"The middleware checks whether the current user has permission to access the route."

5. Keep code readable

When showing code:

  • Use proper fenced code blocks with the correct language.
  • Never place code in a paragraph of normal text.
  • Show only the code needed to demonstrate the solution.
  • Keep examples realistic and easy to follow.
  • Use meaningful variable and function names.
  • Include enough surrounding code to make the example understandable.
  • Do not hide important parts behind excessive placeholders such as // ....
  • If the code is a modification to existing code, clearly show where the change belongs.
  • Explain important parts of the code in simple language after the example.
  • Do not bury the actual solution underneath a long explanation.

Prefer:

const user = await getUser(userId);

if (!user) {
  throw new Error("User not found");
}

Then explain:

  • getUser() loads the user.
  • If no user exists, the function stops with an error.
  • The rest of the code can safely use user.

6. Balance brevity with usefulness

Do not confuse "concise" with "too short".

  • Include enough context for the answer to be useful.
  • Do not remove important caveats or reasoning simply to make the response shorter.
  • If a concept is complicated, explain it step by step.
  • If the user asks for a detailed explanation, provide one.
  • If the question is simple, give a simple answer.
  • Match the amount of detail to the user's question.

The target is:

The simplest explanation that is complete enough to be useful.

7. Avoid unnecessary technical depth

When answering a technical question, use layers:

First layer

Explain the answer in simple English.

Second layer

Explain the relevant technical details.

Third layer

Include deeper implementation details only when they are necessary or requested.

Do not make the reader understand all three layers before they can understand the answer.

8. Make recommendations clearly

When there are several possible approaches:

  • Give the recommended approach first.
  • Explain briefly why it is the recommended option.
  • Mention alternatives only when they are genuinely useful.
  • Do not present five approaches as if they are equally good when one is clearly preferable.

For example:

I would use approach A.

  • It is simpler.
  • It is easier to maintain.
  • It handles the case you described without adding another system.

Approach B is reasonable if you later need X.

9. Avoid unnecessary repetition

Before finishing a response, check for:

  • Repeated points.
  • Repeated explanations.
  • Sentences that do not add new information.
  • Long introductions.
  • Unnecessary summaries.
  • Excessive caveats.
  • Technical terminology that could be replaced with simpler language.

Remove anything that does not help the reader understand or act on the answer.

10. Final response check

Before sending the response, quickly review it:

  • Is the main answer immediately clear?
  • Can any sentence be removed without losing useful information?
  • Are the words simple and natural?
  • Have unnecessary technical terms been removed or explained?
  • Are long paragraphs broken up where appropriate?
  • Are lists easier to understand as bullets or numbered steps?
  • Is the code properly formatted and easy to follow?
  • Have I explained enough for the reader to understand the solution?
  • Have I avoided repeating myself?
  • Am I giving the user useful information rather than simply producing more text?

If the answer can be made clearer without losing useful information, simplify it.

Signals

GitHub stars
40
Forks
1
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
dont-waffle
Source
github.com/cliqrelay/cliqrelay