First connection

The Connector needs two pieces of information before it can do anything useful: which Kuali instance to talk to and a Kuali API key that identifies you. You only configure this once per machine.

One guided command
Keys stored in keychain
Multi-environment
WHAT YOU'LL NEED

Two things

Your Kuali instance URL — something like https://yourschool.kualihub.com — and a Kuali API key, created in the web UI under Settings → API Keys.

API key, not your password

The Connector never handles your Kuali password. An API key is a signed token you can revoke any time from the same screen you created it on.

QUICK PATH

kuali setup

$

kuali setup

Kuali hostname: yourschool.kualihub.com

API key: ••••••••••••••••

Profile "yourschool" saved · API key validated ✓

setup derives the API URL and a profile name from the hostname, validates the key against your instance, and saves the result. The first profile you create is also set as the default. For non-interactive use:

$

kuali setup --hostname yourschool.kualihub.com --api-key YOUR_KEY

MANUAL

Step by step

The two-step flow is the right path when you need finer control — an http:// URL for local dev, or tweaking an existing profile:

$

kuali config set api_url https://yourschool.kualihub.com --profile yourschool

$

kuali auth login --profile yourschool

The key is written to your OS keychain (macOS Keychain, Windows Credential Manager, or libsecret on Linux) — it never lands in a plaintext file you might accidentally commit.

VERIFY

Doctor, then a smoke test

$

kuali doctor --profile yourschool

✓ config  ✓ URL  ✓ key stored  ✓ reachable  ✓ accepted

$

kuali apps list --profile yourschool

MULTIPLE ENVIRONMENTS

One profile per instance

$

kuali setup --hostname sandbox.kualihub.com --api-key $SANDBOX_KEY

$

kuali setup --hostname prod.kualihub.com    --api-key $PROD_KEY

$

kuali apps list --profile sandbox

Each call derives its own profile name from the subdomain. Set a default with kuali config set default_profile prod — or, for CI, use per-profile env vars like KUALI_PROD_API_KEY.

WHERE THINGS LIVE

Config and credentials

Item
Location
Config file
~/.kuali/config.yaml
API keys (primary)
OS keychain, service kuali-cli, account = profile name
API keys (fallback)
~/.kuali/credentials, mode 0600
SIGN OUT

Remove a stored key

$

kuali auth logout --profile yourschool

The URL and other settings stay in the config file — run auth login again with a new key whenever you're ready. For self-signed local certs: kuali config set insecure true --profile local. Don't turn this on for production.

You're limited to what your user can see

The API key carries exactly the permissions of the user that created it. To narrow the assistant's reach, issue a key for a tighter-permission user.

Take the guided path ->

Where to next

Prompt library

Ready-to-use prompts for curriculum, research, build apps, imports, workflow analysis, and reporting.

Browse prompts →
Client-specific guides

Tips for Claude Desktop, Claude Code, Codex, Gemini, Copilot, and VS Code.

AI assistants →
Use it as a CLI

Skip the chat — every capability is also a plain kuali command, ready for scripts and CI.

Command reference →