5.3 KiB
sidebar_position, title
| sidebar_position | title |
|---|---|
| 2 | Software Development |
Software Development
Open Terminal enables the AI to interact with real codebases — cloning repos, running tests, reading errors, installing dependencies, and iterating on fixes.
Clone and explore a repo
You: Clone https://github.com/user/project and give me an overview of the codebase. What's the architecture? Where are the entry points?
The AI:
- Runs
git cloneto pull the repo - Scans the directory structure, reads key files (
README,package.json,pyproject.toml, etc.) - Identifies the tech stack, entry points, and major components
- Returns a structured summary with file counts, dependencies, and architecture notes
Run the test suite and fix failures
You: Run the tests. If anything fails, figure out why and fix it.
The AI:
- Detects the test framework (
pytest,jest,go test, etc.) - Installs dependencies if needed
- Runs the full test suite
- Reads failure output, traces the bug, edits the source code
- Re-runs the failing tests to confirm the fix
:::tip Iterative debugging The AI sees the same terminal output a developer would — stack traces, assertion errors, log messages. Multiple rounds of "run → read error → fix → re-run" happen automatically. :::
Set up a development environment
You: Set up this project so I can develop on it. Install all dependencies, create the database, and run the dev server.
The AI:
- Reads setup docs (
README,Makefile,docker-compose.yml) - Installs system packages and language dependencies
- Creates config files, sets up databases, runs migrations
- Starts the dev server and confirms it's working
- Reports the URL where you can access it
Refactor with confidence
You: Refactor the database queries in
users.pyto use async/await. Make sure the tests still pass.
The AI:
- Reads the current implementation
- Rewrites the code with your requested changes
- Runs the test suite to verify nothing broke
- If tests fail, adjusts the refactored code until they pass
- Shows you a
git diffof what changed
Git workflows
You: Show me what changed since the last release tag. Summarize the commits.
The AI works with Git directly:
git log,git diff,git blameto analyze history- Create branches, stage changes, make commits
- Generate changelogs from commit history
- Find when a bug was introduced with
git bisect - Resolve merge conflicts
Write and run tests
You: Write unit tests for the
calculate_shipping()function inorders.py. Cover edge cases.
The AI:
- Reads the function to understand its logic and parameters
- Identifies edge cases (zero quantity, negative values, international vs domestic, free shipping threshold)
- Writes test cases using the project's existing test framework
- Runs them to verify they pass
- If any fail, it determines whether it's a test bug or a code bug
Debug a specific issue
You: Users are reporting that the login endpoint returns 500 sometimes. Here's the error from the logs:
KeyError: 'session_token'. Find and fix it.
The AI:
- Searches the codebase for where
session_tokenis used - Reads the surrounding code to understand the flow
- Identifies the bug (e.g., missing key check when session expires)
- Writes the fix with proper error handling
- Adds a test case for the edge case
- Runs the tests to confirm
Build and verify an API
You: Create a REST API for managing a bookstore. I need CRUD for books, authors, and categories. Use FastAPI and SQLite.
The AI:
- Scaffolds the project structure
- Defines database models and schemas
- Implements all endpoints with validation
- Creates seed data
- Starts the server and tests every endpoint with
curl - Shows you the Swagger docs page
What languages and tools are available?
The Docker image comes with common development tools pre-installed:
| Category | Tools available |
|---|---|
| Languages | Python, Node.js, Ruby, C/C++, Bash |
| Package managers | pip, npm, gem, apt |
| Version control | Git |
| Editors | nano, vim |
| Build tools | make, gcc, g++ |
The AI can install additional tools on the fly — Rust, Go, Java, Docker CLI, database clients, and anything else available via apt or language-specific package managers.
Related
- Code execution → — quick scripts and one-off tasks
- Web development → — build and preview websites
- Advanced workflows → — skills for code review, database analysis, and more





