Three pillars—tools, memory, and repository context—define the current architecture of coding agents. These components allow LLMs to move beyond simple text completion into active codebase manipulation. By integrating local file indexing with execution environments, developers can automate complex refactors. This structural approach reduces hallucination and improves reliability for software engineering tasks.