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:

  1. Install and enable the IDE’s AI or LLM integration plugin (extension)

  2. Obtain an ARC API key from https://llm-api.arc.vt.edu

  3. Configure the AI assistant (coding agent) to use an OpenAI-compatible endpoint

  • API URL: https://llm-api.arc.vt.edu/api/v1/chat/completions

  • Provide 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., 131072 input / 16384 output)

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:

  1. Run the Chat: Manage Language Models command from the Command Palette (open it with Ctrl+Shift+P on Windows/Linux or Cmd+Shift+P on macOS).

  2. Select Add Models, and then select Custom Endpoint from the list.

  3. Enter a group name for the models, for example ARC. This is the grouping label shown in the model picker and Language Models editor.

  4. 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}".

  5. Select the API type: Messages.

  6. VS Code opens a chatLanguageModels.json file where you can configure the model details. The apiKey is written by VS Code automatically based on the key you entered earlier. The only part you need to edit is the models array. The following example configures three ARC-hosted models (Kimi-K2.6, MiniMax-M2.7, and gpt-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

  1. Make sure IntelliJ is up to date (v.2025.3.2 or newer) and activate the native AI Plugin

  2. Set the AI assistant plugin as follows

  1. Activate the AI chat interface and enter your prompts