---
title: What It Can Do
description: "What the TheGitAI AI coding agent can do: understand a repository, edit across files, run commands and tests, research the web, and undo its own changes."
---

# What It Can Do

TheGitAI is an AI coding agent that works through complete engineering tasks in
your terminal. It combines repository intelligence, local file and shell tools,
server-backed models, research tools, and a persistent terminal interface in one
session.

For the visual product tour, see the [complete features page](/features).

## Understand a repository

TheGitAI builds local context before it changes code. It can:

- Search the repository with fast literal and regex search to find relevant code.
- Search by exact text, regular expression, or natural-language meaning.
- Read related source, tests, configuration, and contributor instructions.
- Re-read changed files so later steps use the current repository state.

Structure-aware mapping supports JavaScript, TypeScript, TSX, Python, Go, Rust,
PHP, Java, C, C++, C#, Objective-C, HTML, CSS/SCSS, and Ruby. Files outside
those languages remain available through normal file reading, listing, and
search.

## Build, change, and review code

The agent can carry a request across multiple files and stages:

- Create files or replace their full contents.
- Apply precise text replacements and multi-part patches.
- Delete files inside the repository.
- Implement features, refactor modules, migrate APIs, scaffold projects, and
  update documentation.
- Inspect the final diff and use Git when the requested workflow needs it.

Repository writes use fresh-read and path-containment checks. After a successful
edit, bounded diagnostics can run against the new state.

## Debug and verify with real tools

TheGitAI does not have to stop at suggesting a fix. With your approval, it can:

- Run your test suite, build, linter, formatter, or typechecker.
- Reproduce an error and inspect command output.
- Gather project diagnostics after an edit.
- Run focused shell commands or private temporary Node scripts.
- Start a local service, exercise it, inspect the result, and continue
  iterating.

Commands run in the repository environment on your machine. When a command
needs `sudo`, the password prompt is masked and handled locally.

## Work on several things at once

Independent read-only calls can run in parallel. A single model round may
execute up to six file reads, code searches, directory listings,
document reads, or web lookups concurrently. Results remain ordered, while
edits, commands, diagnostics, and job-control actions stay serial.

For multi-step tasks, the agent can publish a visible task list with pending,
active, and completed steps. While it is working, you can also queue one
follow-up message; it submits automatically when the current turn finishes and
can be recalled for editing or cancelled first.

See [Parallel Work & Task Progress](/docs/core-features/parallel-work-and-task-progress).

## Keep long-running processes alive

Dev servers, watchers, local APIs, and other persistent commands can run as
managed [background jobs](/docs/core-features/background-jobs). The session can
keep up to eight jobs running while the conversation continues.

The terminal shows live status and recent output. The agent can wait for new
output, react when a job exits, or stop it. You can inspect and manage the same
jobs through `/jobs`, and TheGitAI cleans up remaining processes when the
session ends.

## Work with documents, images, and the web

Not every engineering input is a source file:

- **Documents** — read PDF, XLSX, and DOCX files. Edit visible text in DOCX
  documents, including table content, with a reviewable replacement preview.
- **Images** — attach PNG, JPEG, GIF, or WebP images from the clipboard or by
  typing a file path. Vision-capable models can inspect screenshots, diagrams,
  UI states, and visual error output.
- **Web** — search the public web and fetch specific public URLs as clean
  Markdown with coverage and continuation details for large pages.

See [Documents, Images & Web](/docs/core-features/documents-images-and-web) for
supported formats, limits, and usage details.

## Choose the model for the task

The model picker is a curated frontier coding shortlist spanning models from
Google, Anthropic, OpenAI, DeepSeek, Moonshot AI, and Z.ai. Each entry is
selected for serious coding work, with complementary tradeoffs in speed, depth,
and cost.
Only one model is active at a time. You can switch it mid-session without
clearing your conversation, and you do not need to provide separate provider
API keys.

## Undo and restore agent changes

Assistant edits are recorded in a session edit journal. TheGitAI can:

- Preview or undo the last assistant edit.
- Undo the assistant edits from the last turn.
- Undo the latest assistant edit to one file.
- List prompt checkpoints and restore all or selected files.
- Refuse an unsafe undo when a file has changed since the recorded edit.

Recovery is requested in conversation — ask for the undo or restore you want.
There is no separate command to memorise.

Checkpoint restore is conflict-aware and atomic. Binary snapshots make recovery
safe for DOCX edits as well as normal text files.

## Save and resume the conversation

Sessions are stored locally and scoped to each repository. The ten most recent
sessions per repo are kept, and `/resume` reopens one from inside the terminal.
The prompt-only history keeps the last 20 requests so frequently used prompts
can be recalled without restoring an entire conversation.

## Choose the operating mode

Use **Shift+Tab** to move between:

- **Default** — asks before applying file edits or running commands.
- **Auto-Accept** — approves those actions for the rest of the session.
- **Plan** — stays read-only and uses inspection tools to investigate and plan.

The source-visible client keeps local machine capabilities inspectable. Local
repository tools run on your computer; relevant task context is sent to the
server-backed model, while provider credentials and private orchestration remain
on the server.

::tip
Ask for the complete outcome: “trace the failing signup test, fix the underlying
validation, run the focused suite, and update the docs.” The agent can manage
the investigation, implementation, verification, and documentation as one task.
::
