Most agent tools have an interactive mode, where a person types and approves, and a non-interactive mode for automation. Claude Code, for example, runs non-interactively with `claude -p "<prompt>"`, can return JSON or a stream of JSON events, and takes flags that pre-approve tools or set a permission mode, because nobody is there to answer a prompt. Other agent CLIs offer equivalent commands for scripts and CI.
Running an agent headless is easy. Running it well is not. Three gaps appear as soon as the human leaves. Direction: a one-shot prompt has to carry the whole process, so long jobs drift or stop early. Judgment: anything that would have been a question to a person is either denied or decided by the model alone. Evidence: the result is whatever the run printed, unless something else kept a record.
Teams close those gaps with structure around the agent rather than longer prompts. The agent gets the process from a system it can ask, step by step. Decisions that need a person are routed to a checkpoint that waits. The record of what happened is kept outside the run, so it survives when the run ends.