{
  "name": "files",
  "kind": "bundled",
  "title": "Files",
  "description": "Find files by name or contents through the system's search index, browse folders, and act on files: open, reveal, Quick Look, rename, move, compress or trash. Recent files show before you type, and on macOS what you selected in Finder.",
  "version": "0.1.0",
  "icon": {
    "tile": {
      "glyph": "󰉋",
      "bg": "slate"
    }
  },
  "author": "pal",
  "spec": "github:zcag/pal/extensions/files@v0.17.4",
  "source": "https://github.com/zcag/pal-extensions/tree/HEAD/files",
  "commit": "4d2559cf9c04d0133c97d7c897f19a14acb9eace",
  "manifest": {
    "name": "files",
    "title": "Files",
    "description": "Find files by name or contents through the system's search index, browse folders, and act on files: open, reveal, Quick Look, rename, move, compress or trash. Recent files show before you type, and on macOS what you selected in Finder.",
    "version": "0.1.0",
    "icon": {
      "tile": {
        "glyph": "󰉋",
        "bg": "slate"
      }
    },
    "author": "pal",
    "repo": "bundled",
    "license": "MIT",
    "settings": [
      {
        "kind": "list",
        "id": "folders",
        "local": true,
        "label": "Folders",
        "description": "Where to search. `~` is expanded.",
        "placeholder": "~/Documents",
        "default": [
          "~"
        ]
      },
      {
        "kind": "number",
        "id": "limit",
        "label": "Results",
        "description": "At most this many rows per query.",
        "min": 1,
        "max": 500,
        "unit": "rows",
        "default": 50
      },
      {
        "kind": "boolean",
        "id": "show_hidden",
        "label": "Hidden files",
        "text": "List files and folders whose name starts with a dot",
        "default": false
      },
      {
        "kind": "boolean",
        "id": "content_search",
        "label": "Search contents",
        "text": "Also list files whose text contains the query, under the name matches (a query starting with ' or content: searches contents only)",
        "default": true
      },
      {
        "kind": "boolean",
        "id": "ocr_concealed",
        "label": "OCR copies are private",
        "text": "Text read from an image (Copy text) is kept out of clipboard history",
        "default": false
      },
      {
        "kind": "list",
        "id": "exclude",
        "label": "Exclude",
        "description": "Folders skipped below the search folders, by name (`node_modules`) or a short path (`Library/Caches`).",
        "placeholder": "node_modules",
        "default": [
          "node_modules",
          ".cache",
          "Library/Caches",
          "target"
        ]
      },
      {
        "kind": "text",
        "id": "terminal",
        "label": "Terminal",
        "description": "What Open in Terminal opens: `Terminal` (default), `iTerm`, `kitty`, `Alacritty`, `WezTerm`, `Ghostty`, or any app name (`open -na \u003cname\u003e --args -e ...`); on Linux a command name (`kitty`, `foot`, `alacritty`, `wezterm`, `ghostty`, ...), else `$TERMINAL`, else the first of those installed.",
        "placeholder": "Terminal",
        "default": ""
      }
    ],
    "store": {
      "tagline": "Find, browse and act on files, recent ones before you type",
      "category": "productivity",
      "features": [
        "Search by name through Spotlight on macOS or `fd`/`locate` on Linux; by contents with a `'` prefix",
        "Recent files and the Finder selection before you type anything",
        "`enter` on a folder browses it, sorted by name, date or size",
        "Open with, reveal, Quick Look, copy the path or file, open in a terminal",
        "Rename, move, copy, compress or trash, one file or several at once",
        "Copy the text out of an image or PDF (`cmd+shift+t`)"
      ],
      "permissions": [
        "automation"
      ],
      "platforms": [
        "macos",
        "linux"
      ],
      "screenshots": [
        {
          "file": "1-search.png",
          "caption": "Part of a file name typed: the matches under the configured folders, size and date on the right"
        },
        {
          "file": "2-detail.png",
          "caption": "The detail pane on a text file: its folder, name and kind, the size, its first lines"
        },
        {
          "file": "3-open-with.png",
          "caption": "Open with…: the apps registered for the file, the default tagged"
        },
        {
          "file": "4-recent.png",
          "caption": "Recent Files: what was used in the last seven days, newest first"
        },
        {
          "file": "5-browse.png",
          "caption": "Browsing ~/proj: the crumb is the folder, .. leads, the dropdown sorts by name, date or size"
        },
        {
          "file": "6-rename.png",
          "caption": "Rename (cmd+shift+R) is a form over the name, in the same folder; Move to and Copy to open the same way"
        }
      ],
      "actions": [
        {
          "title": "Open",
          "description": "The system opener.",
          "keys": "enter"
        },
        {
          "title": "Browse",
          "description": "On a folder: its contents as a level, `→` too. `←` or Backspace goes up.",
          "keys": "enter, right"
        },
        {
          "title": "Reveal in Finder",
          "description": "Show in file manager on Linux.",
          "keys": "cmd+enter"
        },
        {
          "title": "Quick Look",
          "description": "macOS only; every marked row at once, arrows between them.",
          "keys": "cmd+y"
        },
        {
          "title": "Open with…",
          "description": "A level of the apps registered for the file.",
          "keys": "cmd+o"
        },
        {
          "title": "Copy path",
          "keys": "cmd+c"
        },
        {
          "title": "Copy file",
          "description": "The file itself onto the clipboard: a paste in Finder copies it.",
          "keys": "cmd+shift+c"
        },
        {
          "title": "Open in Terminal",
          "description": "A terminal window in the folder (a file's folder), the app the `terminal` setting names.",
          "keys": "cmd+t"
        },
        {
          "title": "Rename",
          "description": "The name typed in the bar, in the same folder; a form with the current name when blank.",
          "keys": "cmd+shift+r"
        },
        {
          "title": "Move to…",
          "description": "A form; the folder it goes to, made when missing.",
          "keys": "cmd+m"
        },
        {
          "title": "Copy to…",
          "description": "A form; a copy under the same name in that folder.",
          "keys": "cmd+alt+c"
        },
        {
          "title": "Compress",
          "description": "A zip next to the file, or one zip of every marked row, named after the first.",
          "keys": "cmd+shift+z"
        },
        {
          "title": "Move to Trash",
          "description": "Asks first.",
          "keys": "cmd+d"
        },
        {
          "title": "Show hidden files",
          "description": "In a browsed folder: flips the `show_hidden` setting.",
          "keys": "cmd+."
        }
      ]
    },
    "palettes": {
      "files": {
        "title": "Files",
        "dialog": true,
        "kind": "input",
        "inline": true,
        "match": "^\\s*(~|/)",
        "fallback": "Search Files for “{query}”",
        "description": "Type part of a file name; rows are the matches under the configured folders. Before you type: the recently used files. A path (`~/Down`, `/usr/local`) lists the file or its completions, at the root too, and a path ending in `/` lists that folder whole; Enter on a folder browses it. A root query nothing matched gets a Search Files fallback row.",
        "keys": [
          {
            "keys": "enter",
            "title": "Open the file, browse a folder"
          },
          {
            "keys": "right",
            "title": "Browse a folder"
          },
          {
            "keys": "cmd+enter",
            "title": "Reveal in Finder"
          },
          {
            "keys": "cmd+y",
            "title": "Quick Look (macOS)"
          },
          {
            "keys": "cmd+o",
            "title": "Open with another app"
          },
          {
            "keys": "cmd+c",
            "title": "Copy path"
          },
          {
            "keys": "cmd+shift+c",
            "title": "Copy the file"
          },
          {
            "keys": "cmd+t",
            "title": "Open in a terminal"
          },
          {
            "keys": "cmd+shift+r",
            "title": "Rename to the name typed in the bar"
          },
          {
            "keys": "cmd+m",
            "title": "Move to a folder"
          },
          {
            "keys": "cmd+alt+c",
            "title": "Copy to a folder"
          },
          {
            "keys": "cmd+shift+z",
            "title": "Compress to a zip"
          },
          {
            "keys": "cmd+d",
            "title": "Move to Trash"
          }
        ]
      },
      "browse": {
        "title": "Browse Folder",
        "kind": "input",
        "description": "A folder's contents, pushed by Browse on a folder row (or by typing a path ending in `/`): a `..` row first, then the entries under the dropdown's sort (name, date, size), hidden ones with `show_hidden`, at most 500. The crumb is the folder; typing filters by name.",
        "keys": [
          {
            "keys": "enter",
            "title": "Browse a folder, open a file"
          },
          {
            "keys": "right",
            "title": "Browse the folder under the cursor"
          },
          {
            "keys": "left, backspace",
            "title": "Go up (while nothing is typed)"
          },
          {
            "keys": "tab",
            "title": "Cycle the sort: name, date, size"
          },
          {
            "keys": "cmd+.",
            "title": "Show or hide hidden files"
          },
          {
            "keys": "cmd+enter",
            "title": "Reveal in Finder"
          },
          {
            "keys": "cmd+o",
            "title": "Open with another app"
          },
          {
            "keys": "cmd+c",
            "title": "Copy path"
          },
          {
            "keys": "cmd+shift+c",
            "title": "Copy the file"
          },
          {
            "keys": "cmd+t",
            "title": "Open in a terminal"
          },
          {
            "keys": "cmd+shift+r",
            "title": "Rename to the name typed in the bar"
          },
          {
            "keys": "cmd+m",
            "title": "Move to a folder"
          },
          {
            "keys": "cmd+alt+c",
            "title": "Copy to a folder"
          },
          {
            "keys": "cmd+shift+z",
            "title": "Compress to a zip"
          },
          {
            "keys": "cmd+d",
            "title": "Move to Trash"
          }
        ]
      },
      "selection": {
        "title": "Finder Selection",
        "kind": "input",
        "description": "The files selected in Finder (the front window's, or the Desktop's), each with the file actions; several are led by an \"N items\" row whose actions run on all of them. The same rows lead the empty root under \"Selected in Finder\" whenever pal opens over Finder with something marked. macOS only; the palette says why when Finder is not in front or nothing is selected.",
        "keys": [
          {
            "keys": "enter",
            "title": "Open the file, browse a folder"
          },
          {
            "keys": "cmd+enter",
            "title": "Reveal in Finder"
          },
          {
            "keys": "cmd+y",
            "title": "Quick Look (macOS)"
          },
          {
            "keys": "cmd+o",
            "title": "Open with another app"
          },
          {
            "keys": "cmd+c",
            "title": "Copy path"
          },
          {
            "keys": "cmd+shift+c",
            "title": "Copy the file"
          },
          {
            "keys": "cmd+t",
            "title": "Open in a terminal"
          },
          {
            "keys": "cmd+shift+r",
            "title": "Rename to the name typed in the bar"
          },
          {
            "keys": "cmd+m",
            "title": "Move to a folder"
          },
          {
            "keys": "cmd+alt+c",
            "title": "Copy to a folder"
          },
          {
            "keys": "cmd+shift+z",
            "title": "Compress to a zip"
          },
          {
            "keys": "cmd+d",
            "title": "Move to Trash"
          }
        ]
      },
      "recent": {
        "title": "Recent Files",
        "tier": "primary",
        "kind": "live",
        "remember": false,
        "ttl": 60,
        "description": "Files used in the last seven days under the configured folders, newest first.",
        "keys": [
          {
            "keys": "enter",
            "title": "Open the file"
          },
          {
            "keys": "cmd+enter",
            "title": "Reveal in Finder"
          },
          {
            "keys": "cmd+y",
            "title": "Quick Look (macOS)"
          },
          {
            "keys": "cmd+o",
            "title": "Open with another app"
          },
          {
            "keys": "cmd+c",
            "title": "Copy path"
          },
          {
            "keys": "cmd+shift+c",
            "title": "Copy the file"
          },
          {
            "keys": "cmd+t",
            "title": "Open in a terminal"
          },
          {
            "keys": "cmd+shift+r",
            "title": "Rename to the name typed in the bar"
          },
          {
            "keys": "cmd+m",
            "title": "Move to a folder"
          },
          {
            "keys": "cmd+alt+c",
            "title": "Copy to a folder"
          },
          {
            "keys": "cmd+shift+z",
            "title": "Compress to a zip"
          },
          {
            "keys": "cmd+d",
            "title": "Move to Trash"
          }
        ]
      }
    }
  },
  "playable": false,
  "updated_at": "2026-11-02T04:38:11Z",
  "url": "https://pal.cagdas.io/extensions/files",
  "tagline": "Find, browse and act on files, recent ones before you type",
  "category": "productivity",
  "screenshots": [
    "https://pal.cagdas.io/extensions/files/screenshots/1-search-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/1-search.png",
    "https://pal.cagdas.io/extensions/files/screenshots/2-detail-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/2-detail.png",
    "https://pal.cagdas.io/extensions/files/screenshots/3-open-with-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/3-open-with.png",
    "https://pal.cagdas.io/extensions/files/screenshots/4-recent-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/4-recent.png",
    "https://pal.cagdas.io/extensions/files/screenshots/5-browse-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/5-browse.png",
    "https://pal.cagdas.io/extensions/files/screenshots/6-rename-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/6-rename.png"
  ],
  "panel_screenshots": [
    "https://pal.cagdas.io/extensions/files/screenshots/1-search.png",
    "https://pal.cagdas.io/extensions/files/screenshots/2-detail.png",
    "https://pal.cagdas.io/extensions/files/screenshots/3-open-with.png",
    "https://pal.cagdas.io/extensions/files/screenshots/4-recent.png",
    "https://pal.cagdas.io/extensions/files/screenshots/5-browse.png",
    "https://pal.cagdas.io/extensions/files/screenshots/6-rename.png"
  ],
  "bar_screenshots": [],
  "panel_screenshots_dark": [
    "https://pal.cagdas.io/extensions/files/screenshots/1-search-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/2-detail-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/3-open-with-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/4-recent-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/5-browse-dark.png",
    "https://pal.cagdas.io/extensions/files/screenshots/6-rename-dark.png"
  ],
  "bar_screenshots_dark": [],
  "has_bar": false,
  "bar_items": [],
  "has_links": false,
  "links": [],
  "multi": false,
  "has_readme": true
}
