Skip to main content
Deployed as a tenant of the Hill90 homelab — hill90.com serves the UI, and identity comes from the homelab’s Keycloak at auth.hill90.com, realm platform. Verified 2026-08-06 07:45 UTC: 23 containers running, 0 unhealthy — the homelab’s 16 and the application’s 7.Identity and data are the platform’s. The tenant’s databases sit on the homelab’s Postgres under a dedicated non-superuser role, and app-auth.hill90.com is not a live surface — it returns 404. Authorization uses client roles on the hill90-ui client rather than realm roles, so holding a homelab realm role does not by itself grant access to the application. A local stack runs its own Postgres, and --standalone its own Keycloak, so pages describing those locally remain accurate.Signing in was completed on 2026-07-30, reported by the operator who performed it. That is not independently re-verified here: realm platform has event storage disabled, so there is no server-side record left to read.Where a page in this section disagrees with AI Application, the overview is newer.

Quickstart

This guide walks through the core Hill90 workflow: creating an agent, configuring model access, and querying agent knowledge and usage.

Prerequisites

  • A modern web browser
  • An account on the Hill90 platform (contact the administrator)
  • For API access: a tool like curl, Postman, or any HTTP client

Accessing the Platform

The Hill90 UI is available at hill90.com. Signing in is not currently possible — see the note at the top of this page.

1. Health Check

Verify the API is running (no authentication required):

2. Authenticate

For all remaining calls, include your Keycloak JWT bearer token:
See Authentication for details on obtaining tokens.

3. Create an Agent

Define an agent with a unique slug, name, and optional identity documents:

4. Create a Provider Connection

Register your LLM provider API key. The key is encrypted at rest and never returned in responses:

5. Create a User Model

Define a model that references your provider connection:

6. Assign Models to Your Agent

Update the agent with direct model assignment:

7. Start the Agent

Start the agent container (requires admin role):
The agent is now running in a sandboxed container with access to LLM inference (via assigned models) and persistent knowledge storage.

8. Browse Agent Knowledge

After the agent runs, browse what it has learned:

9. Query Usage

Check how much the agent has consumed:

Next Steps