{
  "slug": "iso9660-toc-list",
  "name": "gizza-ai/iso9660-toc-list",
  "version": "0.1.0",
  "title": "ISO 9660 TOC List — View Disc Image Contents — gizza.ai",
  "description": "List an ISO 9660 disc image's volume label, directory tree and file sizes from base64 data without extracting files. Browser-local and read-only.",
  "tags": [
    "iso9660",
    "iso",
    "disc image",
    "directory tree",
    "file listing",
    "volume label",
    "joliet",
    "cd image",
    "toc"
  ],
  "category": "documents",
  "urls": {
    "page": "https://gizza.ai/tools/iso9660-toc-list/",
    "markdown": "https://gizza.ai/tools/iso9660-toc-list/index.md",
    "descriptor": "https://gizza.ai/tools/iso9660-toc-list/tool.json",
    "deep_link_example": "https://gizza.ai/tools/iso9660-toc-list/?data=Paste%20base64%20output%20from%3A%20base64%20disc.iso&format=tree"
  },
  "cli": "gizza tool iso9660-toc-list \"Paste base64 output from: base64 disc.iso\"",
  "tool": {
    "description": "List the contents of an ISO 9660 (CD/DVD) disc image supplied as base64, without extracting any files. Returns the directory tree with per-file sizes and the volume label. Reads only the volume descriptors and directory records — never the file data — so it is fast and safe on large images. Prefers Joliet long filenames when the image carries them, otherwise uses the standard ISO 9660 names (with the ';1' version suffix stripped). Choose format=tree for an indented tree, list for flat paths, or summary for label/standard/block-size/counts. Runs locally.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "data": {
          "description": "The .iso disc image encoded as base64 (standard or URL-safe alphabet, whitespace tolerated). Only the volume descriptors and directory extents are read — file contents are never touched. The decoded bytes must carry the 'CD001' identifier at sector 16 (offset 0x8001). Example: run `base64 disc.iso` and paste the result.",
          "type": "string"
        },
        "format": {
          "default": "tree",
          "description": "Output shape: tree (default) — an indented directory tree with per-file sizes and the volume label; list — one full path per line (directories end with '/', files show their size); summary — volume label, standard (ISO 9660 / Joliet), block size, image size and file/directory counts.",
          "enum": [
            "tree",
            "list",
            "summary"
          ],
          "type": "string"
        }
      },
      "required": [
        "data"
      ],
      "type": "object"
    }
  }
}