---
name: heimdall
description: Use the Heimdallm inference marketplace at staging.impossiblecarrot.cc to discover models, run inference and media jobs, inspect spending, and operate provider listings through its CLI and documented browser workflows.
metadata:
  version: '1.1.0'
  cli-package: '@staging-heimdall/cli'
  cli-version: '>=0.0.5 <0.1.0'
---

# Heimdallm

Heimdallm at https://staging.impossiblecarrot.cc is a prepaid inference marketplace.
Independent providers publish prices and capabilities. Model availability, prices,
and measured performance come from the live catalogue, not this skill.

## Connect

Requires Node.js 22.12 or later, npm, and network access. Use an existing installation
within the supported version range, or install the CLI:

```sh
npm install -g '@staging-heimdall/cli@>=0.0.5 <0.1.0'
heimdall-staging --version
export HEIMDALL_STAGING_BASE_URL=https://api-staging.impossiblecarrot.cc/api/v1
export HEIMDALL_STAGING_WEB_URL=https://staging.impossiblecarrot.cc
heimdall-staging models list --json
```

These addresses identify the staging service. Do not substitute another product named
Heimdallm or the separate `heimdall` executable. Staging credentials, settings, and
history use the `HEIMDALL_STAGING_` prefix. To inspect available updates, run
`heimdall-staging version check --json`; updates are explicit.

Public catalogue reads need no account. For account operations, reuse the configured
`HEIMDALL_STAGING_API_KEY` or saved CLI login. `heimdall-staging key --json` checks
access against the API. `auth status --json` reports the saved profile only; it does
not validate a key or report an environment-only credential.

If access is missing:

1. With authorized access to a Google/GitHub login or browser session, use the normal
   site sign-in and `heimdall-staging login` flow yourself.
2. Otherwise give the human https://staging.impossiblecarrot.cc/login. Explain that
   they should sign in or create an account, then connect the installed CLI through
   its normal login flow. Wait for that access before running authenticated work;
   public discovery can continue.
3. For a browser on another computer, `heimdall-staging login --manual` prints an
   authorization URL and accepts the short-lived code from the approval page. Keep
   its terminal open. Login times out; start it again if necessary. A completed
   website login alone does not connect the CLI.

An existing key can be supplied through the environment or imported with
`heimdall-staging login --with-token < key.txt`. Do not request passwords or
long-lived API keys in chat, print credential values, or read unrelated credential
stores. A missing credential is a prerequisite, not a reason to invent an account.

## Use as tools

A client that speaks the Model Context Protocol can reach the same operations as tools.
Register `heimdall-staging mcp` as a stdio server once the CLI is connected, or connect to
the hosted server at https://api-staging.impossiblecarrot.cc/api/mcp with the API key as
`Authorization: Bearer`. https://staging.impossiblecarrot.cc/docs/mcp lists the tools.

## Choose the workflow

- [Customer workflows](https://staging.heimdallm.com/skills/heimdall/references/customer.md): choose models, fund an account,
  run all inference types, retrieve media, inspect charges, and recover from errors.
- [Provider workflows](https://staging.heimdallm.com/skills/heimdall/references/provider.md): apply, configure sources, validate
  model documents, inspect health, request pulls/probes, and read earnings.

Use dedicated CLI commands first. Read `heimdall-staging COMMAND --help` before
constructing unfamiliar arguments. Use `--json` only when that command supports it;
login is interactive. Parse the full output and check the exit status. Mutating
commands that provide `--yes` need it in noninteractive use; it confirms the command,
it does not expand the user's requested task or spending budget.

Select models by the required input/output modalities, supported controls, price,
and measured availability. Do not treat an absent measurement or unpublished price
as zero. Preserve exact decimal money values. Stay within the task's authorized
spend; do not fund accounts, rotate keys, or run unrelated paid verification merely
to complete setup.

## References and boundaries

- Documentation index: https://staging.impossiblecarrot.cc/llms.txt
- CLI reference: https://staging.impossiblecarrot.cc/docs/cli.md
- API schema: https://staging.impossiblecarrot.cc/api/openapi.json
- Protocol compatibility: https://staging.impossiblecarrot.cc/docs/migration.md
- Errors: https://staging.impossiblecarrot.cc/docs/errors.md

Documentation is Markdown at `.md` URLs or with `Accept: text/markdown`.
Chat, Responses, and Messages have different supported features; consult the chosen
protocol reference. Meshes and reference image/video APIs have their own contracts.
Browser-only operations use the documented site pages, not guessed bearer API routes.
