Coding Agents and IDEs
Overview
Coding agents are AI‑driven assistants that can turn natural‑language prompts, comments, or partial snippets into fully‑formed, context‑aware code and can be run via a terminal, embedded directly inside an IDE or editor. They can also perform tasks such as autocompleting a line, generating whole functions, writing unit tests, debugging and running code—all by querying a large language model (LLM) behind the scenes. ARC’s hosted LLMs are compatible with many modern IDEs and AI coding agents that support OpenAI-compatible APIs. There are many IDEs available, and their AI integration features evolve frequently. ARC focuses on providing guidance specific to connecting to ARC resources. In general, connecting an IDE-based AI assistant (coding agent) to ARC’s LLM service follows this process:
Install and enable the IDE’s AI or LLM integration plugin (extension)
Obtain an ARC API key from https://llm-api.arc.vt.edu
Configure the AI assistant (coding agent) to use an OpenAI-compatible endpoint
API URL:
https://llm-api.arc.vt.edu/api/v1/chat/completionsProvide your private ARC API key
Select the appropriate ARC-hosted model (e.g.,
Kimi-K2.6,gpt-oss-120b)Configure model capabilities (tool calling, vision, thinking) if supported
Set token limits as appropriate (e.g.,
131072input /16384output)
You can use some of the most widely used coding agents with ARC’s hosted LLMs through pointing them to ARC’s API endpoint. In this page, we provide instructions to connect OpenCode, Claude Code, VS Code, and IntelliJ IDEA to ARC’s LLMs.
Note
These instructions use ARC’s shared API at https://llm-api.arc.vt.edu. You can also connect to a dedicated LLM session via Open OnDemand by using that session’s base URL and API key instead.
Caution
Be very careful letting AI agents run commands on their own if you are connecting to ARC. We do not approve commands that are potentially destructive, could access data owned by other users, or could otherwise be harmful to our systems.
OpenCode
OpenCode is an open source agent that helps you write code in your terminal, IDE, or desktop. You can use OpenCode on your local machine and then connect to ARC LLMs with the following workflow.
First, you have to download OpenCode on your local machine. This example is using curl to download OpenCode in your terminal:
# Download and install in user space
curl -fsSL https://opencode.ai/install | bash
# Reload bashrc (or bash_profile for macOS) so that PATH includes the local opencode path
source ~/.bashrc
Second, you need to create a opencode.jsonc file. Please run the following command in your terminal to create a file with the required contents:
mkdir -p "$HOME/.config/opencode"
cat <<'EOF' > "$HOME/.config/opencode/opencode.jsonc"
{
"$schema": "https://opencode.ai/config.json",
"disabled_providers": [],
"provider": {
"ARC": {
"name": "ARC",
"npm": "@ai-sdk/openai-compatible",
"models": {
"gpt-oss-120b": {
"name": "gpt-oss-120b"
},
"Kimi-K2.6": {
"name": "Kimi K2.6"
},
"MiniMax-M2.7": {
"name": "MiniMax-M2.7"
},
},
"options": {
"baseURL": "https://llm-api.arc.vt.edu/api/v1",
"apiKey": "sk-XXXXXXXXXXXXXXXXXX",
}
}
},
"model": "ARC/gpt-oss-120b",
}
EOF
You will have to edit this file to replace the apiKey with your personal API Key and specify which model you would like to use.
Once you have downloaded OpenCode and create/edited the .jsonc file, you can run OpenCode with the following:
opencode
OpenCode Desktop
You can download the OpenCode Desktop application and connect this to ARC’s LLMs with the following steps.
Download application from https://opencode.ai/download Open up the application and navigate to Settings -> Providers -> Custom provider
You will then edit the Custom provider with the following, replacing the API key with your own API key:
Provider ID: arc
Display Name: ARC
Base URL: https://llm-api.arc.vt.edu/api/v1
API key: sk-XXXXXXXXXXXXXXXXXX
models: gpt-oss-120b, Kimi-K2.6, MiniMax-M2.7
Claude Code
Claude Code is an AI-powered coding assistant that can read your codebase, edit files, run commands, fix bugs, and automate development tasks. Both the Terminal CLI and VS Code extension versions can be used to connect to ARC’s LLMs. You can run the CLI agent inside VS Code’s integrated terminal, first you need to install it as follow:
macOS / Linux / WSL:
curl -fsSL https://claude.ai/install.sh | bash
Windows (PowerShell):
irm https://claude.ai/install.ps1 | iex
Then you may connect your local Claude Code agent to ARC’s LLMs through the Open WebUI proxy by running the following:
export ANTHROPIC_BASE_URL="https://llm-api.arc.vt.edu/api/"
export ANTHROPIC_API_KEY="YOUR_OPEN_WEBUI_API_KEY"
claude --model Kimi-K2.6
This is an example using Claude Code with ARC’s Kimi-K2.6 model.
Checklist for Privacy:
Use an API Key: This is the safest way to ensure your code is never used for training.
Check your .zshrc: Ensure your ANTHROPIC_API_KEY is set correctly.
Add a .claudeignore file: Similar to .gitignore, you can create this file in your project root to tell Claude to never read specific files (like secrets.json or .env).
Run /permissions: Type this inside Claude Code to see exactly what the agent is allowed to do and see on your disk.
Visual Studio Code
Visual Studio Code provides a built-in Chat/Agent view that supports language models from multiple providers, including custom endpoints. You can bring your own language model API key (BYOK) from ARC to use ARC-hosted LLMs directly in VS Code Chat without a GitHub Copilot plan.
You may use your https://llm-api.arc.vt.edu API key to connect VS Code Chat with ARC’s hosted LLMs.
The following instructions are based on VS Code’s language models documentation.
Note
Some features in VS Code still require a GitHub Copilot subscription: semantic search, inline suggestions (code completions), and features that rely on embeddings.
Add a custom endpoint model
The Custom Endpoint provider lets you connect any compatible API endpoint to chat in VS Code. It supports three API types: Chat Completions, Responses, and Messages. For ARC’s hosted LLMs, use the Messages API type.
To add an ARC-hosted model with the Custom Endpoint provider:
Run the Chat: Manage Language Models command from the Command Palette (open it with
Ctrl+Shift+Pon Windows/Linux orCmd+Shift+Pon macOS).Select Add Models, and then select Custom Endpoint from the list.
Enter a group name for the models, for example
ARC. This is the grouping label shown in the model picker and Language Models editor.Enter your ARC API key. VS Code writes this to the JSON file automatically as an editor secret which looks like
"${input:chat.lm.secret.xxxxxxx}".Select the API type: Messages.
VS Code opens a
chatLanguageModels.jsonfile where you can configure the model details. TheapiKeyis written by VS Code automatically based on the key you entered earlier. The only part you need to edit is themodelsarray. The following example configures three ARC-hosted models (Kimi-K2.6,MiniMax-M2.7, andgpt-oss-120b):[ { "name": "ARC", "vendor": "customendpoint", "apiKey": "${input:chat.lm.secret.xxxxxxx}", "apiType": "messages", // only modify this models array "models": [ { "id": "Kimi-K2.6", "name": "Kimi-K2.6", "url": "https://llm-api.arc.vt.edu/api/", "toolCalling": true, "vision": true, "maxInputTokens": 131072, "maxOutputTokens": 16384 }, { "id": "MiniMax-M2.7", "name": "MiniMax-M2.7", "url": "https://llm-api.arc.vt.edu/api/", "toolCalling": true, "vision": false, "maxInputTokens": 131072, "maxOutputTokens": 16384 }, { "id": "gpt-oss-120b", "name": "gpt-oss-120b", "url": "https://llm-api.arc.vt.edu/api/", "toolCalling": true, "vision": false, "maxInputTokens": 131072, "maxOutputTokens": 16384 } ] } ]
IntelliJ IDEA
Make sure IntelliJ is up to date (v.2025.3.2 or newer) and activate the native AI Plugin
Set the AI assistant plugin as follows

Activate the AI chat interface and enter your prompts


