{
  "name": "snapshot_pane",
  "wireName": "snapshot_pane",
  "source": {
    "repo": "tmux-python/libtmux-mcp",
    "revision": "4daddc0dfca96c43bf521d818bf91564e1434760",
    "extractedRevision": "4daddc0dfca96c43bf521d818bf91564e1434760",
    "file": "src/libtmux_mcp/tools/pane_tools/__init__.py",
    "line": 158
  },
  "description": "Snapshot a tmux pane: visible terminal output, cursor, mode, scroll.\n\nUse for terminal-contents inspection — 'what's in my pane', 'the\ncurrent shell output' — not editor panes or browser viewports.\nReturns everything :func:`~libtmux_mcp.tools.pane_tools.capture_pane`\nand :func:`~libtmux_mcp.tools.pane_tools.get_pane_info` return, plus\ncursor position, copy-mode state, and scroll position — in a single\ncall. Prefer this over separate capture_pane + get_pane_info calls\nwhen you need to reason about cursor location or pane mode.\n\nThe ``content`` field is tail-preserved: when the captured pane\nexceeds ``max_lines``, the oldest lines are dropped and the result\nis reported via ``content_truncated`` / ``content_truncated_lines``\nfields on the returned :class:`~libtmux_mcp.models.PaneSnapshot`.\nPass ``max_lines=None`` to opt out of truncation entirely.",
  "schemaStatus": "runtime",
  "inputSchema": {
    "additionalProperties": false,
    "properties": {
      "max_lines": {
        "anyOf": [
          {
            "type": "integer"
          },
          {
            "type": "null"
          }
        ],
        "default": 500,
        "description": "Maximum number of content lines to return. Defaults to\n``CAPTURE_DEFAULT_MAX_LINES``.\nPass ``None`` to return the full capture untrimmed."
      },
      "pane_id": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Pane ID (e.g. '%1')."
      },
      "session_id": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Session ID (e.g. '$1') for pane resolution."
      },
      "session_name": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Session name for pane resolution."
      },
      "socket_name": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "tmux socket name."
      },
      "window_id": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "default": null,
        "description": "Window ID for pane resolution."
      }
    },
    "type": "object"
  },
  "annotations": {
    "destructiveHint": true,
    "idempotentHint": false,
    "openWorldHint": true,
    "readOnlyHint": false
  },
  "meta": {
    "anthropic/alwaysLoad": true,
    "fastmcp": {
      "tags": [
        "inspect"
      ]
    }
  }
}
