Agentic AI - Using AI Agents (Claude, Codex, Copilot, etc.) to complete issues and PRs

There are multiple ways to engage with AI (or not) when carrying out development tasks. In CMPSC 156, we encourage students to explore all four of these at different stages in the course, as time and availability of systems permits:

  • No AI: Doing all development by hand, not using AI at all. There are times when this is appropriate, especially when learning a new technology. It is important to have enough direct human knowledge of a new technology.

  • Hand Coding, AI assistance on demand: One step away from the zero AI approach is when you do all of your coding by hand, unassisted, but when you are stuck on something, you may turn to an AI chat window, separated from your code editor, and ask a question such as:

    What is the syntax of method in Java to search for one string within another?

    I have the following error message (paste it here). What does this mean? And what can i do to fix it?

    One nice aspect of this usage of AI is that you can learn

  • AI autocomplete in the editor. Here, the human developer is still driving the code forward, and the AI is more of a “pair programmer” making suggestions that the human accepts or rejects, at the level of a single line of code, or an entire function, method or class. Copilot in VSCode is one of the first examples of this.

  • Agentic AI. Here, an AI is assigned an entire “issue” (i.e. an description of a change to the software, typically in English text) and the AI agent does the entire work of choosing which files to create and/or edit, what code to write or change, the commits, the commit messages, the PR, the PR description, and everything up until the code review.

In CMPSC 156, we encourage students to experience all four of these approaches, and use them appropriately to help you learn to be a more effective software engineer.


Table of contents