JoinGrove

Campus & REH Agents

Source: docs/self-hosted/agents.md
Generated: 01/09/2026

Run agent sessions on a self-hosted REH server or campus Docker image — shared labs with zero egress defaults.


Key Concepts

  • What: Campus agents replace "cloud agents" with self-hosted REH — students use the Agents window in browser against your server.
  • Why: Data sovereignty and offline-capable labs require agents on infrastructure you control, not a US-only cloud pool.
  • Related: Campus deploy (campus.md), egress policy (egress.md), agent platform (../overview/agent-platform.md).

API / Reference

Component Role
REH server npm run server — headless JoinGrove backend
Agents browser UI npm run sessions-web — port 8081
Ollama on server Shared localhost:11434 or lab GPU box
Zero egress Default — blocks Copilot cloud on student clients
Platform server Optional npm run platform-server for Studio cloud

Commands

Command ID
Self-hosted wizard joingrove.selfHostedWizard
Run anywhere wizard joingrove.runAnywhereWizard
Set up Ollama joingrove.setupOfflineAi
Security mode joingrove.securityModeWizard
Telemetry dashboard joingrove.openTelemetryDashboard

Setup & Installation

  1. Deploy campus server (campus.md) with REH or Docker.
  2. Install Ollama on the server (or point to shared GPU endpoint).
  3. Run npm run setup-offline-ai on the server for shared BYOK config.
  4. Students connect via browser → Agents UI; local Ollama serves all chat requests.
  5. Optional Studio cloud → run platform-server with allowPlatformRequests for cohort projects.

Code Examples

Server-side Ollama + REH:

ollama serve &
npm run setup-offline-ai
npm run sessions-web

Verify offline-first on server:

npm run verify-offline-first

Next: Use tunnel.md if students cannot reach the campus LAN directly.


How It Connects