productivity
Litmos CLI for AI Agents
Use the Litmos CLI from KosmoKrator to call Litmos tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Litmos CLI Setup
Litmos can be configured headlessly with `kosmokrator integrations:configure litmos`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure litmos --set api_key="$LITMOS_API_KEY" --enable --read allow --write ask --json
kosmokrator integrations:doctor litmos --json
kosmokrator integrations:status --json Credentials
Authentication type: API key api_key. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
api_key | LITMOS_API_KEY | Secret secret | yes | API Key |
url | LITMOS_URL | URL url | no | API Base URL |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call litmos.litmos_list_users '{"limit":1,"page":1,"search":"example_search"}' --json kosmo integrations:litmos litmos_list_users '{"limit":1,"page":1,"search":"example_search"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs litmos --json
kosmo integrations:docs litmos.litmos_list_users --json
kosmo integrations:schema litmos.litmos_list_users --json
kosmo integrations:search "Litmos" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
litmos.litmos_list_users
List users in your Litmos organization. Returns user IDs, names, emails, and status. Supports pagination and search.
read - Parameters
- limit, page, search
kosmo integrations:call litmos.litmos_list_users '{"limit":1,"page":1,"search":"example_search"}' --json kosmo integrations:litmos litmos_list_users '{"limit":1,"page":1,"search":"example_search"}' --json litmos.litmos_get_user
Get detailed information about a specific Litmos user by their ID, including profile data, course assignments, and team memberships.
read - Parameters
- id
kosmo integrations:call litmos.litmos_get_user '{"id":"example_id"}' --json kosmo integrations:litmos litmos_get_user '{"id":"example_id"}' --json litmos.litmos_create_user
Create a new user in Litmos. Requires a first name, last name, email address, and username for login.
write - Parameters
- FirstName, LastName, Email, UserName
kosmo integrations:call litmos.litmos_create_user '{"FirstName":"example_FirstName","LastName":"example_LastName","Email":"example_Email","UserName":"example_UserName"}' --json kosmo integrations:litmos litmos_create_user '{"FirstName":"example_FirstName","LastName":"example_LastName","Email":"example_Email","UserName":"example_UserName"}' --json litmos.litmos_list_courses
List courses in your Litmos organization. Returns course IDs, names, descriptions, and status. Supports pagination and search.
read - Parameters
- limit, page, search
kosmo integrations:call litmos.litmos_list_courses '{"limit":1,"page":1,"search":"example_search"}' --json kosmo integrations:litmos litmos_list_courses '{"limit":1,"page":1,"search":"example_search"}' --json litmos.litmos_get_course
Get detailed information about a specific Litmos course by its ID, including modules, description, and completion settings.
read - Parameters
- id
kosmo integrations:call litmos.litmos_get_course '{"id":"example_id"}' --json kosmo integrations:litmos litmos_get_course '{"id":"example_id"}' --json litmos.litmos_list_teams
List teams in your Litmos organization. Returns team IDs, names, and description. Supports pagination.
read - Parameters
- limit, page
kosmo integrations:call litmos.litmos_list_teams '{"limit":1,"page":1}' --json kosmo integrations:litmos litmos_list_teams '{"limit":1,"page":1}' --json litmos.litmos_get_current_user
Get the profile of the currently authenticated Litmos user. Useful for verifying API credentials and identifying the connected account.
read - Parameters
- none
kosmo integrations:call litmos.litmos_get_current_user '{}' --json kosmo integrations:litmos litmos_get_current_user '{}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
litmos.litmos_list_users 3 parameters
kosmo integrations:schema litmos.litmos_list_users --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Number of users to return per page (default: 100, max: 1000). |
page | integer | no | Page number for pagination (default: 1). |
search | string | no | Search term to filter users by name or email. |
litmos.litmos_get_user 1 parameters
kosmo integrations:schema litmos.litmos_get_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | The Litmos user ID. |
litmos.litmos_create_user 4 parameters
kosmo integrations:schema litmos.litmos_create_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
FirstName | string | yes | The user's first name. |
LastName | string | yes | The user's last name. |
Email | string | yes | The user's email address. |
UserName | string | yes | The user's login username. |
litmos.litmos_list_courses 3 parameters
kosmo integrations:schema litmos.litmos_list_courses --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Number of courses to return per page (default: 100, max: 1000). |
page | integer | no | Page number for pagination (default: 1). |
search | string | no | Search term to filter courses by name. |
litmos.litmos_get_course 1 parameters
kosmo integrations:schema litmos.litmos_get_course --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | The Litmos course ID. |
litmos.litmos_list_teams 2 parameters
kosmo integrations:schema litmos.litmos_list_teams --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Number of teams to return per page (default: 100, max: 1000). |
page | integer | no | Page number for pagination (default: 1). |
litmos.litmos_get_current_user 0 parameters
kosmo integrations:schema litmos.litmos_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.