Sourcegraph has spent over a decade building some of the most sophisticated code intelligence infrastructure in the industry. Their universal code search and code navigation products power developer workflows at some of the largest engineering organizations in the world. Amp is what happens when a company with that depth of codebase understanding turns its attention to building an AI coding agent. The result is a tool that approaches your codebase differently than any other agent on the market.
Amp is a command-line tool. This is an intentional, principled choice, not a resource constraint. Sourcegraph's thesis is that the terminal is where developers have the most control and context about their environment. In a terminal, you are already in the right directory, already authenticated to your services, already operating in your chosen shell with your aliases and environment variables. An agent that lives in the terminal inherits all of that context automatically.
The core differentiation of Amp is its use of Sourcegraph's code intelligence layer. Before Amp writes a single line of code, it uses precise code navigation — go-to-definition, find-references, call graphs, type hierarchies — to build a mental model of the relevant parts of your codebase. This is qualitatively different from how most AI agents approach codebases. Other tools either read every file (expensive and often irrelevant) or rely on fuzzy semantic search (fast but imprecise). Amp uses the same symbol-level precision that Sourcegraph's search product is known for.
Starting Amp is as simple as running `amp` in your project directory. A conversational interface appears in the terminal where you can describe what you want to accomplish. Amp acknowledges the request, asks any clarifying questions it needs, and then begins its investigation phase — navigating the codebase to understand the context before proposing a plan. The investigation is visible: you can watch Amp trace symbol definitions, read file contents, and build its understanding in real time.
The planning phase is Amp's most distinctive feature. Before making any changes, Amp produces a structured plan: which files will be modified, what changes will be made to each, and why each change is necessary. The plan is presented in the terminal and you can approve, modify, or reject it before execution begins. This plan-then-execute approach means you are never surprised by the changes Amp makes — you understand the full scope of the operation before a single file is touched.
Plan execution is careful and methodical. Amp makes changes file by file, running any validation it can after each change. If your project has a TypeScript compiler, Amp will run `tsc` after each file modification to check for type errors. If you have a test suite configured, Amp can run relevant tests as it goes. This incremental validation means errors are caught immediately, while the context of what caused them is still fresh, rather than discovering a cascade of failures at the end.