atxtechbro / atxtechbro/dotfiles

Claude should NEVER run ANY command interactively - violates OSE principle

Open
#875 0 comments 0 reactions 0 assignees View on GitHub
claude enhancement ose throughput
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.