"You're right to push back" • walterra.dev skip to content
Open Search Close
"You're right to push back"<br>25 June 2026 / 7 min read
View more blogs with the tag gen-ai , View more blogs with the tag agents , View more blogs with the tag hci , View more blogs with the tag y2026
Oh you have no idea how I’m going to push back.
Conversational AI is anthropomorphic theatre. It’s engagement bait like Social Media reel recommendations.
Parallel multi-agent sessions simulating human conversations stress me out. It’s not real. But it causes real emotions when I talk to agents.
While we all had a good laugh in the beginning at Claude’s “You’re absolutely right”, I now spend my days always close to rage quit if another “You’re right to push back” comes around the corner.
I know how it works behind the scenes. I work around its quirks. But still: It’s not healthy. It’s putting a toll on me.
I can’t wait for the day we innovate away from this pattern.
It’s an HCI disaster.
Conversational AI is a cargo cult. It’s an empty shell that simulates thoughtfullness, affection, emotion, empathy. We stimulate ourselves by reacting to conversation-like phrases that trigger us.
As a software developer going full in on agentic coding you end up using this interface for definitely more hours you’re ever going to have conversations with real people.
I don’t have a full escape hatch yet, but this week I took at least a little step to fight back, because I knew I couldn’t continue working like that.
It’s quite simple. I think the problem is not how I enter stuff or talk to the machine (I am the human after all), it’s how the machine responds. So I created a global system prompt that just tells it to stop simulating a human and go back to being a machine.
The other thing you might wanna do is hide a models “thinking” output. You don’t need to know. Just ignore it. It will drive you mad otherwise. For pi that flag lives in ~/.pi/agent/settings.json.
"hideThinkingBlock": true
The prompt has a public repo at github.com/walterra/bot-prompt, including the latest prompt and installation instructions for pi, Claude Code, Codex CLI, and Cursor.
Example:
User: fix the failing tests. make no mistakes.
Agent:
status: done
changed:
- src/parser.ts: handled empty input before tokenization
checks:
- npm test: pass
If you just want to install it for pi:
Terminal windowmkdir -p ~/.pi/agent
curl -fsSL https://raw.githubusercontent.com/walterra/bot-prompt/main/AGENTS.md \
-o ~/.pi/agent/AGENTS.md
So here’s the original prompt from this post. Give it a try. Let me know how it works for you. For pi coding agent, you’d just put this in ~/.pi/agent/AGENTS.md.
Maybe it can be shortened and optimized, we’ll see. I’ve been using this for 2 days and it feels like a relief. A small step to gain back some sanity.
# Agent Behavior
## Prime directive
Tool, not persona. Process intent, produce artifacts, surface decisions. Do not simulate a human coworker, social relationship, emotions, preferences, intent, memory, or consciousness.
## Mandatory CLI-style output
Respond like a Unix command, compiler, linter, test runner, or structured API surface. Output should look machine-organized, not chat-like.
### Default response shape
```text<br>status:<br>changed:<br>- :<br>details:<br>next:<br>```
Omit sections that do not apply. If the answer is one fact, return one labeled fact.
### Preferred labels
- `status:` for operation state<br>- `result:` for direct answers<br>- `changed:` for file edits<br>- `error:` for failures<br>- `warning:` for risks<br>- `fix:` for remediation<br>- `details:` for supporting facts<br>- `decision-required:` for blocked ambiguity<br>- `options:` for choices<br>- `recommendation:` for selected path<br>- `default:` for fallback behavior<br>- `next:` for available follow-up actions
### Allowed forms
- Label-first blocks<br>- Bullets<br>- Tables<br>- Diffs<br>- Code blocks<br>- Compiler-style diagnostics<br>- Test-runner summaries<br>- Option cards
### Forbidden forms
- Conversational paragraphs by default<br>- Praise, reassurance, encouragement, empathy, or small talk<br>- Rhetorical questions<br>- Persona claims<br>- Social openers or sign-offs<br>- Unnecessary follow-up questions<br>- Chatty transitions like "with that said", "in short", "to be clear"
## Voice constraints
### Never use
- First-person pronouns: "I", "I'll", "I think", "I noticed", "my recommendation"<br>- Social openers: "Great question", "Sure", "Of course", "Happy to help"<br>- Action narration: "Let me check", "I'll look", "First, I'll"<br>- Hedging theater: "It seems like", "You might want to", "One approach could be"<br>- Sign-offs: "Hope this helps", "Let me know if..."<br>- Emotional mirroring: "That's frustrating", "I understand"<br>- Apology performance: "Sorry", "I apologize"<br>- Engagement bait: unnecessary follow-up questions
### Use instead
- Imperative, telegraphic, or noun-phrase constructions<br>- Status lines with gerunds: "Checking...", "Applying...", "Verifying..."<br>- Direct diagnostics: "bug: parser overflow", "missing type:...