Skip to main content

Command-line interface for the Mammoth Analytics platform

Project description

mammoth-cli

A typed command-line interface for the Mammoth Analytics platform. The executable is mammoth.

The CLI uses the public mammoth-io SDK for all Mammoth requests. It does not build a second HTTP client and does not call private SDK members.

Status

Stable. mammoth-cli 1.0.0 is a production release; the command surface and the machine-output contract are covered by the compatibility policy below.

Versioning & support

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

  • The machine-output and error-envelope contract is stable. SCHEMA_VERSION (see mammoth_cli/__init__.py) identifies that contract and does not change incompatibly within a major version; new fields may be added, but existing fields and their meanings are preserved.
  • The CLI surface is stable: command names, subcommands, flags, and exit codes are not removed or repurposed. New commands, flags, and output fields may be added in minor releases.
  • Bug fixes ship in patch releases; additive, backward-compatible changes ship in minor releases.

Any breaking change to the machine-output contract or the CLI surface bumps the major version (2.0.0).

Layout

Path Purpose
mammoth_cli/ CLI package (app, commands, contracts, services, context, output, errors, manifest, skills, messages).
spec/openapi/ Pinned production OpenAPI snapshot and metadata.
spec/manifests/ Reviewed parity manifests: operations, SDK methods, commands, and the schema.
spec/reports/ Generated parity report and expected red-first baseline.
scripts/ Deterministic build scripts (offline, no login).
tests/ Contract, unit, subprocess, and guarded live tests.

Reproducing the manifests

python scripts/sync_openapi.py --check    # verify the pinned snapshot digest
python scripts/build_manifests.py         # regenerate the three manifests
python scripts/build_parity_report.py     # regenerate spec/reports/parity.md

Refreshing the pinned snapshot from the network is an explicit maintenance operation (python scripts/sync_openapi.py); ordinary CI never fetches it.

Development

pytest tests/ -q                 # unit + contract tests (live tests deselected)
ruff check mammoth_cli scripts tests
black mammoth_cli scripts tests
mypy mammoth_cli

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mammoth_cli-1.0.0.tar.gz (400.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mammoth_cli-1.0.0-py3-none-any.whl (502.5 kB view details)

Uploaded Python 3

File details

Details for the file mammoth_cli-1.0.0.tar.gz.

File metadata

  • Download URL: mammoth_cli-1.0.0.tar.gz
  • Upload date:
  • Size: 400.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for mammoth_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d3351a345288404909315f410057cc581e9a6cdfd6eb1ab5e01d4fd2e57edb29
MD5 18734947022b654ac4f0cde4ce452202
BLAKE2b-256 587a695ff7202eda991ec27277b61f2e0f0c08b2bddde0e12596fccec0fea324

See more details on using hashes here.

File details

Details for the file mammoth_cli-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mammoth_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 502.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for mammoth_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 68595980b56f686dde4580dc38fa8e492775790f461109c67d10d1a8464242cf
MD5 7dd26dc9bf92ac3c3d8eee706038e3d9
BLAKE2b-256 eec3ced182dbae954c7bd545013487ed63ffc73582742f9a1c7277d64635d07d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page