> Computing & Tools
Free AI with VT ARC
Use Virginia Tech's own hosted AI models for chat and coding — free for every student, no subscription. · 10 min
Virginia Tech’s Advanced Research Computing (ARC) runs large AI models on its own hardware and gives every VT student, undergrad or grad, free access. You don’t need an ARC account, a faculty sponsor, or a credit card, and it works off campus without the VPN. You can use it two ways:
- In the browser, like ChatGPT.
- In your terminal, as a coding agent that reads and edits your project, like Claude Code.
Last checked against ARC's docs on 2026-10-19.
⚠ This guide hasn't been reviewed in over 120 days. Model names or setup steps may have changed; if something doesn't match, ARC's own coding agents page is the source of truth.
1. Chat in the browser
Go to llm.arc.vt.edu and sign in with your VT login. That’s it.
It can search the web and read images (with DeepSeek-V4.1-Flash). Pick a model from the menu at the top; the table in step 4
says which one to use for what.
2. Get an API key
Coding tools need a key so ARC knows it’s you.
-
At llm.arc.vt.edu, click your name → Settings → Account → API keys, and create a key. It starts with
sk-. -
Save it where your tools can find it. On macOS (or Linux, using
~/.bashrcinstead):echo 'export ARC_API_KEY="sk-paste-your-key-here"' >> ~/.zshrcThen open a new terminal window. On Windows, do all of this inside WSL.
-
Check that it works. You should see a list of model names, not an error:
curl -s https://llm-api.arc.vt.edu/api/v1/models -H "Authorization: Bearer $ARC_API_KEY"
3. Code with OpenCode
OpenCode is a free, open-source coding agent for your terminal. You describe what you want (“add a test for the parser”, “why does this crash?”), and it reads your files, proposes edits, and runs commands, asking you before it does anything. If you’ve seen Claude Code, it works the same way. ARC supports it officially.
-
Install it:
curl -fsSL https://opencode.ai/install | bash(Or
npm install -g opencode-ai, orbrew install anomalyco/tap/opencode.) -
Create the file
~/.config/opencode/opencode.jsonand paste this in. It reads your key fromARC_API_KEY, so the file itself has no secrets:{ "$schema": "https://opencode.ai/config.json", "provider": { "ARC": { "name": "ARC", "npm": "@ai-sdk/openai-compatible", "options": { "baseURL": "https://llm-api.arc.vt.edu/api/v1", "apiKey": "{env:ARC_API_KEY}", "timeout": 1800000, "headerTimeout": 1800000 }, "models": { "GLM-5.3": { "name": "GLM-5.3", "limit": { "context": 131072, "output": 16384 } }, "DeepSeek-V4.1-Flash": { "name": "DeepSeek-V4.1-Flash", "limit": { "context": 1048576, "output": 16384 } }, "GLM-5.3-thinking-high": { "name": "GLM-5.3-thinking-high", "limit": { "context": 131072, "output": 16384 } } } } }, "model": "ARC/GLM-5.3" } -
In a terminal,
cdinto your project and runopencode. Type what you want in plain English.
A few commands worth knowing, typed inside OpenCode:
| Command | What it does |
|---|---|
/init | Writes an AGENTS.md describing your project, so the agent understands it in later sessions. |
/models | Switch models, e.g. to DeepSeek-V4.1-Flash when GLM-5.3 is slow. |
/compact | Summarizes a long conversation when it runs out of memory. |
Prefer VS Code?
VS Code’s built-in Chat can use ARC directly, with no extension and no Copilot subscription. Follow the VS Code section of ARC’s Coding Agents and IDEs page, and use the same key and model names as above.
4. Pick a model
| Model | Use it for | Memory |
|---|---|---|
GLM-5.3 (default) | Default for coding and reasoning. Shared queue: when ARC is busy it can wait a few minutes before starting. | 128k tokens |
DeepSeek-V4.1-Flash | Switch to this when GLM-5.3 is slow, or for huge codebases and long sessions. Also reads images. | 1M tokens |
GLM-5.3-thinking-high | Thinks longer before answering. For hard bugs and design questions; slower. | 128k tokens |
gpt-oss-120b | Fast for quick questions in chat. Less reliable at running tools, so not for coding agents. | 128k tokens |
“Memory” (the context window) is how much of your conversation and code the model can hold at
once. When a long session gets confused, run /compact or start fresh.
What’s allowed
- Data: ARC runs entirely on VT hardware, and VT has approved it for sensitive data. Two exceptions:
- Nothing export-controlled (ITAR) or CUI goes into any AI tool.
- Research study data goes in only if your IRB protocol says this tool may be used. Ask your advisor first.
- Privacy: ARC logs your conversations under VT’s security policies. Don’t type anything you wouldn’t put in a VT email.
- Limits: up to 20 requests at once per person. That’s plenty for one agent; running many in parallel will hit it.
When something goes wrong
| You see | Fix |
|---|---|
401 / “unauthorized” | The key is wrong or deleted. Run echo $ARC_API_KEY to check it’s set, or make a new key. |
429 / “too many requests” | Too many requests at once. Wait a minute, or close other sessions. |
| A long wait before any answer | GLM-5.3 is queued behind other users. Switch to DeepSeek-V4.1-Flash with /models. |
| The agent forgets things or loops | Its memory is full. Run /compact, or start a new session. |
| Answers aren’t as good as Claude or ChatGPT | Expected. These are strong open models, not the newest commercial ones. Give smaller, clearer tasks. |
Can I use Claude Code itself with ARC?
Technically yes: ARC accepts Claude Code’s request format. But ARC itself calls it “not an ideal client”. Sub-agents, web search, and extended thinking don’t work, and it can break midway on long sessions. Use OpenCode. If you still want to try, the setup is under Claude Code on ARC’s Coding Agents and IDEs page.
Help: ARC’s own docs are at docs.arc.vt.edu/ai. For account or service problems, use VT 4Help. If this page is out of date, use Edit this page below, or tell a lab member.