Code intelligence, defined.
The concepts behind graph-powered, symbol-level AI coding — in plain English.
Agentic coding
Agentic coding is a way of working where an AI agent runs a self-directed loop — reading code, calling tools, editing files, and checking the result — to complete a software task from a high-level prompt, instead of just suggesting one snippet at a time.
AI Coding Agent
An AI coding agent is an LLM-driven system that doesn't just suggest code but acts on a codebase autonomously: it reads files, runs tools, edits source, executes commands, and iterates in a loop until a development task is done.
AST editing
AST editing is the practice of modifying source code by transforming its parsed abstract syntax tree (AST) — addressing structural nodes like functions, classes, and parameters — rather than matching and replacing raw text.
Code dependency graph
A code dependency graph is a directed graph whose nodes are units of code (files, modules, functions, classes, or symbols) and whose edges represent "depends on" relationships such as imports, calls, or references. It models how parts of a codebase are wired together so you can reason about what affects what.
Code intelligence
Code intelligence is the set of capabilities that lets a tool understand source code structurally — symbols, references, types, and dependencies — rather than as plain text, enabling features like go-to-definition, find-references, rename, and diagnostics.
Context compaction
Context compaction is the technique an AI coding agent uses to keep a long conversation inside the model's context window by condensing older messages into a compact summary while preserving recent turns verbatim, so work can continue without losing the thread.
Semantic code search
Semantic code search is finding code by meaning and structure — symbols, types, and dependency relationships — rather than by literal text matching, so a query like "who calls fetchUser?" returns the actual references instead of every line where the characters happen to appear.
Symbol editing vs string editing
Symbol editing vs string editing is the distinction between modifying code by targeting a named node in its parsed syntax tree (a function, class, or interface) versus modifying it by finding and replacing raw text. Symbol editing anchors changes to structure; string editing anchors them to character positions.