{
  "name": "libtmux for Haskell",
  "url": "https://libtmux.org/en/haskell/latest/",
  "description": "Guides, examples and API reference for libtmux-haskell.",
  "sourceRepository": "https://github.com/libtmux/libtmux-haskell",
  "agentEntrypoints": {
    "manifest": "/en/haskell/latest/docs.json",
    "llms": "/en/haskell/latest/llms.txt",
    "llmsFull": "/en/haskell/latest/llms-full.txt",
    "inventory": "/en/haskell/latest/objects.inv",
    "inventoryFull": "/en/objects-full.inv",
    "targets": "/en/haskell/latest/targets.json"
  },
  "ports": [
    {
      "slug": "haskell",
      "name": "Haskell",
      "language": "Haskell",
      "referenceKind": "model",
      "package": "libtmux-haskell",
      "reference": "/en/haskell/latest/reference/",
      "products": [
        {
          "slug": "workspace",
          "name": "Workspace Manager",
          "availability": "unpublished",
          "inDevelopment": false,
          "cli": null,
          "cliAvailability": null,
          "url": "/en/haskell/latest/workspace/",
          "reference": null
        }
      ],
      "extracted": {
        "symbols": 38,
        "extractor": "@libtmux/api-model@0.0.1 (Haddock public interface export v1)",
        "inventory": "/en/haskell/latest/objects.inv"
      },
      "documentation": [
        {
          "id": "core",
          "name": "Library",
          "kind": "core",
          "availability": "available",
          "url": "/en/haskell/latest/core/"
        },
        {
          "id": "workspace",
          "name": "Workspace Manager",
          "kind": "unavailable",
          "availability": "unpublished",
          "url": "/en/haskell/latest/workspace/"
        }
      ]
    }
  ],
  "pages": [
    {
      "title": "Guides",
      "description": "Guides for libtmux-haskell.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/index.md",
      "headings": []
    },
    {
      "title": "API documentation",
      "description": "API documentation: libtmux-haskell documentation.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/api-documentation/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/api-documentation/index.md",
      "headings": []
    },
    {
      "title": "Getting started",
      "description": "Getting started: libtmux-haskell documentation.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/getting-started/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/getting-started/index.md",
      "headings": []
    },
    {
      "title": "Installation",
      "description": "Installation: libtmux-haskell documentation.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/installation/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/installation/index.md",
      "headings": [
        {
          "id": "native-backend-host-requirements",
          "level": 2,
          "text": "Native backend host requirements"
        }
      ]
    },
    {
      "title": "Implementation status",
      "description": "Implementation status: libtmux-haskell documentation.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/status/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/status/index.md",
      "headings": [
        {
          "id": "package-policy",
          "level": 2,
          "text": "Package policy"
        },
        {
          "id": "compatibility-evidence",
          "level": 2,
          "text": "Compatibility evidence"
        }
      ]
    },
    {
      "title": "Typed values",
      "description": "Typed values: libtmux-haskell documentation.",
      "section": "Guides",
      "url": "https://libtmux.org/en/haskell/latest/guides/typed-values/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/guides/typed-values/index.md",
      "headings": [
        {
          "id": "ids-and-indices-describe-different-things",
          "level": 2,
          "text": "IDs and indices describe different things"
        },
        {
          "id": "validate-values-where-they-enter-the-program",
          "level": 2,
          "text": "Validate values where they enter the program"
        },
        {
          "id": "release-admission-has-a-limited-meaning",
          "level": 2,
          "text": "Release admission has a limited meaning"
        }
      ]
    },
    {
      "title": "AI policy",
      "description": "Use the libtmux packages with AI tools. When contributing, check what you submit and wait for a maintainer's invitation before preparing a pull request.",
      "section": "Documentation",
      "url": "https://libtmux.org/en/haskell/latest/meta/ai-policy/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/meta/ai-policy.md",
      "headings": [
        {
          "id": "1-for-users-about-these-packages",
          "level": 2,
          "text": "1. For users: About these packages"
        },
        {
          "id": "how-the-ports-are-made",
          "level": 3,
          "text": "How the ports are made"
        },
        {
          "id": "stability",
          "level": 3,
          "text": "Stability"
        },
        {
          "id": "2-for-contributors-how-to-report-issues-ideas-suggestions-and-security-issues",
          "level": 2,
          "text": "2. For contributors: How to report issues, ideas, suggestions, and security issues"
        },
        {
          "id": "bugs",
          "level": 3,
          "text": "Bugs"
        },
        {
          "id": "ideas-and-suggestions",
          "level": 3,
          "text": "Ideas and suggestions"
        },
        {
          "id": "security-issues",
          "level": 3,
          "text": "Security issues"
        },
        {
          "id": "writing-your-report",
          "level": 3,
          "text": "Writing your report"
        },
        {
          "id": "using-ai-tools",
          "level": 3,
          "text": "Using AI tools"
        },
        {
          "id": "pull-requests",
          "level": 3,
          "text": "Pull requests"
        }
      ]
    },
    {
      "title": "Link to libtmux from Sphinx",
      "description": "Use Intersphinx inventories to reference libtmux APIs and documentation.",
      "section": "Linking and consuming our docs",
      "url": "https://libtmux.org/en/haskell/latest/meta/intersphinx/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/meta/intersphinx.md",
      "headings": [
        {
          "id": "configure-intersphinx",
          "level": 2,
          "text": "Configure Intersphinx"
        },
        {
          "id": "choose-a-reference",
          "level": 2,
          "text": "Choose a reference"
        },
        {
          "id": "stable-labels",
          "level": 2,
          "text": "Stable labels"
        },
        {
          "id": "preserve-published-links",
          "level": 3,
          "text": "Preserve published links"
        }
      ]
    },
    {
      "title": "Intersphinx examples",
      "description": "Compare Sphinx and MyST references to APIs, tmux C declarations, hooks, format variables, CLI commands and schema fields.",
      "section": "Linking and consuming our docs",
      "url": "https://libtmux.org/en/haskell/latest/meta/intersphinx/examples/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/meta/intersphinx/examples.md",
      "headings": [
        {
          "id": "configure-the-inventories",
          "level": 2,
          "text": "Configure the inventories"
        },
        {
          "id": "native-python-roles",
          "level": 2,
          "text": "Native Python roles"
        },
        {
          "id": "portable-labels",
          "level": 2,
          "text": "Portable labels"
        },
        {
          "id": "myst-roles-and-inventory-urls",
          "level": 2,
          "text": "MyST roles and inventory URLs"
        },
        {
          "id": "tmux-c-declarations",
          "level": 2,
          "text": "tmux C declarations"
        },
        {
          "id": "tmux-hooks",
          "level": 2,
          "text": "tmux hooks"
        },
        {
          "id": "tmux-formats",
          "level": 2,
          "text": "tmux formats"
        },
        {
          "id": "tmux-cli-manual",
          "level": 2,
          "text": "tmux CLI manual"
        },
        {
          "id": "command-options-environment-variables-and-terms",
          "level": 2,
          "text": "Command options, environment variables, and terms"
        },
        {
          "id": "mcp-tools-and-schema-fields",
          "level": 2,
          "text": "MCP tools and schema fields"
        },
        {
          "id": "shared-documentation-and-headings",
          "level": 2,
          "text": "Shared documentation and headings"
        },
        {
          "id": "local-files-and-fallback-locations",
          "level": 2,
          "text": "Local files and fallback locations"
        }
      ]
    },
    {
      "title": "Linking and consuming our docs",
      "description": "Find documentation exports for search engines, bots, LLMs and other documentation sites.",
      "section": "Linking and consuming our docs",
      "url": "https://libtmux.org/en/haskell/latest/meta/linking/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/meta/linking.md",
      "headings": [
        {
          "id": "choose-an-export",
          "level": 2,
          "text": "Choose an export"
        },
        {
          "id": "link-from-sphinx",
          "level": 2,
          "text": "Link from Sphinx"
        },
        {
          "id": "discover-and-index-pages",
          "level": 2,
          "text": "Discover and index pages"
        }
      ]
    },
    {
      "title": "Third-party notices",
      "description": "Thanks to tmux's creator and contributors, with licences and attribution for the software behind libtmux.org.",
      "section": "Documentation",
      "url": "https://libtmux.org/en/haskell/latest/meta/third-party-notices/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/meta/third-party-notices.md",
      "headings": [
        {
          "id": "tmux",
          "level": 2,
          "text": "tmux"
        },
        {
          "id": "tmux-artwork",
          "level": 3,
          "text": "tmux artwork"
        },
        {
          "id": "programming-language-artwork",
          "level": 2,
          "text": "Programming-language artwork"
        },
        {
          "id": "terminal-artwork",
          "level": 2,
          "text": "Terminal artwork"
        },
        {
          "id": "documentation-toolchain",
          "level": 2,
          "text": "Documentation toolchain"
        },
        {
          "id": "a-note-on-doxygen",
          "level": 3,
          "text": "A note on Doxygen"
        },
        {
          "id": "reference-hosting",
          "level": 2,
          "text": "Reference hosting"
        },
        {
          "id": "libtmux-itself",
          "level": 2,
          "text": "libtmux itself"
        }
      ]
    },
    {
      "title": "Typed tmux values for Haskell",
      "description": "Typed tmux values for Haskell. Parse tmux entity IDs, validate dimensions and indices, and check stable tmux releases with pure Haskell functions",
      "section": "Documentation",
      "url": "https://libtmux.org/en/haskell/latest/core/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/core/index.md",
      "headings": []
    },
    {
      "title": "Haskell workspace manager is not published",
      "description": "The Haskell workspace library and command-line tool are planned. No workspace package or loader command is available.",
      "section": "Documentation",
      "url": "https://libtmux.org/en/haskell/latest/workspace/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/workspace/index.md",
      "headings": []
    },
    {
      "title": "API glossary",
      "description": "Kinds, modifiers and package labels in the Haskell API reference.",
      "section": "API reference",
      "url": "https://libtmux.org/en/haskell/latest/reference/glossary/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/reference/glossary.md",
      "jsonUrl": "https://libtmux.org/en/haskell/latest/reference/glossary.json",
      "headings": [
        {
          "id": "symbol-kinds",
          "level": 2,
          "text": "Symbol kinds"
        },
        {
          "id": "module",
          "level": 3,
          "text": "module"
        },
        {
          "id": "data-type",
          "level": 3,
          "text": "data-type"
        },
        {
          "id": "data-constructor",
          "level": 3,
          "text": "data-constructor"
        },
        {
          "id": "record-field",
          "level": 3,
          "text": "record-field"
        },
        {
          "id": "function",
          "level": 3,
          "text": "function"
        },
        {
          "id": "modifiers",
          "level": 2,
          "text": "Modifiers"
        },
        {
          "id": "opaque",
          "level": 3,
          "text": "opaque"
        },
        {
          "id": "package-context",
          "level": 2,
          "text": "Package context"
        },
        {
          "id": "package",
          "level": 3,
          "text": "package"
        }
      ]
    },
    {
      "title": "API reference",
      "description": "31 declarations in the Haskell reference index. The symbol index also includes their members.",
      "section": "API reference",
      "url": "https://libtmux.org/en/haskell/latest/reference/",
      "markdownUrl": "https://libtmux.org/en/haskell/latest/reference/index.md",
      "symbolIndexUrl": "https://libtmux.org/en/haskell/latest/reference/tree.json",
      "headings": [
        {
          "id": "section-exports:LibTmux.Id",
          "level": 2,
          "text": "LibTmux.Id"
        },
        {
          "id": "section-exports:LibTmux.Id:0",
          "level": 2,
          "text": "LibTmux.Id — Entity identities"
        },
        {
          "id": "section-exports:LibTmux.Id:1",
          "level": 2,
          "text": "LibTmux.Id — Parse external values"
        },
        {
          "id": "section-exports:LibTmux.Id:2",
          "level": 2,
          "text": "LibTmux.Id — Render target text"
        },
        {
          "id": "section-exports:LibTmux.Id:3",
          "level": 2,
          "text": "LibTmux.Id — Read numeric values"
        },
        {
          "id": "section-exports:LibTmux.Value",
          "level": 2,
          "text": "LibTmux.Value"
        },
        {
          "id": "section-exports:LibTmux.Value:0",
          "level": 2,
          "text": "LibTmux.Value — Checked types"
        },
        {
          "id": "section-exports:LibTmux.Value:1",
          "level": 2,
          "text": "LibTmux.Value — Validate input"
        },
        {
          "id": "section-exports:LibTmux.Value:2",
          "level": 2,
          "text": "LibTmux.Value — Read numeric values"
        },
        {
          "id": "section-exports:LibTmux.Version",
          "level": 2,
          "text": "LibTmux.Version"
        },
        {
          "id": "section-exports:LibTmux.Version:0",
          "level": 2,
          "text": "LibTmux.Version — Release identity and errors"
        },
        {
          "id": "section-exports:LibTmux.Version:1",
          "level": 2,
          "text": "LibTmux.Version — Parse and render"
        },
        {
          "id": "section-exports:LibTmux.Version:2",
          "level": 2,
          "text": "LibTmux.Version — Admit a release"
        }
      ],
      "symbols": [
        {
          "id": "LibTmux.Id",
          "name": "LibTmux.Id",
          "kind": "module",
          "qualifiedName": "LibTmux.Id",
          "namespace": "",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id/"
        },
        {
          "id": "LibTmux.Id#t:SessionId",
          "name": "SessionId",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Id.SessionId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-t-sessionid/"
        },
        {
          "id": "LibTmux.Id#t:WindowId",
          "name": "WindowId",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Id.WindowId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-t-windowid/"
        },
        {
          "id": "LibTmux.Id#t:PaneId",
          "name": "PaneId",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Id.PaneId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-t-paneid/"
        },
        {
          "id": "LibTmux.Id#t:IdError",
          "name": "IdError",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Id.IdError",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-t-iderror/"
        },
        {
          "id": "LibTmux.Id#v:parseSessionId",
          "name": "parseSessionId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.parseSessionId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-parsesessionid/"
        },
        {
          "id": "LibTmux.Id#v:parseWindowId",
          "name": "parseWindowId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.parseWindowId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-parsewindowid/"
        },
        {
          "id": "LibTmux.Id#v:parsePaneId",
          "name": "parsePaneId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.parsePaneId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-parsepaneid/"
        },
        {
          "id": "LibTmux.Id#v:renderSessionId",
          "name": "renderSessionId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.renderSessionId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-rendersessionid/"
        },
        {
          "id": "LibTmux.Id#v:renderWindowId",
          "name": "renderWindowId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.renderWindowId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-renderwindowid/"
        },
        {
          "id": "LibTmux.Id#v:renderPaneId",
          "name": "renderPaneId",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.renderPaneId",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-renderpaneid/"
        },
        {
          "id": "LibTmux.Id#v:sessionIdValue",
          "name": "sessionIdValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.sessionIdValue",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-sessionidvalue/"
        },
        {
          "id": "LibTmux.Id#v:windowIdValue",
          "name": "windowIdValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.windowIdValue",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-windowidvalue/"
        },
        {
          "id": "LibTmux.Id#v:paneIdValue",
          "name": "paneIdValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Id.paneIdValue",
          "namespace": "LibTmux.Id",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-id-v-paneidvalue/"
        },
        {
          "id": "LibTmux.Value",
          "name": "LibTmux.Value",
          "kind": "module",
          "qualifiedName": "LibTmux.Value",
          "namespace": "",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value/"
        },
        {
          "id": "LibTmux.Value#t:Dimension",
          "name": "Dimension",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Value.Dimension",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-t-dimension/"
        },
        {
          "id": "LibTmux.Value#t:WindowIndex",
          "name": "WindowIndex",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Value.WindowIndex",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-t-windowindex/"
        },
        {
          "id": "LibTmux.Value#t:PaneIndex",
          "name": "PaneIndex",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Value.PaneIndex",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-t-paneindex/"
        },
        {
          "id": "LibTmux.Value#t:ValueError",
          "name": "ValueError",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Value.ValueError",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-t-valueerror/"
        },
        {
          "id": "LibTmux.Value#v:mkDimension",
          "name": "mkDimension",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.mkDimension",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-mkdimension/"
        },
        {
          "id": "LibTmux.Value#v:mkWindowIndex",
          "name": "mkWindowIndex",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.mkWindowIndex",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-mkwindowindex/"
        },
        {
          "id": "LibTmux.Value#v:mkPaneIndex",
          "name": "mkPaneIndex",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.mkPaneIndex",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-mkpaneindex/"
        },
        {
          "id": "LibTmux.Value#v:dimensionValue",
          "name": "dimensionValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.dimensionValue",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-dimensionvalue/"
        },
        {
          "id": "LibTmux.Value#v:windowIndexValue",
          "name": "windowIndexValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.windowIndexValue",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-windowindexvalue/"
        },
        {
          "id": "LibTmux.Value#v:paneIndexValue",
          "name": "paneIndexValue",
          "kind": "function",
          "qualifiedName": "LibTmux.Value.paneIndexValue",
          "namespace": "LibTmux.Value",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-value-v-paneindexvalue/"
        },
        {
          "id": "LibTmux.Version",
          "name": "LibTmux.Version",
          "kind": "module",
          "qualifiedName": "LibTmux.Version",
          "namespace": "",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version/"
        },
        {
          "id": "LibTmux.Version#t:TmuxVersion",
          "name": "TmuxVersion",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Version.TmuxVersion",
          "namespace": "LibTmux.Version",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version-t-tmuxversion/"
        },
        {
          "id": "LibTmux.Version#t:VersionError",
          "name": "VersionError",
          "kind": "typealias",
          "qualifiedName": "LibTmux.Version.VersionError",
          "namespace": "LibTmux.Version",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version-t-versionerror/"
        },
        {
          "id": "LibTmux.Version#v:parseVersion",
          "name": "parseVersion",
          "kind": "function",
          "qualifiedName": "LibTmux.Version.parseVersion",
          "namespace": "LibTmux.Version",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version-v-parseversion/"
        },
        {
          "id": "LibTmux.Version#v:renderVersion",
          "name": "renderVersion",
          "kind": "function",
          "qualifiedName": "LibTmux.Version.renderVersion",
          "namespace": "LibTmux.Version",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version-v-renderversion/"
        },
        {
          "id": "LibTmux.Version#v:requireSupported",
          "name": "requireSupported",
          "kind": "function",
          "qualifiedName": "LibTmux.Version.requireSupported",
          "namespace": "LibTmux.Version",
          "url": "https://libtmux.org/en/haskell/latest/reference/libtmux-version-v-requiresupported/"
        }
      ]
    }
  ]
}
