# capture_since

Source: https://libtmux.org/en/csharp/latest/mcp/tools/capture_since/

> Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted. Read only what a pane has printed since the last call. Pass back the cursor each time. Use this to watch a long-running process across turns: the tenth read costs what the first did, where re-capturing the pane would return everything again. Call with no cursor to start watching from now.

MCP is in development

Server behavior and tool contracts may change. Tool availability depends on the server configuration.

Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted. Read only what a pane has printed since the last call. Pass back the cursor each time. Use this to watch a long-running process across turns: the tenth read costs what the first did, where re-capturing the pane would return everything again. Call with no cursor to start watching from now.

[All C# tools](https://libtmux.org/en/csharp/latest/mcp/tools/) · [JSON](https://libtmux.org/en/csharp/latest/mcp/tools/capture_since.json) · [Source](https://github.com/libtmux/libtmux-dotnet/blob/cf34b255c896d19a97e7d7fabea58609c916012d/src/LibTmux.Mcp/Policy/CapabilityModel.cs#L577)

## Arguments

* `cursor` optional · string | null

  The opaque cursor returned by the previous call. Omit to start from what is on screen now.

  Default: `null`.

* `maxLines` optional · integer | null

  Maximum returned lines, newest kept. Omit for the server default, 500 unless LIBTMUX_MCP_MAX_LINES sets another.

  Default: `null`.

* `paneId` optional · string | null

  A pane id. Omit for this server's own pane, or else the one the first session shows.

  Default: `null`.

## Schemas

The schema defines required fields, nested values, defaults, and validation constraints.

Input schema

```json
{
  "additionalProperties": false,
  "properties": {
    "cursor": {
      "default": null,
      "description": "The opaque cursor returned by the previous call. Omit to start from what is on screen now.",
      "type": [
        "string",
        "null"
      ]
    },
    "maxLines": {
      "default": null,
      "description": "Maximum returned lines, newest kept. Omit for the server default, 500 unless LIBTMUX_MCP_MAX_LINES sets another.",
      "maximum": 2147483647,
      "minimum": -2147483648,
      "type": [
        "integer",
        "null"
      ]
    },
    "paneId": {
      "default": null,
      "description": "A pane id. Omit for this server's own pane, or else the one the first session shows.",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "type": "object"
}
```

Output schema

```json
{
  "properties": {
    "anchorLost": {
      "type": "boolean"
    },
    "content": {
      "properties": {
        "droppedBytes": {
          "type": "integer"
        },
        "droppedLines": {
          "type": "integer"
        },
        "lines": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "truncated": {
          "type": "boolean"
        }
      },
      "required": [
        "lines",
        "truncated",
        "droppedLines",
        "droppedBytes"
      ],
      "type": "object"
    },
    "cursor": {
      "type": "string"
    },
    "linesMissed": {
      "type": "boolean"
    },
    "paneId": {
      "type": "string"
    }
  },
  "required": [
    "paneId",
    "content",
    "cursor",
    "linesMissed",
    "anchorLost"
  ],
  "type": "object"
}
```

Tool annotations

```json
{
  "destructiveHint": true,
  "idempotentHint": false,
  "openWorldHint": true,
  "readOnlyHint": false,
  "title": "Capture since"
}
```
