pal docs

  • Getting started: install to the first extension, in the order things come up: permissions, the hotkey, the panel, the root, the bar, Settings, the config file, the store, the CLI.
  • Config: the config file key by key with its default: [general], the theme file, [palettes], [bar], [features], [extensions], [instances], secrets, live reload, diagnostics, profiles.
  • Features: what pal does on its own (clipboard history, text expansion, the window switcher, the sidebar, keeping windows below a bar, mouse and trackpad, keycast), their settings and commands.
  • Palettes: every bundled palette with its keys, actions, settings and links.
  • Scripts and data files: the zero-code tier, a palette from a data file or a shell script, and script commands.
  • Keyboard: the keyboard grammar, the shell's shortcuts, the other windows.
  • CLI: pal and its subcommands, the store, instances, the bar, pal pick.
  • Links: pal:// links and their pal twins, every route with an example, the extensions' own routes, what asks first.
  • Extensions: writing a palette in TypeScript: the manifest, the code, views, forms, bar items, links, the @zcag/pal API.
  • Accounts: signing in, what syncs and how nothing is lost, leaderboards, and the account API.
  • Troubleshooting: the log, diagnostics, permissions, the hotkey, PATH, the extension host, a palette that lists nothing, Gatekeeper.
  • Changelog: what changed in each release, newest first.
  • Releasing: how a release is cut and how the updater works.

Rendered from docs/README.md in the pal repo, 2026-11-02.