Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

status

Summarise the current environment in one shot — designed to be fast (no package listing, no directory size walk). Use scoop info for the heavier per-env view.

Usage

scoop status [--json]

States

status resolves to one of four states:

StateTrigger
active$SCOOP_ACTIVE is set (shell-activated)
configuredA .scoop-version file or ~/.scoop/version selects an env
systemThe configured env is the literal name system
noneNothing resolved

$SCOOP_ACTIVE wins over version files because it reflects what the shell actually activated.

Human Output

For a real env (active / configured):

Name:     myenv
Source:   scoop_active_env
Python:   3.12.1
Path:     ~/.scoop/virtualenvs/myenv
Created:  2026-05-29 12:34:56
Last used:3 hours ago

The Last used: row reads never for envs that have metadata but have not yet been activated (fresh scoop create, or envs whose metadata predates the field). It’s omitted entirely when there’s no metadata at all — that way “we don’t know” doesn’t get conflated with “definitely never used”.

For system: a single line indicating system Python is in use.

For none: a hint pointing to scoop use <name>.

JSON Output

{
  "status": "success",
  "command": "status",
  "data": {
    "state": "active",
    "name": "myenv",
    "source": "scoop_active_env",
    "path": "/Users/me/.scoop/virtualenvs/myenv",
    "python": "3.12.1",
    "created_at": "2026-05-29T12:34:56+00:00",
    "last_used": "2026-06-02T09:00:00+00:00"
  }
}

Fields are omitted (skip_serializing_if) when not applicable to the state. last_used is RFC 3339 and absent in two distinct cases:

  • No metadata at all (legacy env / metadata file removed) — the timestamp is unknown. Human output omits the Last used: row entirely.
  • Metadata present but never activated since the field landed — the timestamp is known to be never. Human output renders Last used: never.

JSON consumers therefore should NOT collapse “missing” to “never”; combine the absence of last_used with the presence of created_at to tell the two cases apart.

Examples

scoop status                       # human-readable
scoop status --json                # machine-readable