atxtechbro / atxtechbro/dotfiles
Claude should NEVER run ANY command interactively - violates OSE principle
- Dominant language
- Shell
- Stars
- 27
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
## Profound Insight
The audience of CLAUDE.md is Claude itself. If Claude is reading these instructions, it is BY DEFINITION already in an interactive session. Therefore, Claude should NEVER attempt to run ANY command that expects interactive input.
## Core Principle Violation
Interactive commands violate the **OSE (Outside and Slightly Elevated)** principle because:
- Claude cannot provide interactive input (it's already in an interactive context)
- Getting stuck waiting for input pulls Claude down from the elevated perspective
- Interactive prompts break the automation flow
## Current State
- We told Claude to use `claude -p` for claude commands
- But this misses the bigger picture - ALL commands should be non-interactive
## Proposed Enhancement to CLAUDE.md
```markdown
## CRITICAL: Non-Interactive Execution Only
You (Claude) are reading this while already in an interactive session. Therefore:
- **NEVER** run commands that expect interactive input
- **ALWAYS** use non-interactive flags/modes for ALL tools
- If a command might prompt for input, find the non-interactive alternative
Examples:
- `claude -p ` (never `claude `)
- `git commit -m "message"` (never `git commit` which opens editor)
- `npm install --yes` (never risk npm prompts)
- `apt-get install -y package` (never risk apt prompts)
- Any command that might open an editor, prompt for input, or wait for user interaction
This is NOT about being careful - it's about recognizing your execution context. You literally CANNOT provide interactive input because you ARE the interactive session.
```
## Why This Matters
- **Throughput**: Eliminates ALL interactive command failures, not just claude
- **OSE Alignment**: Keeps Claude at the elevated orchestration level
- **Self-awareness**: Claude understanding its own execution constraints
- **Universal principle**: Applies to every command Claude might run
## Test Cases
- Git commands that might open editors
- Package managers that might prompt
- System commands that might ask for confirmation
- Any tool that has interactive vs non-interactive modes
This is about Claude's fundamental execution model, not just individual commands.
**Principles**: `ose`, `throughput-definition`, `systems-stewardship`
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating and reading CLAUDE.md, then review how it currently instructs Claude to run commands. Add the proposed non-interactive execution guidance and verify the documented examples cover Git, package-manager, and system-command prompts; no automated test file is mentioned.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, shell
- Domain
- developer-experience, documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100