Choose Your Own Adventure: Non-Linear AI-Assisted Programming with EvoGraph
Not on the map. Why?
Abstract (arXiv)
Current AI-assisted programming tools are predominantly linear and chat-based, which deviates from the iterative and branching nature of programming itself. Our preliminary study with developers using AI assistants suggested that they often struggle to explore alternatives, manage prompting sequences, and trace changes. Informed by these insights, we created EvoGraph, an IDE plugin that integrates AI interactions and code changes as a lightweight and interactive development graph. EvoGraph automatically records a branching AI-assisted coding history and allows developers to manipulate the graph to compare, merge, and revisit prior collaborative AI programming states. Our user study with 20 participants revealed that EvoGraph addressed developers' challenges identified in our preliminary study while imposing lower cognitive load. Participants also found the graph-based representation supported safe exploration, efficient iteration, and reflection on AI-generated changes. Our work highlights design opportunities for tools to help developers make sense of and act on their problem-solving progress in the emerging AI-mediated programming context.
Key facts. No citing papers in the map yet (data through 7 Oct 2026). Builds on 21 of its 63 references that are in the map. First posted on arXiv 20 Apr 2026.
Builds on
21 of 63 references.
References · 21
- 2022Grounded Copilot: How Programmers Interact with Code-Generating Modelscited by 216
- 2023ChainForge: A Visual Toolkit for Prompt Engineering and LLM Hypothesis Testingcited by 88
- 2025On the Use of Agentic Coding: An Empirical Study of Pull Requests on GitHubcited by 53
- 2022Investigating Explainability of Generative AI for Code through Scenario-based Designcited by 47
- 2024Using AI-Based Coding Assistants in Practice: State of Affairs, Perceptions, and Ways Forwardcited by 44
- 2021Perfection Not Required? Human-AI Partnerships in Code Translationcited by 42
- 2024Need Help? Designing Proactive AI Assistants for Programmingcited by 42
- 2023Investigating and Designing for Trust in AI-powered Code Generation Toolscited by 34
- 2025Assistance or Disruption? Exploring and Evaluating the Design and Trade-offs of Proactive AI Programming Supportcited by 33
- 2023Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completionscited by 20
- 2024Examining the Use and Impact of an AI Code Assistant on Developer Productivity and Experience in the Enterprisecited by 17
- 2024Ivie: Lightweight Anchored Explanations of Just-Generated Codecited by 14
9 more
- 2024Multi-User Chat Assistant (MUCA): a Framework Using LLMs to Facilitate Group Conversationscited by 13
- 2025Beyond Code Generation: LLM-supported Exploration of the Program Design Spacecited by 13
- 2024BISCUIT: Scaffolding LLM-Generated Code with Ephemeral UIs in Computational Notebookscited by 12
- 2024A Study on Developer Behaviors for Validating and Repairing LLM-Generated Code Using Eye Tracking and IDE Actionscited by 12
- 2025Accountability in Code Review: The Role of Intrinsic Drivers and the Impact of LLMscited by 8
- 2025OnGoal: Tracking and Visualizing Conversational Goals in Multi-Turn Dialogue with Large Language Modelscited by 7
- 2024Natural Language Processing for Requirements Traceabilitycited by 5
- 2023Correlates of Programmer Efficacy and Their Link to Experience: A Combined EEG and Eye-Tracking Studycited by 2
- 2025InterLink: Linking Text with Code and Output in Computational Notebookscited by 1
Built on by
Not cited yet.