> For the complete documentation index, see [llms.txt](https://docs.perception.cx/perception/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.perception.cx/perception/enma-ai/coding.md).

# Coding

### Files and edits

* Read, search (glob and grep), write, edit and patch files. Every change renders an inline diff, and an edits history panel tracks the session.
* **Forgiving edits.** A replacement that differs only by curly quotes, trailing whitespace, one layer of over-escaping (a literal `\n` where the file has a real newline) or a shifted indentation level still matches. New text is re-indented to the file's actual level. Ambiguous matches are refused, never guessed.
* Broken writes surface instantly: JS and JSON files are re-parsed after every write and a syntax error is reported in the tool result.
* Symbol-aware refactoring: find every callsite, rename project-wide with a dry run first.

### Running things

* Shell commands, builds and tests with Windows-aware guidance. Colored CLI output arrives clean, no stray escape codes.
* Background tasks survive Stop, dev servers run with no timeout, and finished tasks auto-resume the chat. Cancelled tasks die cleanly, whole process tree.
* A real terminal (actual TTY) is built in.

### Live preview

A built-in web preview with auto-reload on every edit, CDN script support, multi-page routing, device sizes and a dev-server mode. When a page breaks you get a clear banner. The vision agent can look at the preview and even playtest it.

### Git

* The Git panel shows branch, ahead/behind, staged and unstaged files with per-file diffs. Stage, commit and browse history, all user-driven, with one-click `git init` for new projects.
* **GitHub** (optional, needs the `gh` CLI): push your branch, open a PR, list open PRs. Your buttons only. Agents never push.

### Plans and navigation

A step-by-step plan panel that you and the agent both edit, and clickable file mentions in chat that jump to the file.
