CLI tool to interact with the Exponential productivity app. Pull actions, projects, and workspaces from your Exponential account for use with LLMs and automation.
npm install -g exponential-cliOr run directly with npx:
npx exponential-cli --help- Log into Exponential
- Navigate to
/tokens - Create a new API key with type "JWT"
- Copy the generated token
exponential auth login --token <your-jwt-token> --api-url https://app.exponential.soexponential auth whoami# Login with token
exponential auth login --token <jwt> --api-url <url>
# Check authentication status
exponential auth whoami
exponential auth status
# Logout
exponential auth logout# List all active actions
exponential actions list
# List actions for a specific project
exponential actions list --project <project-id>
# List actions with a specific kanban status
exponential actions list --status IN_PROGRESS
# Create an action
exponential actions create -n "Task name" -d "Description" -p <project-id> --priority "1st Priority"
# Update an action
exponential actions update --id <action-id> --kanban DONE
exponential actions update --id <action-id> -n "New name" --priority "2nd Priority" --due 2026-03-15
# Get today's actions
exponential actions today
# Get actions in a date range
exponential actions range --start 2024-01-01 --end 2024-01-31
# Get kanban board view
exponential actions kanban --project <project-id># List all projects
exponential projects list
# List projects in a workspace
exponential projects list --workspace <workspace-id># List all workspaces
exponential workspaces list
# Set default workspace
exponential workspaces set-default <workspace-slug>By default, output is JSON when piped. Force JSON output:
exponential actions list --jsonExample output:
{
"actions": [
{
"id": "clx123abc",
"name": "Fix authentication bug",
"description": "JWT tokens expiring too early",
"status": "ACTIVE",
"priority": "1st Priority",
"kanbanStatus": "IN_PROGRESS",
"dueDate": "2024-01-15T00:00:00.000Z",
"project": {
"id": "clx456def",
"name": "Exponential App"
},
"assignees": []
}
],
"total": 1,
"filters": {}
}Force human-readable output:
exponential actions list --prettyIf you use OpenClaw, install the Exponential skill to give your AI agent full access to actions, projects, and kanban boards:
npx clawhub install exponentialYour agent can then create tasks, update statuses, and manage projects through natural conversation.
import subprocess
import json
def get_exponential_actions(project_id=None):
cmd = ['exponential', 'actions', 'list', '--json']
if project_id:
cmd.extend(['--project', project_id])
result = subprocess.run(cmd, capture_output=True, text=True)
return json.loads(result.stdout)
# Get all actions
actions = get_exponential_actions()
# Get actions for a specific project
project_actions = get_exponential_actions('clx456def')# Get actions and pipe to jq
exponential actions list --json | jq '.actions[] | {name, priority, status: .kanbanStatus}'
# Count actions by status
exponential actions kanban --json | jq '.actions | group_by(.kanbanStatus) | map({status: .[0].kanbanStatus, count: length})'I have access to the Exponential CLI. Here are my current actions:
$(exponential actions list --json)
Based on these actions, what should I work on next considering priority and due dates?
Configuration is stored in:
- macOS:
~/Library/Preferences/exponential-cli-nodejs/config.json - Linux:
~/.config/exponential-cli-nodejs/config.json - Windows:
%APPDATA%\exponential-cli-nodejs\config.json
BACKLOG- In backlogTODO- Ready to work onIN_PROGRESS- Currently being worked onIN_REVIEW- In reviewDONE- CompletedCANCELLED- Cancelled
1st Prioritythrough5th PriorityQuick- Quick tasksScheduled- Scheduled tasksErrand- ErrandsRemember- Things to rememberWatch- Items to watchSomeday Maybe- Future possibilities
# Install dependencies
npm install
# Build
npm run build
# Run locally
node bin/exponential.js --help
# Link for local testing
npm linkMIT