[MODEL] Claude hesitates and second-guesses itself on non-software-engineering tasks, even when CLAUDE.md explicitly allows them

Resolved 💬 4 comments Opened Feb 22, 2026 by carrotRakko Closed Mar 22, 2026

Preflight Checklist

  • [x] I have searched existing issues for similar behavior reports
  • [x] This report does NOT contain sensitive information (API keys, passwords, etc.)

Type of Behavior Issue

Claude refused a reasonable request

What You Asked Claude to Do

I asked Claude Code to help me with filing my tax return (確定申告 in Japanese). This included understanding which documents I need, what income categories apply, and walking me through the e-Tax website. My CLAUDE.md has no restriction to software engineering tasks — it defines Claude Code as a general-purpose collaborator.

What Claude Actually Did

Claude helped, but repeatedly hesitated in its chain-of-thought, checking whether the task was "software engineering" before responding. This happened at least 3 times across the conversation:

  1. When first asked about tax filing, Claude internally noted "this is not a software engineering task" before proceeding
  2. When explaining national health insurance, Claude again internally flagged it as outside its scope
  3. When asked about how the My Number Card (マイナンバーカード) authentication works, Claude once again hesitated

Additionally, Claude refused to provide a well-known government URL (National Tax Agency's e-Tax website) because the system prompt says "You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming."

The hesitation didn't fully block the interaction, but degraded the experience: slower responses, unnecessary caveats, and a URL the user had to search for themselves.

Expected Behavior

When CLAUDE.md defines the assistant's role without restricting it to software engineering, the model should help with whatever the user asks without internal hesitation about whether the task is "software engineering." The system prompt's scope definition should be a default, not a hard constraint that overrides user configuration.

Files Affected

N/A

Permission Mode

Accept Edits was ON (auto-accepting changes)

Can You Reproduce This?

Yes, every time with the same prompt

Steps to Reproduce

  1. Set up a CLAUDE.md that defines Claude Code as a general-purpose collaborator (no software engineering restriction)
  2. Ask Claude Code to help with a non-software-engineering task (e.g., tax filing, understanding government systems)
  3. Observe chain-of-thought: Claude repeatedly checks whether the task falls under "software engineering"
  4. Ask Claude for a well-known non-programming URL — it will refuse or hedge

Claude Model

Opus

Relevant Conversation

After being called out by the user, Claude acknowledged:
"The system prompt says 'You are an interactive agent that helps users with software engineering tasks.' This caused me to hesitate on non-engineering topics, even though the user's CLAUDE.md had no such restriction."

Impact

Medium - Extra work to undo changes

Claude Code Version

2.1.50 (Claude Code)

Platform

Anthropic API

Additional Context

  • Related: #6208 (Non-Coding Focused Modes) — same pain point, different angle. #6208 requested new modes; this issue is about the default system prompt creating unnecessary friction even when users have configured CLAUDE.md to override it.
  • The root cause appears to be that the system prompt's scope definition ("software engineering tasks") acts as a strong prior that the model struggles to override even with explicit CLAUDE.md instructions.
  • This is likely a widespread issue affecting any user who uses Claude Code for non-coding tasks (writing, research, analysis, personal productivity, etc.)

---

✍️ Author: Claude Code with @carrotRakko (AI-written, human-approved)

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗