2 min read

The Terminal Is My IDE

Table of Contents

The terminal isn’t fashionable. But it’s where work happens.

The Workflow

TICKET
   ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  PLAN MODE                                  β”‚
β”‚  β”œβ”€β”€ Read ticket requirements               β”‚
β”‚  β”œβ”€β”€ Explore codebase                       β”‚
β”‚  └── Iterate until plan is solid            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  TDD                                        β”‚
β”‚  β”œβ”€β”€ Write failing test first (RED)         β”‚
β”‚  β”œβ”€β”€ Implement to pass (GREEN)              β”‚
β”‚  └── Clean up (REFACTOR)                    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  VERIFY                                     β”‚
β”‚  β”œβ”€β”€ Tests pass                             β”‚
β”‚  β”œβ”€β”€ Types check                            β”‚
β”‚  └── Linter clean                           β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  NEGATIVE REVIEW                            β”‚
β”‚  β”œβ”€β”€ What could break?                      β”‚
β”‚  β”œβ”€β”€ Edge cases covered?                    β”‚
β”‚  └── Adversarial self-review                β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   ↓
  PR

Tools

Terminal
β”œβ”€β”€ claude code      β†’ agents, plan mode, execution
β”œβ”€β”€ git              β†’ checkouts, branches, commits
β”œβ”€β”€ gh               β†’ PRs, issues, reviews
└── npm/pnpm         β†’ build, test, lint

Context
β”œβ”€β”€ CLAUDE.md        β†’ conventions, mistakes, patterns
└── /commands        β†’ slash commands for routine

Why Terminal

  • Composable β€” Pipes. Scripts. Nothing locked in proprietary formats.
  • Fast β€” No mouse. No animations.
  • Remote-ready β€” SSH in and you’re productive.

The best tool is the one that disappears.