From ea55178f9ca6678fca0385a8f60d488651167b0a Mon Sep 17 00:00:00 2001 From: c4ch3c4d3 Date: Thu, 23 Apr 2026 18:11:16 -0600 Subject: [PATCH] Add runtime service links for lab endpoints --- content/labs/lab-3-llama-cpp-and-ollama.md | 2 +- content/labs/lab-4-oi-prompting.md | 4 +- content/labs/lab-5-api-and-harnesses.md | 14 +- content/labs/lab-6-embedding-and-chunking.md | 8 +- ...ab-7-dataset-generation-and-fine-tuning.md | 2 +- .../labs/lab-8-evaluation-and-red-teaming.md | 4 +- src/components/labs/LabContent.test.tsx | 149 +++++++++++++-- src/components/labs/LabContent.tsx | 179 +++++++++++++++++- src/lib/courseware-runtime.test.ts | 67 +++++++ src/lib/courseware-runtime.ts | 126 +++++++++++- 10 files changed, 509 insertions(+), 46 deletions(-) create mode 100644 src/lib/courseware-runtime.test.ts diff --git a/content/labs/lab-3-llama-cpp-and-ollama.md b/content/labs/lab-3-llama-cpp-and-ollama.md index 61e26c0..0d28d8c 100644 --- a/content/labs/lab-3-llama-cpp-and-ollama.md +++ b/content/labs/lab-3-llama-cpp-and-ollama.md @@ -30,7 +30,7 @@ To start this lab, use the embedded terminal below. It connects to the same lab If the embedded terminal is unavailable, you can still fall back to: -- SSH - :22 +- SSH - {{service-address:ssh}} - A regular terminal session on the lab host ## Objective 1: HuggingFace & LLaMa.cpp diff --git a/content/labs/lab-4-oi-prompting.md b/content/labs/lab-4-oi-prompting.md index c5bcaa3..62a8d83 100644 --- a/content/labs/lab-4-oi-prompting.md +++ b/content/labs/lab-4-oi-prompting.md @@ -25,11 +25,11 @@ In this lab, we will: To start this lab, one web service has been preconfigured: -- Open WebUI - http://:8080 +- Open WebUI - {{service-url:open-webui}} ## Objective 1 Execute: Accessing Open WebUI -Your lab machine has been pre-installed with Open Webui. It is accessible on your provided system IP at port 8080 (http://:8080). You can log in or register with the following default credentials: +Your lab machine has been pre-installed with Open Webui. It is accessible on your provided system URL at {{service-url:open-webui}}. You can log in or register with the following default credentials: Username: student@openwebui.com Password: student diff --git a/content/labs/lab-5-api-and-harnesses.md b/content/labs/lab-5-api-and-harnesses.md index 209f02c..16030d6 100644 --- a/content/labs/lab-5-api-and-harnesses.md +++ b/content/labs/lab-5-api-and-harnesses.md @@ -25,7 +25,7 @@ In this lab, we will: To start this lab, one web service has been preconfigured: -- Open WebUI - http://:8080 +- Open WebUI - {{service-url:open-webui}} ## Objective 1 Execute: Generate an Open WebUI API Key @@ -33,7 +33,7 @@ Before we install any harness, we need a key that lets the harness call the same ### Execute: Sign in to Open WebUI -1. Navigate to `http://:8080`. +1. Navigate to `{{service-url:open-webui}}`. 2. Sign in with the same account you used in Lab 4, or the credentials supplied by your instructor. 3. Confirm that you can reach the normal chat screen before continuing. @@ -82,7 +82,7 @@ According to the Open WebUI reference docs, API keys are created from **Settings Run a quick authenticated request against the Open WebUI model list endpoint. You should receive JSON back instead of an authentication error. ```bash -curl http://:8080/api/models \ +curl {{service-url:open-webui:/api}}/models \ -H "Authorization: Bearer YOUR_OPENWEBUI_API_KEY" ``` @@ -160,7 +160,7 @@ droid --version For all three harnesses, the common backend values are: -- `Base URL` - `http://:8080/api` +- `Base URL` - `{{service-url:open-webui:/api}}` - `API Key` - `YOUR_OPENWEBUI_API_KEY` - `Model ID` - Any model ID returned by Open WebUI, such as `qwen3.5:4b` @@ -180,7 +180,7 @@ The shared idea is simple: your harness sends requests to Open WebUI's authentic "openwebui": { "name": "Open WebUI", "options": { - "baseURL": "http://<YOUR STUDENT IP>:8080/api", + "baseURL": "{{service-url:open-webui:/api}}", }, "models": { "qwen3.5:4b": { @@ -213,7 +213,7 @@ opencode

Kilo Code's documented workflow is provider-driven through the extension settings UI. Use the following values when creating or editing your provider profile.