@moxt-ai/cli
v0.3.3
Published
Moxt - The Agent-Native Workspace
Readme
@moxt-ai/cli
Moxt CLI - AI Workspace command line tool.
Installation
npm install -g @moxt-ai/cliUsage
moxt [command] [options]Commands
whoami
Show current user information.
moxt whoamiworkspace
Workspace management.
# List all workspaces you belong to
moxt workspace listmembers
Manage workspace members.
# List all members in a workspace
moxt members list -w <workspace-id>
# Remove members by email (comma-separated)
moxt members remove -w <workspace-id> <email1>,<email2>space
List accessible spaces in a workspace.
# List all accessible spaces (personal, team, teammate)
moxt space list -w <workspace-id>Output columns: TYPE, TEAM_SPACE_ID, TEAMMATE_ID, NAME
personal— Your personal space (Momo). Both IDs are empty; this is the default.team— Teamspace. OnlyTEAM_SPACE_IDis populated.teammate— AI teammate. OnlyTEAMMATE_IDis populated.
file
File operations on a space. Use moxt space list to find available spaces.
# List directory contents (defaults to personal space)
moxt file list -w <workspace-id> [-p <path>]
# List directory in personal space (explicit)
moxt file list -w <workspace-id> --personal [-p <path>]
# List directory in a teamspace (by name)
moxt file list -w <workspace-id> -s <teamspace-name> [-p <path>]
# List directory in a teamspace (by ID)
moxt file list -w <workspace-id> --team-space-id <teamSpaceId> [-p <path>]
# List directory in a teammate space (by teammate ID)
moxt file list -w <workspace-id> --teammate-id <teammateId> [-p <path>]
# Read file content by path
moxt file read -w <workspace-id> -p <path>
# Read file content from a teamspace (by name or ID)
moxt file read -w <workspace-id> -s <teamspace-name> -p <path>
moxt file read -w <workspace-id> --team-space-id <teamSpaceId> -p <path>
# Read file content from a teammate space (by teammate ID)
moxt file read -w <workspace-id> --teammate-id <teammateId> -p <path>
# Read file content by URL
moxt file read --url <moxt-url>
# Resolve the shareable browser URL for a file by path
moxt file get-url -w <workspace-id> -p <path>
# Resolve URL in a teamspace (by name or ID)
moxt file get-url -w <workspace-id> -s <teamspace-name> -p <path>
moxt file get-url -w <workspace-id> --team-space-id <teamSpaceId> -p <path>
# Resolve URL in a teammate space (by teammate ID)
moxt file get-url -w <workspace-id> --teammate-id <teammateId> -p <path>
# Upload a file by path
moxt file put -w <workspace-id> -p <path> -l <local-path> [-r]
# Upload a file to a teamspace (by name or ID)
moxt file put -w <workspace-id> -s <teamspace-name> -p <path> -l <local-path> [-r]
moxt file put -w <workspace-id> --team-space-id <teamSpaceId> -p <path> -l <local-path> [-r]
# Upload a file to a teammate space (by teammate ID)
moxt file put -w <workspace-id> --teammate-id <teammateId> -p <path> -l <local-path> [-r]
# Overwrite an existing file by its Moxt URL
moxt file put --url <moxt-url> -l <local-path>
# Create a directory
moxt file mkdir -w <workspace-id> -p <path> [-r]
moxt file mkdir -w <workspace-id> -s <teamspace-name> -p <path> [-r]
# Delete a file or empty directory
moxt file del -w <workspace-id> -p <path>
moxt file del -w <workspace-id> -s <teamspace-name> -p <path>
# Search files across accessible spaces (omit selectors to search every space you can access)
moxt file search -w <workspace-id> <query>
# Search inside a single space
moxt file search -w <workspace-id> --personal <query>
moxt file search -w <workspace-id> -s <teamspace-name> <query>
moxt file search -w <workspace-id> --team-space-id <teamSpaceId> <query>
moxt file search -w <workspace-id> --teammate-id <teammateId> <query>
# Tune the result set (defaults: --limit 30, --mode any; max --limit 80)
moxt file search -w <workspace-id> -l 50 --mode all <query>memory
Search archived agent memory (past chat conversations indexed for recall).
# Search the personal assistant's memory (default)
moxt memory search -w <workspace-id> <query>
# Search a managed AI teammate's memory
moxt memory search -w <workspace-id> --teammate-id <teammateId> <query>
# Tune the result set (default: --limit 5; max --limit 10)
moxt memory search -w <workspace-id> -l 10 <query>workflow
Manage workflows, workflow definitions, tasks, and workflow agent runs.
# List workflows
moxt workflow list -w <workspace-id>
moxt workflow list -w <workspace-id> --scope owner_is_me
# Create, inspect, update, duplicate, and delete workflows
moxt workflow create -w <workspace-id> -p <path.workflow> [--desc-file <local-path>]
moxt workflow get -w <workspace-id> <workflow-file-id>
moxt workflow update -w <workspace-id> <workflow-file-id> --desc-file <local-path>
moxt workflow duplicate -w <workspace-id> <workflow-file-id>
moxt workflow delete -w <workspace-id> <workflow-file-id> [--message <message>]
# Manage workflow statuses
moxt workflow status create -w <workspace-id> <workflow-file-id> --name Todo --type 1
moxt workflow status update -w <workspace-id> <workflow-file-id> <status-id> --type 2
moxt workflow status move-after -w <workspace-id> <workflow-file-id> <status-id> --after <status-id>
moxt workflow status move-after -w <workspace-id> <workflow-file-id> <status-id> --first
moxt workflow status delete -w <workspace-id> <workflow-file-id> <status-id>
# Manage workflow transitions
moxt workflow transition create -w <workspace-id> <workflow-file-id> --from <status-id> --to <status-id>
moxt workflow transition delete -w <workspace-id> <workflow-file-id> --from <status-id> --to <status-id>
# Manage workflow tasks
moxt workflow task list -w <workspace-id> [--workflow-file-id <workflow-file-id>]
moxt workflow task get -w <workspace-id> <workflow-file-id> <task-id>
moxt workflow task create -w <workspace-id> <workflow-file-id> --title "Review draft" --status <status-id>
moxt workflow task update -w <workspace-id> <workflow-file-id> <task-id> --desc-file <local-path>
moxt workflow task add-linked-files -w <workspace-id> <workflow-file-id> <task-id> --file-ids <file-id>[,<file-id>...]
moxt workflow task remove-linked-files -w <workspace-id> <workflow-file-id> <task-id> --file-ids <file-id>[,<file-id>...]
moxt workflow task move -w <workspace-id> <workflow-file-id> <task-id> --status <status-id>
moxt workflow task assign -w <workspace-id> <workflow-file-id> <task-id> --human-id <human-id>
moxt workflow task assign -w <workspace-id> <workflow-file-id> <task-id> --assistant-id <assistant-id>
moxt workflow task assign -w <workspace-id> <workflow-file-id> <task-id> --teammate-id <teammate-id>
moxt workflow task assign -w <workspace-id> <workflow-file-id> <task-id> --clear
moxt workflow task delete -w <workspace-id> <workflow-file-id> <task-id>
# Manage workflow task comments
moxt workflow comment create -w <workspace-id> <workflow-file-id> <task-id> --content-path <local-path>
moxt workflow comment list -w <workspace-id> <workflow-file-id> <task-id>
moxt workflow comment delete -w <workspace-id> <workflow-file-id> <task-id> <comment-id>
# Inspect or abort workflow agent runs
moxt workflow run status -w <workspace-id> <workflow-file-id> <trigger-id> [trigger-id...]
moxt workflow run output -w <workspace-id> <workflow-file-id> <trigger-id>
moxt workflow run abort -w <workspace-id> <workflow-file-id> <trigger-id>Workflow, status, and task descriptions are read from local UTF-8 text files with --desc-file.
Inline --desc is not supported.
Workflow task comment content is read only from a local UTF-8 text file with --content-path and is limited to
5,000 characters. Inline --content is not supported.
Workflow status type values are 1=todo, 2=in-progress, and 3=done.
File command options
| Option | Description |
|--------|-------------|
| -w, --workspace <id> | Workspace ID (required for path mode) |
| -s, --space <name> | Space name (personal or teamspace name) |
| --personal | Use personal space (default when no space specified) |
| --team-space-id <id> | Team space ID |
| --teammate-id <id> | Teammate ID (teammate space) |
| -p, --path <path> | File or directory path |
| -u, --url <url> | Moxt file URL (e.g., https://moxt.ai/w/{workspaceId}/{fileId}) |
| -l, --local-path <path> | Local file path (for upload) |
| -r, --recursive | Create parent directories if needed (path mode only) |
Note:
-s,--personal,--team-space-id, and--teammate-idare mutually exclusive. Forfile readandfile put, use either--urlor--workspacewith--path. They are mutually exclusive.--urlwithfile putoverwrites an existing file identified by the URL; it never creates new files. Use--recursiveis not allowed in URL mode.file get-urlreturns a stable Moxt URL (e.g.,https://moxt.ai/w/{workspaceId}/{fileId}) for the given path; the URL is unchanged across writes to the same path and can be fed back intofile read --urlorfile put --url.
Configuration
Set the following environment variables:
| Variable | Description |
|----------|-------------|
| MOXT_API_KEY | Your Moxt API key |
| MOXT_HOST | API hostname (default: api.moxt.ai) |
| MOXT_TELEMETRY_DISABLED | Set to 1 to disable anonymous usage telemetry |
| DO_NOT_TRACK | Set to 1 to disable anonymous usage telemetry (community standard) |
Telemetry
Moxt CLI collects anonymous usage data by default to help us understand how the tool is used, prioritize features, and catch regressions. Telemetry is easy to turn off.
What we collect
Every invocation of a Moxt CLI command may record:
| Field | Example | Purpose |
|-------|---------|---------|
| command / subcommand | workspace / list | Which command was invoked |
| cli_version | 1.2.3 | Distribution of CLI versions in use |
| node_version | 20.11.0 | Minimum-supported runtime planning |
| os | darwin / linux / win32 | OS support prioritization |
| arch | arm64 / x64 | Architecture support prioritization |
| status | success / error | Success and error rates |
| error_code | uncaught_exception | Error classification (best-effort; may be dropped on crash) |
| is_ci | true / false | Separate CI traffic from human usage |
| Duration | 0.42 seconds | Performance tracking |
User identification: telemetry is only sent while you are authenticated with a Moxt API key. Your user ID is attached server-side so that product decisions reflect real usage patterns.
What we do NOT collect
- Command argument values (file paths, workspace IDs, emails, etc.)
- File contents, directory names, or any data from your workspace
- Environment variables
- Standard output, standard error, or error messages
How to opt out
Any one of the following disables all telemetry:
# Environment variable (recommended for CI)
export MOXT_TELEMETRY_DISABLED=1
# Or the community-standard variable
export DO_NOT_TRACK=1
# Or persist the choice
moxt telemetry disableCheck current status with moxt telemetry status. Re-enable with moxt telemetry enable.
Where the data is sent
Metrics are sent to POST /openapi/v1/cli-metrics on Moxt's API endpoint, authenticated
with your API key. They are stored in Datadog and used to produce aggregated dashboards
and reliability monitors.
License
MIT
