
Avoid hidden caches and fragile local files. When possible, derive everything from inputs or trusted sources, then write outputs deterministically. Stateless designs enable repeatability, review, and safe retries. If state is unavoidable, isolate it, version it, and document its lifecycle conspicuously and kindly.

Favor explicit flags, environment prompts, and pre‑flight validation that politely blocks confusion. Echo back what will happen using tiny previews. Use names that match mental models, not internal jargon. Clear entry points turn anxious first‑runs into confident routines shared freely across teams and tools.

Expect mess. Validate assumptions, handle missing files gracefully, and emit actionable errors with next steps. Offer a dry‑run mode and an undo where feasible. Crashes are teachable moments when logs narrate intentions and partial progress, preserving dignity and data while encouraging another safe attempt.