{
  "name": "search_panes",
  "wireName": "search_panes",
  "source": {
    "repo": "libtmux/libtmux-dotnet",
    "revision": "320dc64f4b8b7815842471327a5e6b84a1499bf8",
    "extractedRevision": "b243b2cf82de4e98e2172aba4f54a52b9c363dc4",
    "file": "src/LibTmux.Mcp/Policy/CapabilityModel.cs",
    "line": 568
  },
  "description": "Read pane output; accepts no client-supplied executable input. Returned content may be sensitive or untrusted. Find which panes are showing text matching a regular expression. This is the tool for 'which pane has the error', 'where is the build running', or any question about what a pane CONTAINS — the list tools only see names and sizes.",
  "schemaStatus": "runtime",
  "inputSchema": {
    "additionalProperties": false,
    "properties": {
      "ignoreCase": {
        "default": true,
        "description": "Ignore case.",
        "type": "boolean"
      },
      "includeHistory": {
        "default": false,
        "description": "Search scrollback too.",
        "type": "boolean"
      },
      "maxMatchesPerPane": {
        "default": 20,
        "description": "Maximum matches per pane.",
        "maximum": 2147483647,
        "minimum": -2147483648,
        "type": "integer"
      },
      "pattern": {
        "description": "A linear-time regular expression, at most 999 UTF-8 bytes. .NET syntax without lookarounds, backreferences or atomic groups.",
        "type": "string"
      },
      "session": {
        "default": null,
        "description": "A session id or name. Omit for every session.",
        "type": [
          "string",
          "null"
        ]
      }
    },
    "required": [
      "pattern"
    ],
    "type": "object"
  },
  "outputSchema": {
    "properties": {
      "panes": {
        "items": {
          "properties": {
            "matches": {
              "items": {
                "properties": {
                  "row": {
                    "type": "integer"
                  },
                  "text": {
                    "type": "string"
                  }
                },
                "required": [
                  "row",
                  "text"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "paneId": {
              "type": "string"
            },
            "sessionId": {
              "type": "string"
            },
            "windowId": {
              "type": "string"
            }
          },
          "required": [
            "paneId",
            "windowId",
            "sessionId",
            "matches"
          ],
          "type": "object"
        },
        "type": "array"
      },
      "panesSearched": {
        "type": "integer"
      },
      "pattern": {
        "type": "string"
      },
      "truncated": {
        "type": "boolean"
      }
    },
    "required": [
      "pattern",
      "panesSearched",
      "panes",
      "truncated"
    ],
    "type": "object"
  },
  "annotations": {
    "destructiveHint": true,
    "idempotentHint": false,
    "openWorldHint": true,
    "readOnlyHint": false,
    "title": "Search panes"
  },
  "meta": {
    "com.git-pull.libtmux-mcp/capability": {
      "amplifiesFutureInput": false,
      "inputLiteralization": {},
      "mayExposeSecrets": true,
      "mayReturnUntrustedContent": true,
      "name": "search_panes",
      "nestedAuthority": [],
      "outputClasses": [
        "terminal-content",
        "tmux-metadata"
      ],
      "processReach": "none",
      "tmuxEffects": [
        "observe"
      ],
      "toolset": "inspect"
    }
  }
}
