mammoth-cli 2.2.85__tar.gz → 2.2.86__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/PKG-INFO +2 -2
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/__init__.py +1 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/__main__.py +5 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/app.py +136 -33
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/SKILL.md +8 -8
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/auth.md +10 -6
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities.md +1 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/command-index.md +10 -6
- mammoth_cli-2.2.86/mammoth_cli/bundled_skill/mammoth-cli/references/commands/capabilities.md +13 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/collection.md +50 -0
- mammoth_cli-2.2.86/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-embed.md +93 -0
- mammoth_cli-2.2.86/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-published.md +83 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard.md +94 -134
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dataset.md +1 -1
- mammoth_cli-2.2.86/mammoth_cli/bundled_skill/mammoth-cli/references/commands/how.md +13 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view.md +30 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workflow.md +30 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workspace.md +20 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/machine-output.md +25 -3
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/dashboards.md +13 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/auth.py +98 -13
- mammoth_cli-2.2.86/mammoth_cli/commands/capabilities.py +102 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/dashboard.py +139 -5
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/dataset.py +99 -22
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/doctor.py +17 -14
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/file.py +95 -11
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/folder.py +78 -4
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/help_summaries.json +30 -2
- mammoth_cli-2.2.86/mammoth_cli/commands/how.py +350 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/project.py +30 -20
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/registry.py +37 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/schedule.py +4 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/schema.py +51 -2
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view.py +194 -27
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view_ops.py +61 -21
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/workflow.py +126 -16
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/workspace.py +29 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/credentials.py +3 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/keyring_backend.py +9 -3
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/oauth.py +14 -0
- mammoth_cli-2.2.86/mammoth_cli/discovery/__init__.py +1 -0
- mammoth_cli-2.2.86/mammoth_cli/discovery/limitations.json +150 -0
- mammoth_cli-2.2.86/mammoth_cli/discovery/next_commands.json +36 -0
- mammoth_cli-2.2.86/mammoth_cli/discovery/recipes.json +588 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/errors/envelope.py +12 -2
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/envelope.py +4 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/policy.py +9 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/render.py +51 -5
- mammoth_cli-2.2.86/mammoth_cli/runtime/compact.py +117 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/dataset_health.py +19 -3
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/dryrun_targets.py +1 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/executor.py +28 -8
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/invocation.py +16 -3
- mammoth_cli-2.2.86/mammoth_cli/runtime/labels.py +45 -0
- mammoth_cli-2.2.86/mammoth_cli/runtime/next_commands.py +144 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/session.py +44 -6
- mammoth_cli-2.2.86/mammoth_cli/runtime/shared.py +43 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/state.py +81 -5
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/strict.py +28 -3
- mammoth_cli-2.2.86/mammoth_cli/runtime/token_scope.py +187 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/verify.py +26 -4
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/command_contract.py +8 -2
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/dashboard_figures.py +2 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/dashboard_pages.py +21 -5
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/field_enums.py +47 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/listing.py +9 -4
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/local_files.py +10 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/mapping.py +53 -8
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/paging.py +37 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/positionals.py +62 -0
- mammoth_cli-2.2.86/mammoth_cli/services/read_memo.py +73 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/sdk_service.py +34 -2
- mammoth_cli-2.2.86/mammoth_cli/services/suggest.py +123 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/testing.py +7 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/skills/steering.py +15 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/pyproject.toml +2 -2
- mammoth_cli-2.2.86/spec/manifests/commands/capabilities.yaml +33 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/collection.yaml +220 -2
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/dashboard.yaml +695 -80
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/dataset.yaml +1 -1
- mammoth_cli-2.2.86/spec/manifests/commands/how.yaml +39 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/view.yaml +553 -180
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/workflow.yaml +208 -12
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/workspace.yaml +128 -33
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/openapi-operations.yaml +1083 -21
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/sdk-catalog.source.yaml +1380 -1090
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/sdk-methods.yaml +343 -13
- mammoth_cli-2.2.86/spec/openapi/metadata.json +10 -0
- mammoth_cli-2.2.86/spec/openapi/openapi.json +1 -0
- mammoth_cli-2.2.85/mammoth_cli/runtime/token_scope.py +0 -81
- mammoth_cli-2.2.85/spec/openapi/metadata.json +0 -25
- mammoth_cli-2.2.85/spec/openapi/openapi.json +0 -1
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/.gitignore +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/LICENSE +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/README.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/about-mammoth.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities-misc.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/activity.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/addon.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/agent.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/ai.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/annotation.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/auth.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/automation.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/batch.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/billing.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/browse.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/calc.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/capability.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/client-app.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/completion.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/config.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/connector.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/context.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-qa.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-style.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-template.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/data-app.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/doctor.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/external-key.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/file.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/folder.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/job.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/link.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/log.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/notification.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/parameter.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/project.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/report.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/resolve.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schedule.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schema.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/skill.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/snippet.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/support.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/template.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/token.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/trash.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/upgrade.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/user.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/version.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view-transform.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/webhook.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/handoff.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/input.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/jobs-drafts.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/operations.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/auth-scope.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/build-an-agent.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/cleanup.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/database-import.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/end-to-end.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/exports.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/file-import.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/index.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/need-action.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/resources.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/rest-api-import.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/scheduling.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/transforms.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/typed-etl-discovery.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/recovery.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/report-checklist.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/retention.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/safety.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/task-start.md +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/_lazy.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/activity.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/addon.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/agent.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/ai.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/annotation.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/automation.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/batch.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/billing.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/browse.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/calc.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/capability.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/client_app.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/completion.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/config.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/connector.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/context.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/data_app.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/external_key.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/job.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/link.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/notification.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/parameter.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/report.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/resolve.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/skill.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/snippet.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/support.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/template.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/trash.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/upgrade.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/user.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view_drivers.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view_explore.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view_forecast.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/view_profile.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/commands/webhook.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/endpoint.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/profiles.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/context/resolver.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/contracts/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/contracts/auth.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/embed.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/errors/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/manifest/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/manifest/loader.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/messages/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/normalize.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/output/progress.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/py.typed +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/confirm.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/dryrun.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/embedded.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/input_loader.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/intent_only.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/locked_files.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/new_data.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/opens.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/options.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/parents.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/runlog.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/updates.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/runtime/validate.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/append_blank_columns.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/argspec.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/board_values.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/coerce.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/column_type_guard.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/conditional_format.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/conditions.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/dashboard_filters.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/dashboard_review.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/data_profile.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/data_quality.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/delete_check.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/dispatch.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/explore_card_edit.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/explore_cards.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/explore_to_figure.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/explore_to_image.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/factory.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/folder_ids.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/input_fields.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/job_outcome.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/local_time.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/openapi_types.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/period_analysis.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/protocol.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/read_queries.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/schema_diff.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/sql_check.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/stored_stats.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/text_dates.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/type_system.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/view_analysis.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/view_variants.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/services/write_impact.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/skills/__init__.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/skills/installer.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/testing.py +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/activity.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/addon.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/agent.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/ai.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/annotation.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/auth.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/automation.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/batch.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/billing.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/browse.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/calc.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/capability.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/client-app.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/completion.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/config.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/connector.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/context.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/data-app.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/doctor.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/external-key.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/file.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/folder.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/job.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/link.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/log.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/notification.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/parameter.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/project.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/report.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/resolve.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/schedule.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/schema.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/skill.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/snippet.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/support.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/template.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/token.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/trash.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/upgrade.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/user.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/version.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/commands/webhook.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/edits-target.source.yaml +0 -0
- {mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/spec/manifests/schema-v1.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mammoth-cli
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.86
|
|
4
4
|
Summary: Command-line interface for the Mammoth Analytics platform
|
|
5
5
|
Project-URL: homepage, https://mammoth.io
|
|
6
6
|
Project-URL: repository, https://github.com/EdgeMetric/mammothsdk
|
|
@@ -18,7 +18,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
18
18
|
Requires-Python: <3.15,>=3.12
|
|
19
19
|
Requires-Dist: jsonschema>=4.20
|
|
20
20
|
Requires-Dist: keyring<26,>=25.7
|
|
21
|
-
Requires-Dist: mammoth-io<0.9,>=0.8.
|
|
21
|
+
Requires-Dist: mammoth-io<0.9,>=0.8.44
|
|
22
22
|
Requires-Dist: platformdirs<5,>=4.10
|
|
23
23
|
Requires-Dist: pydantic<3,>=2.12.5
|
|
24
24
|
Requires-Dist: pyyaml<7,>=6
|
|
@@ -8,6 +8,7 @@ launch symbol that does not change when the application wiring moves.
|
|
|
8
8
|
|
|
9
9
|
from __future__ import annotations
|
|
10
10
|
|
|
11
|
+
import os
|
|
11
12
|
import sys
|
|
12
13
|
from typing import Any
|
|
13
14
|
|
|
@@ -19,6 +20,10 @@ def main() -> Any:
|
|
|
19
20
|
The value returned by the Typer application, which the runtime uses as
|
|
20
21
|
the process exit code.
|
|
21
22
|
"""
|
|
23
|
+
# pydantic looks up installed plugins (entry points) the first time it builds a
|
|
24
|
+
# model, and imports each one it finds: with logfire in the environment that is
|
|
25
|
+
# about 0.4 s on every command that loads the SDK. The CLI uses no plugin.
|
|
26
|
+
os.environ.setdefault("PYDANTIC_DISABLE_PLUGINS", "__all__")
|
|
22
27
|
if sys.argv[1:] == ["--version"]:
|
|
23
28
|
# The answer needs none of the command tree; skip building it.
|
|
24
29
|
from mammoth_cli import __version__
|
|
@@ -43,6 +43,7 @@ from mammoth_cli.output.policy import (
|
|
|
43
43
|
OUTPUT_AUTO,
|
|
44
44
|
SELECTABLE_OUTPUTS,
|
|
45
45
|
VALID_OUTPUTS,
|
|
46
|
+
canonical_output,
|
|
46
47
|
resolve_output,
|
|
47
48
|
)
|
|
48
49
|
from mammoth_cli.services.positionals import PositionalSpec, resolve_positionals
|
|
@@ -84,8 +85,15 @@ _GROUP_DESCRIPTIONS = {
|
|
|
84
85
|
"data-app": "Create and manage data applications.",
|
|
85
86
|
"dataset": "Create, inspect, and manage datasets.",
|
|
86
87
|
"external-key": "Manage LLM provider keys (OpenAI, Anthropic, etc.) used by AI features.",
|
|
87
|
-
"file":
|
|
88
|
-
|
|
88
|
+
"file": (
|
|
89
|
+
"Upload files (file upload; a whole local directory: file upload-folder) and manage "
|
|
90
|
+
"uploaded source files. An uploaded file becomes a dataset: delete it with "
|
|
91
|
+
"'dataset delete'."
|
|
92
|
+
),
|
|
93
|
+
"folder": (
|
|
94
|
+
"Create, rename, move and delete project folders that organize datasets, views and "
|
|
95
|
+
"dashboards. To upload a local directory use 'file upload-folder'."
|
|
96
|
+
),
|
|
89
97
|
"job": "Inspect and wait for asynchronous jobs.",
|
|
90
98
|
"notification": "Manage workspace notifications.",
|
|
91
99
|
"parameter": "Manage parameters and parameter groups.",
|
|
@@ -146,6 +154,8 @@ _SUBGROUP_DESCRIPTIONS = {
|
|
|
146
154
|
"browse resources": "Browse workspace resources in bulk.",
|
|
147
155
|
"collection dashboards": "Add dashboards to a collection or remove them.",
|
|
148
156
|
"collection files": "Upload files to a collection.",
|
|
157
|
+
"collection email-updates": "Read and set a collection's email updates, and send a test.",
|
|
158
|
+
"collection email-updates me": "Read and set your own email updates for a collection.",
|
|
149
159
|
"collection members": "Remove members from a collection.",
|
|
150
160
|
"connector ai": "Chat with the connector assistant to set up a connection.",
|
|
151
161
|
"connector ai session": "List connector assistant sessions and their messages.",
|
|
@@ -161,6 +171,9 @@ _SUBGROUP_DESCRIPTIONS = {
|
|
|
161
171
|
"dashboard data": "Read the data behind a dashboard, draft or published.",
|
|
162
172
|
"dashboard embed": "Manage dashboard embedding: keys, origins, tokens and usage.",
|
|
163
173
|
"dashboard embed config": "Read and set the embed configuration.",
|
|
174
|
+
"dashboard email-updates": "Read and set a dashboard's email updates, and send a test.",
|
|
175
|
+
"dashboard email-updates me": "Read and set your own email updates for a dashboard.",
|
|
176
|
+
"dashboard live-chart": "Create live charts, set their audience and see where they are used.",
|
|
164
177
|
"dashboard embed key": "Rotate the embed key.",
|
|
165
178
|
"dashboard embed lifetime": "Set the embed token lifetime.",
|
|
166
179
|
"dashboard embed origin": "Revoke an allowed embed origin.",
|
|
@@ -245,6 +258,7 @@ _SUBGROUP_DESCRIPTIONS = {
|
|
|
245
258
|
"view variants": "Create view variants.",
|
|
246
259
|
"view version": "List, read, apply and delete view versions.",
|
|
247
260
|
"workflow block": "Add and configure workflow blocks.",
|
|
261
|
+
"workspace export-hosts": "Read and set the hosts exports may send data to.",
|
|
248
262
|
"workspace invite": "List, resend, revoke and delete workspace invites.",
|
|
249
263
|
"workspace oauth-client": "Register, list, delete and revoke OAuth client grants.",
|
|
250
264
|
"workspace segment": "List and update workspace segments.",
|
|
@@ -269,6 +283,8 @@ _ROOT_HELP_PANELS = {
|
|
|
269
283
|
"context": "Start here",
|
|
270
284
|
"doctor": "Start here",
|
|
271
285
|
"project": "Start here",
|
|
286
|
+
"how": "Discover commands",
|
|
287
|
+
"capabilities": "Discover commands",
|
|
272
288
|
"schema": "Discover commands",
|
|
273
289
|
"capability": "Discover commands",
|
|
274
290
|
"browse": "Discover commands",
|
|
@@ -357,6 +373,7 @@ def _output_mode_from_argv(argv: Sequence[str] | None) -> str:
|
|
|
357
373
|
elif token.startswith("-o") and len(token) > 2:
|
|
358
374
|
mode = token[2:]
|
|
359
375
|
index += 1
|
|
376
|
+
mode = canonical_output(mode)
|
|
360
377
|
if mode not in SELECTABLE_OUTPUTS:
|
|
361
378
|
# A value the command would reject (``--output xml``) must not turn the
|
|
362
379
|
# error into prose: judge it by where stdout goes, like the default.
|
|
@@ -436,6 +453,76 @@ def _corrected_command(tokens: Sequence[str]) -> str | None:
|
|
|
436
453
|
return " ".join(["mammoth", *rest, *leading])
|
|
437
454
|
|
|
438
455
|
|
|
456
|
+
def _parent_words(context: Any) -> list[str]:
|
|
457
|
+
"""The command words above an unknown one, without the program name."""
|
|
458
|
+
words: list[str] = []
|
|
459
|
+
while context is not None and getattr(context, "parent", None) is not None:
|
|
460
|
+
words.insert(0, str(context.info_name))
|
|
461
|
+
context = context.parent
|
|
462
|
+
return words
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
def _unknown_command_report(error: Any) -> CliError | None:
|
|
466
|
+
"""``No such command 'X'``: name the nearest commands and the discovery commands."""
|
|
467
|
+
from mammoth_cli.services.suggest import DISCOVERY_HINT, command_suggestions
|
|
468
|
+
|
|
469
|
+
match = _NO_SUCH_COMMAND.search(error.format_message() or "")
|
|
470
|
+
if match is None or match.group("name").startswith("-"):
|
|
471
|
+
return None
|
|
472
|
+
name = match.group("name")
|
|
473
|
+
parent = _parent_words(getattr(error, "ctx", None))
|
|
474
|
+
paths = [str(record["command_path"]).split() for record in _command_records()]
|
|
475
|
+
suggestions = command_suggestions(parent, name, paths)
|
|
476
|
+
where = f" under 'mammoth {' '.join(parent)}'" if parent else ""
|
|
477
|
+
message = f"No such command '{name}'{where}."
|
|
478
|
+
if suggestions:
|
|
479
|
+
message += f" Did you mean: {', '.join(suggestions)}?"
|
|
480
|
+
goal = name.replace('"', "")
|
|
481
|
+
return CliError(
|
|
482
|
+
code="usage_error",
|
|
483
|
+
message=message,
|
|
484
|
+
exit_status=EXIT_USAGE,
|
|
485
|
+
hint=DISCOVERY_HINT,
|
|
486
|
+
details={"command": name, "did_you_mean": suggestions},
|
|
487
|
+
recovery_commands=[
|
|
488
|
+
*(f"{suggestion} --help" for suggestion in suggestions[:2]),
|
|
489
|
+
f'mammoth how "{goal}"',
|
|
490
|
+
f'mammoth schema find "{goal}"',
|
|
491
|
+
],
|
|
492
|
+
)
|
|
493
|
+
|
|
494
|
+
|
|
495
|
+
def _unknown_option_report(error: Any, option: str) -> CliError:
|
|
496
|
+
"""An unknown ``--option``: name the nearest valid one (global or the command's own)."""
|
|
497
|
+
from mammoth_cli.services.suggest import option_suggestion
|
|
498
|
+
|
|
499
|
+
command = getattr(getattr(error, "ctx", None), "command", None)
|
|
500
|
+
known = set(_global_option_flags()[0]) | {
|
|
501
|
+
flag
|
|
502
|
+
for param in getattr(command, "params", [])
|
|
503
|
+
for flag in (*param.opts, *param.secondary_opts)
|
|
504
|
+
}
|
|
505
|
+
suggestion = option_suggestion(option, sorted(known))
|
|
506
|
+
close = sorted(getattr(error, "possibilities", None) or [])
|
|
507
|
+
if suggestion is None and close:
|
|
508
|
+
# Click's own guess also catches a prefix ('--server' for '--server-prefix').
|
|
509
|
+
suggestion = {"flag": close[0], "hint": f"Did you mean {' or '.join(close)}?"}
|
|
510
|
+
details: dict[str, Any] = {"option": option}
|
|
511
|
+
if suggestion is not None:
|
|
512
|
+
details["did_you_mean"] = suggestion["flag"]
|
|
513
|
+
return CliError(
|
|
514
|
+
code="unknown_option",
|
|
515
|
+
message=f"Unknown option '{option}'.",
|
|
516
|
+
exit_status=EXIT_USAGE,
|
|
517
|
+
hint=(
|
|
518
|
+
suggestion["hint"]
|
|
519
|
+
if suggestion is not None
|
|
520
|
+
else "Run the command with --help to list its options."
|
|
521
|
+
),
|
|
522
|
+
details=details,
|
|
523
|
+
)
|
|
524
|
+
|
|
525
|
+
|
|
439
526
|
def _usage_error_report(error: Any, tokens: Sequence[str]) -> CliError | None:
|
|
440
527
|
"""Classify a usage error whose own Click message is empty or misleading.
|
|
441
528
|
|
|
@@ -464,7 +551,9 @@ def _usage_error_report(error: Any, tokens: Sequence[str]) -> CliError | None:
|
|
|
464
551
|
if match is None:
|
|
465
552
|
return None
|
|
466
553
|
name = match.group("name").split("=", 1)[0]
|
|
467
|
-
if not name.startswith("-")
|
|
554
|
+
if not name.startswith("-"):
|
|
555
|
+
return _unknown_command_report(error)
|
|
556
|
+
if name not in _global_option_flags()[0]:
|
|
468
557
|
return None
|
|
469
558
|
# Only leaf commands declare the global options, so a group reads one as a
|
|
470
559
|
# subcommand name and reports a misleading "No such command '--profile'".
|
|
@@ -649,13 +738,7 @@ class _EnvelopeGroup(TyperGroup):
|
|
|
649
738
|
report = None if is_missing_parameter else _usage_error_report(error, tokens)
|
|
650
739
|
if is_missing_parameter and (option := _unknown_flag_in(error, tokens)):
|
|
651
740
|
# A misspelt flag is the first thing to fix, ahead of a missing argument.
|
|
652
|
-
report =
|
|
653
|
-
code="unknown_option",
|
|
654
|
-
message=f"Unknown option '{option}'.",
|
|
655
|
-
exit_status=EXIT_USAGE,
|
|
656
|
-
hint="Check the command schema with 'mammoth schema get'.",
|
|
657
|
-
details={"option": option},
|
|
658
|
-
)
|
|
741
|
+
report = _unknown_option_report(error, option)
|
|
659
742
|
if _output_mode_from_argv(argv) in MACHINE_OUTPUTS:
|
|
660
743
|
if report is None:
|
|
661
744
|
missing = is_missing_parameter
|
|
@@ -668,18 +751,7 @@ class _EnvelopeGroup(TyperGroup):
|
|
|
668
751
|
)
|
|
669
752
|
elif isinstance(error, _typer_click_exceptions.NoSuchOption):
|
|
670
753
|
option = getattr(error, "option_name", None) or "unknown"
|
|
671
|
-
|
|
672
|
-
report = CliError(
|
|
673
|
-
code="unknown_option",
|
|
674
|
-
message=f"Unknown option '{option}'.",
|
|
675
|
-
exit_status=EXIT_USAGE,
|
|
676
|
-
hint=(
|
|
677
|
-
f"Did you mean {' or '.join(sorted(close))}?"
|
|
678
|
-
if close
|
|
679
|
-
else "Check the command schema with 'mammoth schema get'."
|
|
680
|
-
),
|
|
681
|
-
details={"option": option},
|
|
682
|
-
)
|
|
754
|
+
report = _unknown_option_report(error, option)
|
|
683
755
|
elif isinstance(error, _typer_click_exceptions.BadParameter):
|
|
684
756
|
# With optional typed positionals Click may consume an
|
|
685
757
|
# unknown option token as the positional value. Only
|
|
@@ -687,13 +759,7 @@ class _EnvelopeGroup(TyperGroup):
|
|
|
687
759
|
# a known option's malformed value remains usage_error.
|
|
688
760
|
option = _unknown_flag_in(error, tokens)
|
|
689
761
|
if option:
|
|
690
|
-
report =
|
|
691
|
-
code="unknown_option",
|
|
692
|
-
message=f"Unknown option '{option}'.",
|
|
693
|
-
exit_status=EXIT_USAGE,
|
|
694
|
-
hint="Check the command schema with 'mammoth schema get'.",
|
|
695
|
-
details={"option": option},
|
|
696
|
-
)
|
|
762
|
+
report = _unknown_option_report(error, option)
|
|
697
763
|
else:
|
|
698
764
|
report = CliError(
|
|
699
765
|
code="usage_error",
|
|
@@ -714,12 +780,18 @@ class _EnvelopeGroup(TyperGroup):
|
|
|
714
780
|
elif report is None:
|
|
715
781
|
error.show()
|
|
716
782
|
else:
|
|
717
|
-
typer.echo(f"Error: {report.message}", err=True)
|
|
718
783
|
# A no-subcommand error arrives with the help text already on
|
|
719
784
|
# screen, so repeating "run --help" below it would be noise.
|
|
720
785
|
no_args = _NO_ARGS_ERROR is not None and isinstance(error, _NO_ARGS_ERROR)
|
|
786
|
+
ctx = getattr(error, "ctx", None)
|
|
787
|
+
if ctx is not None and not no_args:
|
|
788
|
+
# Click's own usage line first, as its prose error has it.
|
|
789
|
+
typer.echo(ctx.get_usage(), err=True)
|
|
790
|
+
typer.echo(f"Error: {report.message}", err=True)
|
|
721
791
|
if report.hint and not no_args:
|
|
722
792
|
typer.echo(report.hint, err=True)
|
|
793
|
+
for command in report.recovery_commands:
|
|
794
|
+
typer.echo(f" try: {command}", err=True)
|
|
723
795
|
|
|
724
796
|
|
|
725
797
|
def _version_callback(value: bool) -> None:
|
|
@@ -1095,16 +1167,24 @@ def _execute(invocation: Invocation) -> None:
|
|
|
1095
1167
|
# resolving the mutable selected-profile pointer after an interrupt.
|
|
1096
1168
|
from mammoth_cli.context import profiles
|
|
1097
1169
|
from mammoth_cli.runtime import executor, validate
|
|
1170
|
+
from mammoth_cli.runtime.compact import COMPACT_COMMANDS, FULL_FLAG, with_compact
|
|
1098
1171
|
from mammoth_cli.runtime.confirm import refuse_mismatched_confirm
|
|
1099
1172
|
from mammoth_cli.runtime.dataset_health import with_dataset_health
|
|
1100
1173
|
from mammoth_cli.runtime.intent_only import refuse_hand_crafted_write
|
|
1101
1174
|
from mammoth_cli.runtime.locked_files import with_locked_files
|
|
1102
1175
|
from mammoth_cli.runtime.new_data import with_new_data_path
|
|
1176
|
+
from mammoth_cli.runtime.next_commands import with_next_commands
|
|
1103
1177
|
from mammoth_cli.runtime.opens import with_opens
|
|
1104
1178
|
from mammoth_cli.runtime.strict import validate_extra_args
|
|
1105
1179
|
|
|
1106
1180
|
if invocation.profile is None:
|
|
1107
1181
|
invocation = replace(invocation, profile=profiles.get_selected(), profile_is_default=True)
|
|
1182
|
+
if invocation.command_id in COMPACT_COMMANDS and FULL_FLAG in invocation.extra_args:
|
|
1183
|
+
invocation = replace(
|
|
1184
|
+
invocation,
|
|
1185
|
+
extra_args=[arg for arg in invocation.extra_args if arg != FULL_FLAG],
|
|
1186
|
+
full_output=True,
|
|
1187
|
+
)
|
|
1108
1188
|
|
|
1109
1189
|
def producer() -> tuple[Any, dict[str, Any]]:
|
|
1110
1190
|
refuse_hand_crafted_write(invocation.command_id)
|
|
@@ -1134,7 +1214,8 @@ def _execute(invocation: Invocation) -> None:
|
|
|
1134
1214
|
return _dry_run(handler, invocation)
|
|
1135
1215
|
data, meta = handler(invocation)
|
|
1136
1216
|
checked = with_locked_files(with_dataset_health(_apply_verify(invocation, data)))
|
|
1137
|
-
|
|
1217
|
+
meta = with_next_commands(invocation, checked, with_opens(invocation, checked, meta))
|
|
1218
|
+
return with_compact(invocation, with_new_data_path(checked)), meta
|
|
1138
1219
|
|
|
1139
1220
|
executor.run(
|
|
1140
1221
|
invocation.command_id,
|
|
@@ -1360,6 +1441,18 @@ def _command_help(command_id: str, record: dict[str, Any] | None) -> str | None:
|
|
|
1360
1441
|
if fields:
|
|
1361
1442
|
label = _INPUT_FIELDS_LABEL.get(command_id, "Input fields")
|
|
1362
1443
|
parts.append(f"{label}: {fields}")
|
|
1444
|
+
from mammoth_cli.services.field_enums import nested_choices_help
|
|
1445
|
+
|
|
1446
|
+
nested = nested_choices_help(command_id)
|
|
1447
|
+
if nested:
|
|
1448
|
+
parts.append(nested)
|
|
1449
|
+
from mammoth_cli.runtime.compact import COMPACT_COMMANDS, FULL_FLAG
|
|
1450
|
+
|
|
1451
|
+
if command_id in COMPACT_COMMANDS:
|
|
1452
|
+
parts.append(
|
|
1453
|
+
"The result is compact: ids, checks, verify and a canvas summary. "
|
|
1454
|
+
f"Pass {FULL_FLAG} for the complete response."
|
|
1455
|
+
)
|
|
1363
1456
|
return "\n\n".join(parts) or None
|
|
1364
1457
|
|
|
1365
1458
|
|
|
@@ -1383,7 +1476,8 @@ def _help_input_fields(command_id: str) -> str | None:
|
|
|
1383
1476
|
for field in fields:
|
|
1384
1477
|
label = f"{field.name}*" if field.required else field.name
|
|
1385
1478
|
enum = field.enum_values
|
|
1386
|
-
|
|
1479
|
+
# Every value: a fixed list cut short is a guess the caller cannot check.
|
|
1480
|
+
kind = " | ".join(str(item) for item in enum) if enum else _short_type(field.type_name)
|
|
1387
1481
|
rendered.append(f"{label} ({kind})" if kind else label)
|
|
1388
1482
|
if len(rendered) == 12 and len(fields) > 12:
|
|
1389
1483
|
rendered.append(f"... {len(fields) - 12} more (schema get {command_id})")
|
|
@@ -1396,7 +1490,8 @@ def _short_type(type_name: str) -> str:
|
|
|
1396
1490
|
text = str(type_name or "")
|
|
1397
1491
|
if "condition." in text:
|
|
1398
1492
|
return "condition"
|
|
1399
|
-
|
|
1493
|
+
# Drop each dotted module path but keep the brackets around it (``list[a.b.C]``).
|
|
1494
|
+
return re.sub(r"(?:\w+\.)+(\w+)", r"\1", " | ".join(p.strip() for p in text.split("|")))[:60]
|
|
1400
1495
|
|
|
1401
1496
|
|
|
1402
1497
|
def _command_records() -> list[dict[str, Any]]:
|
|
@@ -1607,6 +1702,10 @@ def _load_top_level_group(name: str) -> Any:
|
|
|
1607
1702
|
# would import the handler's module (and its SDK dependencies). A test pins this
|
|
1608
1703
|
# table to :func:`_command_help` so it cannot drift.
|
|
1609
1704
|
_ROOT_LEAF_HELP: dict[str, str] = {
|
|
1705
|
+
"capabilities": (
|
|
1706
|
+
"List what the CLI cannot do yet, and what to do instead."
|
|
1707
|
+
"\n\nExample: mammoth capabilities"
|
|
1708
|
+
),
|
|
1610
1709
|
"calc": (
|
|
1611
1710
|
"Evaluate one arithmetic expression exactly."
|
|
1612
1711
|
"\n\nExample: mammoth calc '2063664 - 1917815'"
|
|
@@ -1615,6 +1714,10 @@ _ROOT_LEAF_HELP: dict[str, str] = {
|
|
|
1615
1714
|
"Run environment and connectivity diagnostics."
|
|
1616
1715
|
"\n\nExample: mammoth doctor\n\nInput fields: wait (int)"
|
|
1617
1716
|
),
|
|
1717
|
+
"how": (
|
|
1718
|
+
"Turn a plain-language goal into an ordered recipe of commands."
|
|
1719
|
+
"\n\nExample: mammoth how 'refresh a dataset daily'"
|
|
1720
|
+
),
|
|
1618
1721
|
"link": (
|
|
1619
1722
|
"Read the workspace, project, folder, dataset and view ids out of a pasted app URL."
|
|
1620
1723
|
"\n\nExample: mammoth link https://app.mammoth.io/workspaces/1/projects/2/data/datasets"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mammoth-cli
|
|
3
|
-
version: 2.2.
|
|
3
|
+
version: 2.2.86
|
|
4
4
|
description: "Use Mammoth Analytics from a terminal: install or authenticate the CLI, discover its live command contract, and safely manage projects, data, views, pipelines (join, merge, pivot, filter, clean), dashboards, exports, and handoffs."
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -67,6 +67,7 @@ State the goal in plain words;
|
|
|
67
67
|
`view transform --help` is the Transform menu with one line per task:
|
|
68
68
|
|
|
69
69
|
```bash
|
|
70
|
+
mammoth how "blend two files by day" # ordered steps, multi-step goal
|
|
70
71
|
mammoth schema find "merge two datasets" # -> view.transform.join
|
|
71
72
|
mammoth view transform --help # every data transformation
|
|
72
73
|
mammoth schema find "join two datasets; remove duplicates; build a dashboard" # 1 call, 1 result per goal
|
|
@@ -93,15 +94,15 @@ mammoth schema find "join two datasets; remove duplicates; build a dashboard"
|
|
|
93
94
|
|
|
94
95
|
Call a find result (or `suggestions` entry) from its `accepted_fields` and
|
|
95
96
|
`agent_example`. Before concluding the CLI cannot do something the web app
|
|
96
|
-
does,
|
|
97
|
+
does, run `mammoth capabilities` (known gaps) and check
|
|
98
|
+
`view transform --help` and "View settings, and what has no
|
|
97
99
|
command" in [about Mammoth](references/about-mammoth.md). Do not switch to
|
|
98
100
|
the browser, or compute locally, for work the CLI covers; report a real gap
|
|
99
101
|
with the command tried.
|
|
100
102
|
|
|
101
103
|
## Several files, one deliverable
|
|
102
104
|
|
|
103
|
-
Users often upload related files without saying how they relate
|
|
104
|
-
dashboard from t_a and t_b"). Work it out from the data before building:
|
|
105
|
+
Users often upload related files without saying how they relate. Work it out from the data before building:
|
|
105
106
|
|
|
106
107
|
1. Upload every file, or find the ones already uploaded. An upload result
|
|
107
108
|
carries a `view` preview of what Mammoth made of it (`view_id`, column
|
|
@@ -109,7 +110,7 @@ dashboard from t_a and t_b"). Work it out from the data before building:
|
|
|
109
110
|
data get VIEW_ID` per view; warnings list numbers/dates stored as text,
|
|
110
111
|
and blanks, each with its fix.
|
|
111
112
|
2. Find the keys. A column in one view whose values appear in a column of
|
|
112
|
-
the other (`customer_id` and `id
|
|
113
|
+
the other (`customer_id` and `id`) is a
|
|
113
114
|
foreign key; the view with many rows per key is the main one.
|
|
114
115
|
3. Read both key columns, then match the keys: same type (`convert-type`), same
|
|
115
116
|
case and padding (`text`), no blanks (`set-values`, `filter`).
|
|
@@ -131,8 +132,7 @@ dashboard from t_a and t_b"). Work it out from the data before building:
|
|
|
131
132
|
revenue, not a unit price. Fix each `deliverable_check` warning, or say
|
|
132
133
|
why not.
|
|
133
134
|
|
|
134
|
-
For
|
|
135
|
-
joins, date steps), see
|
|
135
|
+
For common pipeline defaults, see
|
|
136
136
|
[transforms](references/recipes/transforms.md#what-most-pipelines-look-like).
|
|
137
137
|
Say what you inferred (which columns you joined on, what you converted) in
|
|
138
138
|
your report. If no column links the files, ask before you combine them.
|
|
@@ -141,7 +141,7 @@ your report. If no column links the files, ask before you combine them.
|
|
|
141
141
|
|
|
142
142
|
- Ids are positionals; request fields are one `--input '{...}'` document;
|
|
143
143
|
no per-field flags (`project create NAME`, not `--name`).
|
|
144
|
-
- `COMMAND --help` lists input fields; `schema find WORDS` inlines
|
|
144
|
+
- `COMMAND --help` lists input fields and allowed values; `schema find WORDS` inlines
|
|
145
145
|
`accepted_fields`/`agent_example` for top matches, else `schema get
|
|
146
146
|
ID,ID` (one call; `--input '{"full": true}'` for all
|
|
147
147
|
fields); `schema list`/`schema list view` list families.
|
{mammoth_cli-2.2.85 → mammoth_cli-2.2.86}/mammoth_cli/bundled_skill/mammoth-cli/references/auth.md
RENAMED
|
@@ -6,17 +6,21 @@ Login accepts nothing else. If `auth status` reports `credential: key_secret`
|
|
|
6
6
|
(a profile saved by an older CLI), it still works, but ask the operator to run
|
|
7
7
|
`mammoth auth login` again with a token.
|
|
8
8
|
|
|
9
|
-
A token may be limited to one project
|
|
10
|
-
`authorization_required` in every other
|
|
11
|
-
created. When that happens, stop creating
|
|
12
|
-
|
|
13
|
-
created without a project.
|
|
9
|
+
A token may be limited to one project, and a browser or device sign-in to one
|
|
10
|
+
or several. It then gets HTTP 403 `authorization_required` in every other
|
|
11
|
+
project, including a project it has created. When that happens, stop creating
|
|
12
|
+
projects: `mammoth auth status --check` lists them in `token_projects`; pass one
|
|
13
|
+
as `--project ID`, or ask for a token created without a project.
|
|
14
14
|
|
|
15
15
|
## Browser sign-in
|
|
16
16
|
|
|
17
17
|
`mammoth auth login --method oauth` signs the operator in through the browser (PKCE, loopback
|
|
18
18
|
`127.0.0.1`). The CLI keeps a 1 h `mm_` token and refreshes it under a file lock. `auth status`
|
|
19
|
-
reports `credential: oauth` and `expires_at
|
|
19
|
+
reports `credential: oauth` and `access_token_expires_at` (`expires_at` is the same value, kept for
|
|
20
|
+
compatibility). That is when the 1 h access token ends, not when the login does: `refreshes_automatically: true`.
|
|
21
|
+
Only a failed refresh needs a new login. `auth status --check` also adds `workspace_name` and, for a
|
|
22
|
+
project-limited token, `token_project_name` (`token_projects` lists every project it is
|
|
23
|
+
limited to; `token_project` is the lowest). A refresh that fails exits 4 with `login_expired`:
|
|
20
24
|
tell the operator to run `mammoth auth login` again. `--no-browser` prints the URL. `--device` is the sign-in for a
|
|
21
25
|
machine with no browser: it prints a short code and a URL for the operator to approve on another
|
|
22
26
|
device, then polls. An agent may run `mammoth auth login --device` (and only that): it prints the
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# What is proven on release
|
|
2
2
|
|
|
3
3
|
Generated from `docs/release-capability-matrix.json`; do not edit by hand.
|
|
4
|
-
The CLI publishes
|
|
4
|
+
The CLI publishes 781 commands. 516 of them bind one of the 545 API operations in the matrix; the remainder are local commands (`schema`, `auth`, `doctor`, `log`, ...) or typed variants that share an operation (`view transform *` commands submit through `view.task.add`, except `rename-columns` and `sort`, which set view display properties through `view.update`). 262 bound commands ran once successfully on release, 1 are not supported there, and the rest are untried. Untried is not broken: discover the contract with `mammoth schema get COMMAND_ID`, run it, and treat the structured error envelope as the answer. Use an untried command normally: confirm a write with the user first, check its result with a read afterwards, and never refuse a command only because it is untried.
|
|
5
5
|
|
|
6
6
|
Status meanings:
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Published CLI command catalog
|
|
2
2
|
|
|
3
|
-
This generated catalog is a lookup table for every command in the published CLI manifest, currently
|
|
3
|
+
This generated catalog is a lookup table for every command in the published CLI manifest, currently 781; each entry carries its release status line. It is a command-contract index, not an assertion that every backend/OpenAPI operation has a CLI binding. For an exact local CLI contract, run `mammoth schema get COMMAND_ID`; `mammoth capability list` is an API-binding inventory and can omit typed/local CLI routes. For focused workflows, read the [recipes index](recipes/index.md). Sensitive structured input must come from a private file or pipe; never put secrets in literal argv.
|
|
4
4
|
|
|
5
5
|
Load only the applicable domain file:
|
|
6
6
|
|
|
@@ -15,9 +15,10 @@ Load only the applicable domain file:
|
|
|
15
15
|
- [billing](commands/billing.md) — 25 published commands
|
|
16
16
|
- [browse](commands/browse.md) — 9 published commands
|
|
17
17
|
- [calc](commands/calc.md) — 1 published commands
|
|
18
|
+
- [capabilities](commands/capabilities.md) — 1 published commands
|
|
18
19
|
- [capability](commands/capability.md) — 3 published commands
|
|
19
20
|
- [client-app](commands/client-app.md) — 5 published commands
|
|
20
|
-
- [collection](commands/collection.md) —
|
|
21
|
+
- [collection](commands/collection.md) — 21 published commands
|
|
21
22
|
- [completion](commands/completion.md) — 2 published commands
|
|
22
23
|
- [config](commands/config.md) — 4 published commands
|
|
23
24
|
- [connector](commands/connector.md) — 23 published commands
|
|
@@ -25,13 +26,16 @@ Load only the applicable domain file:
|
|
|
25
26
|
- [dashboard-qa](commands/dashboard-qa.md) — 14 published commands
|
|
26
27
|
- [dashboard-template](commands/dashboard-template.md) — 12 published commands
|
|
27
28
|
- [dashboard-style](commands/dashboard-style.md) — 10 published commands
|
|
28
|
-
- [dashboard](commands/dashboard.md) —
|
|
29
|
+
- [dashboard-embed](commands/dashboard-embed.md) — 9 published commands
|
|
30
|
+
- [dashboard-published](commands/dashboard-published.md) — 8 published commands
|
|
31
|
+
- [dashboard](commands/dashboard.md) — 104 published commands
|
|
29
32
|
- [data-app](commands/data-app.md) — 12 published commands
|
|
30
33
|
- [dataset](commands/dataset.md) — 27 published commands
|
|
31
34
|
- [doctor](commands/doctor.md) — 1 published commands
|
|
32
35
|
- [external-key](commands/external-key.md) — 4 published commands
|
|
33
36
|
- [file](commands/file.md) — 11 published commands
|
|
34
37
|
- [folder](commands/folder.md) — 10 published commands
|
|
38
|
+
- [how](commands/how.md) — 1 published commands
|
|
35
39
|
- [job](commands/job.md) — 4 published commands
|
|
36
40
|
- [link](commands/link.md) — 1 published commands
|
|
37
41
|
- [log](commands/log.md) — 2 published commands
|
|
@@ -52,7 +56,7 @@ Load only the applicable domain file:
|
|
|
52
56
|
- [user](commands/user.md) — 8 published commands
|
|
53
57
|
- [version](commands/version.md) — 1 published commands
|
|
54
58
|
- [view-transform](commands/view-transform.md) — 35 published commands
|
|
55
|
-
- [view](commands/view.md) —
|
|
59
|
+
- [view](commands/view.md) — 106 published commands
|
|
56
60
|
- [webhook](commands/webhook.md) — 7 published commands
|
|
57
|
-
- [workflow](commands/workflow.md) —
|
|
58
|
-
- [workspace](commands/workspace.md) —
|
|
61
|
+
- [workflow](commands/workflow.md) — 23 published commands
|
|
62
|
+
- [workspace](commands/workspace.md) — 33 published commands
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# `capabilities` commands
|
|
2
|
+
|
|
3
|
+
Every command returns the standard JSON envelope. On nonzero exit, read the error envelope and its `recovery_commands`; do not guess request fields. "Status on release" is joined from `docs/release-capability-matrix.json`: *ran once* means one bounded live run succeeded on the named CLI release, *untried* means nobody has run it (use it normally: confirm writes with the user, check the result afterwards), *not supported* means the backend refuses it. When this file disagrees with [capabilities](../capabilities.md) or a recipe, they win. Envelope shapes: [machine output](../machine-output.md).
|
|
4
|
+
|
|
5
|
+
### `capabilities`
|
|
6
|
+
|
|
7
|
+
Run: `mammoth capabilities`. Exact input fields: `mammoth schema get capabilities`.
|
|
8
|
+
|
|
9
|
+
Example: `mammoth capabilities`. Placeholders are illustrative; resolve IDs and input from observed reads.
|
|
10
|
+
|
|
11
|
+
Result: `CapabilitiesResult`; mutation `read`, confirmation `none`, wait policy `not_async`.
|
|
12
|
+
|
|
13
|
+
Status on release: untried; no live run recorded.
|
|
@@ -62,6 +62,56 @@ Result: `CollectionDeleteResult`; mutation `destructive`, confirmation `prompt_o
|
|
|
62
62
|
|
|
63
63
|
Status on release: untried; no live run recorded.
|
|
64
64
|
|
|
65
|
+
### `collection.email-updates.get`
|
|
66
|
+
|
|
67
|
+
Run: `mammoth collection email-updates get`. Exact input fields: `mammoth schema get collection.email-updates.get`.
|
|
68
|
+
|
|
69
|
+
Example: `mammoth collection email-updates get 123`. Placeholders are illustrative; resolve IDs and input from observed reads.
|
|
70
|
+
|
|
71
|
+
Result: `CollectionEmailUpdatesGetResult`; mutation `read`, confirmation `none`, wait policy `not_async`.
|
|
72
|
+
|
|
73
|
+
Status on release: untried; no live run recorded.
|
|
74
|
+
|
|
75
|
+
### `collection.email-updates.me.get`
|
|
76
|
+
|
|
77
|
+
Run: `mammoth collection email-updates me get`. Exact input fields: `mammoth schema get collection.email-updates.me.get`.
|
|
78
|
+
|
|
79
|
+
Example: `mammoth collection email-updates me get 123`. Placeholders are illustrative; resolve IDs and input from observed reads.
|
|
80
|
+
|
|
81
|
+
Result: `CollectionEmailUpdatesMeGetResult`; mutation `read`, confirmation `none`, wait policy `not_async`.
|
|
82
|
+
|
|
83
|
+
Status on release: untried; no live run recorded.
|
|
84
|
+
|
|
85
|
+
### `collection.email-updates.me.set`
|
|
86
|
+
|
|
87
|
+
Run: `mammoth collection email-updates me set`. Exact input fields: `mammoth schema get collection.email-updates.me.set`.
|
|
88
|
+
|
|
89
|
+
Example: `mammoth collection email-updates me set 123 --input '{"subscribed": true}'`. Placeholders are illustrative; resolve IDs and input from observed reads.
|
|
90
|
+
|
|
91
|
+
Result: `CollectionEmailUpdatesMeSetResult`; mutation `benign_mutation`, confirmation `none`, wait policy `not_async`.
|
|
92
|
+
|
|
93
|
+
Status on release: untried; no live run recorded.
|
|
94
|
+
|
|
95
|
+
### `collection.email-updates.set`
|
|
96
|
+
|
|
97
|
+
Run: `mammoth collection email-updates set`. Exact input fields: `mammoth schema get collection.email-updates.set`.
|
|
98
|
+
|
|
99
|
+
Example: `mammoth collection email-updates set 123 --input '{"enabled": true, "timezone": "UTC"}' --yes`. Illustrative only: append `--yes` after observing an owned target.
|
|
100
|
+
|
|
101
|
+
Result: `CollectionEmailUpdatesSetResult`; mutation `external_effect`, confirmation `yes_always`, wait policy `not_async`.
|
|
102
|
+
|
|
103
|
+
Status on release: untried; no live run recorded.
|
|
104
|
+
|
|
105
|
+
### `collection.email-updates.test`
|
|
106
|
+
|
|
107
|
+
Run: `mammoth collection email-updates test`. Exact input fields: `mammoth schema get collection.email-updates.test`.
|
|
108
|
+
|
|
109
|
+
Example: `mammoth collection email-updates test 123 --yes`. Illustrative only: append `--yes` after observing an owned target.
|
|
110
|
+
|
|
111
|
+
Result: `CollectionEmailUpdatesTestResult`; mutation `external_effect`, confirmation `yes_always`, wait policy `not_async`.
|
|
112
|
+
|
|
113
|
+
Status on release: untried; no live run recorded.
|
|
114
|
+
|
|
65
115
|
### `collection.files.upload`
|
|
66
116
|
|
|
67
117
|
Run: `mammoth collection files upload`. Exact input fields: `mammoth schema get collection.files.upload`.
|