← ROG-K

agent api

ROG-K agent API
===============
Base URL: the same origin as this page (path /docs).
Auth: none. No cookies, API keys, or OAuth.

Discovery (GET, no body)
  GET /api
  GET /api/exec
  GET /docs
  GET /client          HTML form — works with no JavaScript

Run a command
  GET  /client?cmd=uname%20-a
  GET  /api/exec?cmd=uname%20-a
  GET  /api/exec?cmd=uname%20-a&format=text

  POST /api/exec
  Content-Type: application/json
  {"cmd":"uname -a"}

  POST /api/exec          application/x-www-form-urlencoded
  cmd=uname+-a&session=lab-1

  Optional persistent session (keeps cwd, env, pip installs):

  {"cmd":"python3 -m pip install requests","session":"lab-1"}
  {"cmd":"python3 -c 'import requests; print(requests.__version__)'","session":"lab-1"}

Response JSON
  {
    "session": "lab-1",
    "cwd": "/home/...",
    "stdout": "...",
    "stderr": "...",
    "code": 0
  }

Streaming (optional)
  POST /api/exec
  Accept: application/x-ndjson
  {"cmd":"uname -a","session":"lab-1"}

Other endpoints
  POST /api/session            {"session":"lab-1"}
  POST /api/interrupt          {"session":"lab-1"}
  POST /api/session/close      {"session":"lab-1"}
  GET  /api/complete?q=pip&session=lab-1
  GET  /api/open?path=~/GETTING_STARTED&session=lab-1

CORS: Access-Control-Allow-Origin: *

Limits: one command per request; reuse session. Long jobs may time out (~20s).
This is a real Linux user with python3, pip, git, curl.