Co-Developing with Generative AI
Introduction to Command Line Agents
Facilitated by Steve Zweibel, Stefano Morello, and Zach Muhlbauer
Monday, November 18, 2025
Today's Tools
Site Studio
Terminal/PowerShell
Gemini CLI
Before We Start
- Using lab computers? Sign in now
- Brought your own computer? Make sure you can access your terminal/PowerShell
- Everyone: We'll help you install required tools as we go
- Need help? Just ask!
Understanding Large Language Models
What's happening under the hood?
How Do LLMs Work for Coding?
- LLMs are trained on billions of lines of code from open-source projects, documentation, and Stack Overflow
- They predict what code should come next based on patterns
- Can complete functions, suggest implementations, explain code, and debug errors
- Command-line agents (like Gemini CLI) can execute commands, read/write files, and iterate on code
- Different from chat interfaces
- Actively interact with your development environment
Limitations for Coding
- Generates plausible but broken code
- Syntax may look right but logic can be flawed
- Outdated libraries/syntax
- May suggest deprecated methods or old versions
- Security vulnerabilities
- Can create code with security flaws that could be exploited
- Can't understand your full codebase
- Limited context window means it doesn't see everything
Prompt Engineering Basics
How you ask matters as much as what you ask
- Be specific: "Create a Python function that sorts a list of dictionaries by the 'date' key" vs. "Help me sort some data"
- Provide context: Share relevant code, error messages, project structure
- Iterate: Refine your prompts based on results
Command Line Basics
Let's get comfortable with the terminal
What is the Terminal?
A terminal (or command line) is a text-based interface for controlling your computer
Instead of clicking buttons and icons, you type commands
Why use it?
- More powerful and precise control
- Essential for development work
- How AI coding agents interact with your system
Opening Your Terminal
Mac:
- Press
Cmd + Space
- Type "Terminal"
- Press Return
Windows:
- Press Windows key
- Type "PowerShell"
- Press Enter
Essential Commands
ls |
List files & folders in current directory |
mkdir <name> |
Create a new folder |
cd <name> |
Move into a specific folder |
pwd |
Show your current location |
cd .. |
Move up one level to parent directory |
Installation
Windows (PowerShell)
- Install Node.js LTS: nodejs.org
- Reopen PowerShell
- Install Gemini CLI:
npm install -g @google/gemini-cli
macOS (Terminal)
- Install Homebrew: copy command from brew.sh and run in Terminal
- Add Homebrew to PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' \
>> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
brew install gemini-cli
Login Setup
- After installation, run
gemini to authenticate with Google
- Choose "Login with Google" and follow the browser prompt
- Free tier: 60 requests/min, 1,000 requests/day
- Having technical issues? Just ask!
Critical Questions
Before we build, let's pause and reflect
Ethical Challenges
- Academic Integrity - How do we cite AI-assisted work? What's collaboration vs. skills offloading?
- Bias & Fairness - AI models reflect biases in their training data
- Environmental Impact - Training and running AI systems consume significant energy
Power & Labor Considerations
- Who builds these systems? Often underpaid workers label data and moderate content
- Who controls AI? Major tech companies control development and access
- Privacy concerns - What data are you sharing? How is it used for training?
Why Use AI Coding Tools, then?
- Prototyping and exploring ideas quickly
- Helps learn new languages/frameworks by example
- Debugging assistance and explaining error messages
- Documentation and code explanation
- Reduces context switching (stay in your terminal)
- Democratizes access to coding for people without CS backgrounds
When NOT to Use AI
Use AI as a tool, not a replacement for understanding
- When learning fundamentals for the first time
- For sensitive or confidential data/code
- When you need guaranteed accuracy (medical, legal, safety-critical)
- When the goal is to develop your own problem-solving skills
- When it would violate academic or professional policies
Choose Your Project Track
- Website (e.g. Portfolio, link tree, small HTML/CSS/JS pages)
- Example: Create an scaffolded study guide for command line basics with inline CSS and JavaScript
- Visualization (e.g. Simple map, chart, or interactive element)
- Example: Build an interactive timeline visualizing events in the history of computing based on the Wikipedia page for the topic
Start with a README
- Ask the agent to create a README.md file first
- This helps you understand and approve the workflow before building
- The README should:
- Describe your project idea
- Outline the project structure
- List key features or goals
Hands-On Activity
After approving the README.md, work with the agent to implement the project components
Duration: 15-20 minutes
We'll walk around the room to help
Choose your track and start building!
Let's Reflect
What did we learn?
Discussion: Your Experience
- What worked well? When did the AI agent help most?
- What didn't work? When did you get stuck or frustrated?
- Surprises? Did the AI do anything unexpected (good or bad)?
- Trust & verification: How did you know if the generated code was correct?
Critical Assessment
Think about these questions:
- When is AI-assisted coding appropriate for your work?
- When might it be inappropriate or problematic?
- How would you document/cite that you used AI in a project?
- What skills do you still need to develop yourself?
Thank You!
Questions?
Happy building!