Skip to main content

mammoth-cli

Use Mammoth Analytics from a terminal. The mammoth command covers data import and export, transformations, project organization, automation, and administration. Its interface is designed to be readable at a shell and predictable in scripts and agent runs.

PyPI Python License

  • Human-friendly by default. In a terminal, commands print a readable table.
  • Agent-native. When output is piped, you get a stable JSON envelope with a documented schema, exit codes, and error codes — no flags required.
  • Guarded mutations. Commands expose their confirmation policy; promptless destructive operations require an explicit --yes.
  • Discoverable. mammoth capability list and mammoth schema get describe every command, so an agent can learn the surface at runtime.

The CLI is built on the public mammoth-io SDK. It adds no second HTTP client and calls no private SDK members.

Agent-oriented interfaces are not a claim that autonomous long pipelines or every release API operation are qualified. See the capability matrix for current coverage.

Install

One step, no prerequisites. This installs uv if you do not already have it, the mammoth CLI, and the agent skill for Claude Code, Codex, and Cursor:

curl -fsSL https://github.com/EdgeMetric/mammothsdk/releases/latest/download/mammoth-install.sh | sh

Windows PowerShell:

irm https://github.com/EdgeMetric/mammothsdk/releases/latest/download/mammoth-install.ps1 | iex

Then confirm it works:

mammoth --version
mammoth doctor          # checks config, credentials, endpoint, connectivity
Already have a Python tool manager?
uv tool install mammoth-cli      # isolated, on your PATH
pipx install mammoth-cli
python -m pip install mammoth-cli

The CLI supports Python 3.12, 3.13, and 3.14. These one-line commands execute downloaded code; for checksum verification, see docs/installation.md. A Sigstore signature is an additional verification step only when that release actually includes its SHA256SUMS.sigstore.json bundle.

Quick start

mammoth auth login               # prompts for API key, API secret, workspace id
mammoth doctor                   # confirm credentials resolve and the API answers
mammoth project list             # a table in a terminal, JSON when piped
mammoth dataset list --project 180

Full walkthrough: docs/quickstart.md.

The login command has no workspace shortcut flag. For CI or an agent, use a protected request document instead:

chmod 600 creds.json
mammoth auth login --input creds.json --output json --no-input

Built for agents and CI

Piping or redirecting output yields the machine envelope, and --no-input turns on automatically off a terminal, so an agent needs no special flags:

mammoth project list | jq '.data'

To be explicit, pass --output json --no-input. Log in without a prompt with a permission-checked file:

mammoth auth login --input creds.json --output json --no-input

Feed multi-field requests as one document instead of many flags:

mammoth view transform math 1039 --project 180 \
  --input '{"expression": "Unit Price * Quantity", "new_column": "Revenue"}'

For pipeline transformations, prefer the typed commands and inspect their schemas before composing input. For example:

mammoth schema get view.transform.filter --output json --no-input
mammoth schema get view.transform.math --output json --no-input
mammoth schema get view.transform.substring --output json --no-input

The generic view task add, view task preview, and view task update commands are low-level expert routes. Their task_spec object is intentionally opaque in the installed schema; use a typed view transform command instead of inventing task fields. High-impact imports must also identify and confirm their target explicitly, for example:

mammoth dashboard import-workbook ./sample.twbx --project 456 \
  --yes --confirm 456 --output json --no-input

The sample path and project ID are placeholders for a local workbook and a project you have resolved and are authorized to modify.

The one-line installer already set up the bundled agent skill for Claude Code, Codex, and Cursor. If you installed with uv, pipx, or pip instead:

mammoth skill install

See docs/agents.md and the agent skill.

For a fresh external shell agent, start with the shipped portable task-start playbook.

For an unattended task, use the open-ended loop documented in Agent and CI usage: discover a capability and its schema, resolve every resource in its explicit scope, compose operations from the IDs returned by reads, verify the requested outcome, then recover or clean up from the observed state. Examples in this repository are nonexhaustive. The CLI never requires an agent to use backend column identifiers: inputs name columns by their display names. Do not infer a usable default view from a dataset; run view list DATASET_ID and choose a view explicitly.

If another agent must continue the work, write the nonsecret checkpoint format described in Portable agent handoff. It records scope, intent, verified evidence, jobs/unknown outcomes, and cleanup ownership without putting credentials into the handoff.

Give your coding agent the CLI playbook

The bundled skill describes authentication, discovery, structured input, job handling, and confirmations. Install it for the supported coding-agent tools:

mammoth skill install
mammoth skill list

The default target is user scope. To inspect destinations before writing, run mammoth skill path. To install only for one agent in the current project, use structured input:

mammoth skill install --input '{"agents": ["codex"], "scope": "project"}'

Use mammoth skill update after a CLI upgrade. It refreshes copies owned by the installer and reports modified copies instead of silently replacing them.

What you can do

Area Command families
Data in and out file, dataset, connector, addon
Shape and analyze view, dataset, ai
Organize project, folder, dashboard, report, template
Automate automation, workflow, schedule, batch, webhook
Administer workspace, user, billing, client-app, external-key
Operate the CLI auth, context, config, doctor, capability, schema, skill, upgrade

The full generated list is in docs/reference/commands.md.

Documentation

Guide What it covers
Installation Install the CLI and the agent skill.
Quick start Log in and run your first commands.
Authentication Getting an API key, login, profiles, projects.
Agent and CI usage Machine output, structured input, patterns.
Safe mutation Mutation classes and confirmation policies.
Output and errors Envelopes, exit codes, error codes.
Global flags The flags every command shares.
Troubleshooting Exit codes, error envelopes, recovery.
Upgrade / Uninstall Keep the CLI current, or remove it.
Command reference Every command, grouped by family.

Start with Quick start for a copy-paste workflow, Authentication for profiles and non-interactive login, or Agent and CI usage for schema-driven automation. The command reference is generated; use mammoth schema get COMMAND.ID to verify a request shape against the installed CLI.

Agent-readable indexes: docs/llms.txt and docs/llms-full.txt.

Capability-matrix status

The reviewed OpenAPI capability matrix is maintained in the readiness workbook; the repository-facing summary is docs/agent-capability-coverage.md. The current release snapshot contains 528 operations across 355 paths (the historical pinned M0 snapshot was 445 operations across 287 paths). The matrix separates Core ETL/workflow capabilities from Miscellaneous surfaces. Its live status counts are intentionally not duplicated here; read the linked row-level matrix for the current values. It does not declare Full readiness: matrix rows are planning/review status, not release qualification or live semantic proof. The workbook remains authoritative for row-level ownership, evidence, and qualification gates; no secrets or live evidence are copied into this README. The sanitized row-level release matrix and machine-readable matrix preserve all 528 method/path line items without pilot payloads or credentials.

Compatibility

mammoth-cli follows Semantic Versioning for the 1.x series:

  • The machine-output and error-envelope contract is stable. SCHEMA_VERSION (see mammoth_cli/__init__.py) identifies it and never changes incompatibly within a major version. New fields may be added; existing ones are preserved.
  • The CLI surface is stable. Command names, flags, and exit codes are not removed or repurposed within a major version.
  • Bug fixes ship in patch releases. Additive changes ship in minor releases.

Development

pytest tests/ -q                 # unit + contract tests (live tests deselected)
ruff check mammoth_cli scripts tests
mypy mammoth_cli
make cli-docs-check              # documentation gates

Build scripts under scripts/ regenerate the manifests and the documentation corpus offline. Release and packaging details live in ../RELEASING.md.

License

See LICENSE. Source: https://github.com/EdgeMetric/mammothsdk

Release files for mammoth-cli 1.1.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mammoth-cli 1.1.11
File Size Uploaded
mammoth_cli-1.1.11.tar.gz 494.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mammoth-cli 1.1.11
File Interpreter ABI Platform
mammoth_cli-1.1.11-py3-none-any.whl Python 3 none any Details

Total release size: 1.1 MB

Release files / mammoth_cli-1.1.11.tar.gz

Download URL mammoth_cli-1.1.11.tar.gz
Size 494.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c5339664d5be43a27cd43c15414c5ef896fb0ae229fd135845aa1f96aa765a7e
BLAKE2b-256 checksum
How to use checksums
58739cab5e6802e7c393ea7ca1ed25133c53f4024df25e32a3c86b35c6d153b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.6

Release files / mammoth_cli-1.1.11-py3-none-any.whl

Download URL mammoth_cli-1.1.11-py3-none-any.whl
Size 648.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
25a811dad8d843731d719f20948ffe7df85dfb16a89f4cea1d8999925b54c962
BLAKE2b-256 checksum
How to use checksums
c8202a987e8a21388acd5a35a9006b63b3eeb8a92c02d5c9f43d58804d506b4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.6

Release history Release notifications | RSS feed

2.0.30

2 release files

2.0.29

2 release files

2.0.28

2 release files

2.0.27

2 release files

2.0.26

2 release files

2.0.25

2 release files

2.0.24

2 release files

2.0.23

2 release files

2.0.22

2 release files

2.0.21

2 release files

2.0.20

2 release files

2.0.19

2 release files

2.0.18

2 release files

2.0.17

2 release files

2.0.16

2 release files

2.0.15

2 release files

2.0.14

2 release files

2.0.13

2 release files

2.0.12

2 release files

2.0.11

2 release files

2.0.10

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.12

2 release files

This release

1.1.11 This release

2 release files

1.1.10

2 release files

1.1.9

2 release files

1.1.7

2 release files

1.1.5

2 release files

1.1.3

2 release files

1.0.8

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page