Generate the theme catalog from real themes instead of a hand table

The derivation landed in decision 0018 with the catalog and the terminal ANSI
palette still fixed tables written by hand. tools/theme-gen reads the
TextMate themes under assets/themes/ and emits the catalog and the reference
vectors, so the anchors a palette is derived from are the ones the theme
actually ships rather than the ones somebody transcribed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SPYebLiN2w4TqnHUYGdECq
This commit is contained in:
Metal Agent
2026-09-01 12:51:25 -07:00
co-authored by Claude Opus 5
parent 7bee985279
commit 401760d670
108 changed files with 72648 additions and 12 deletions
+88
View File
@@ -0,0 +1,88 @@
# Theme attribution
Generated by `tools/theme-gen` from `assets/themes/metadata.json`. Every theme
below is adapted from an upstream TextMate/VS Code theme, redistributed here
under its own licence and vendored from `tm-themes@1.12.10`. Lumbridge stores
five anchor colours and sixteen terminal colours per theme; the licence covers
the theme file those were read from, which is checked in beside this table.
## Shipped
| Theme | Identifier | Upstream | SPDX | Licence text |
|---|---|---|---|---|
| Andromeeda | `andromeeda` | [EliverLara/Andromeda](https://github.com/EliverLara/Andromeda/blob/5a7e7059b4e14f4623eb647464570df70992528a/themes/Andromeda-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/EliverLara/Andromeda/master/LICENSE.md) | [`licenses/eliverlara-andromeda.mit.txt`](licenses/eliverlara-andromeda.mit.txt) |
| Ayu Dark | `ayu-dark` | [ayu-theme/vscode-ayu](https://github.com/ayu-theme/vscode-ayu/blob/97f28cd3c392cb12672a25229f33c4dd420f96ea/ayu-dark.json) | [`MIT`](https://raw.githubusercontent.com/ayu-theme/vscode-ayu/master/LICENSE) | [`licenses/ayu-theme-vscode-ayu.mit.txt`](licenses/ayu-theme-vscode-ayu.mit.txt) |
| Ayu Light | `ayu-light` | [ayu-theme/vscode-ayu](https://github.com/ayu-theme/vscode-ayu/blob/97f28cd3c392cb12672a25229f33c4dd420f96ea/ayu-light.json) | [`MIT`](https://raw.githubusercontent.com/ayu-theme/vscode-ayu/master/LICENSE) | [`licenses/ayu-theme-vscode-ayu.mit.txt`](licenses/ayu-theme-vscode-ayu.mit.txt) |
| Ayu Mirage | `ayu-mirage` | [ayu-theme/vscode-ayu](https://github.com/ayu-theme/vscode-ayu/blob/97f28cd3c392cb12672a25229f33c4dd420f96ea/ayu-mirage.json) | [`MIT`](https://raw.githubusercontent.com/ayu-theme/vscode-ayu/master/LICENSE) | [`licenses/ayu-theme-vscode-ayu.mit.txt`](licenses/ayu-theme-vscode-ayu.mit.txt) |
| Catppuccin Frappé | `catppuccin-frappe` | [catppuccin/vscode](https://github.com/catppuccin/vscode/blob/befc9e6fc41980f4241408f7049755d47c06ff45/packages/catppuccin-vsc/package.json) | [`MIT`](https://raw.githubusercontent.com/catppuccin/vscode/main/LICENSE) | [`licenses/catppuccin-vscode.mit.txt`](licenses/catppuccin-vscode.mit.txt) |
| Catppuccin Latte | `catppuccin-latte` | [catppuccin/vscode](https://github.com/catppuccin/vscode/blob/befc9e6fc41980f4241408f7049755d47c06ff45/packages/catppuccin-vsc/package.json) | [`MIT`](https://raw.githubusercontent.com/catppuccin/vscode/main/LICENSE) | [`licenses/catppuccin-vscode.mit.txt`](licenses/catppuccin-vscode.mit.txt) |
| Catppuccin Macchiato | `catppuccin-macchiato` | [catppuccin/vscode](https://github.com/catppuccin/vscode/blob/befc9e6fc41980f4241408f7049755d47c06ff45/packages/catppuccin-vsc/package.json) | [`MIT`](https://raw.githubusercontent.com/catppuccin/vscode/main/LICENSE) | [`licenses/catppuccin-vscode.mit.txt`](licenses/catppuccin-vscode.mit.txt) |
| Catppuccin Mocha | `catppuccin-mocha` | [catppuccin/vscode](https://github.com/catppuccin/vscode/blob/befc9e6fc41980f4241408f7049755d47c06ff45/packages/catppuccin-vsc/package.json) | [`MIT`](https://raw.githubusercontent.com/catppuccin/vscode/main/LICENSE) | [`licenses/catppuccin-vscode.mit.txt`](licenses/catppuccin-vscode.mit.txt) |
| Dark Plus | `dark-plus` | [microsoft/vscode](https://github.com/microsoft/vscode/blob/e061feef09c2a09a59d0a88ab186aa880b3c56c3/extensions/theme-defaults/themes/dark_plus.json) | [`MIT`](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | [`licenses/microsoft-vscode.mit.txt`](licenses/microsoft-vscode.mit.txt) |
| Dracula Theme | `dracula` | [dracula/visual-studio-code](https://github.com/dracula/visual-studio-code/blob/61743d6ea21cde34d9ad1009ec784ffe6f5e457c/src/dracula.yml) | [`MIT`](https://raw.githubusercontent.com/dracula/visual-studio-code/main/LICENSE) | [`licenses/dracula-visual-studio-code.mit.txt`](licenses/dracula-visual-studio-code.mit.txt) |
| Dracula Theme Soft | `dracula-soft` | [dracula/visual-studio-code](https://github.com/dracula/visual-studio-code/blob/61743d6ea21cde34d9ad1009ec784ffe6f5e457c/src/dracula.yml) | [`MIT`](https://raw.githubusercontent.com/dracula/visual-studio-code/main/LICENSE) | [`licenses/dracula-visual-studio-code.mit.txt`](licenses/dracula-visual-studio-code.mit.txt) |
| Everforest Dark | `everforest-dark` | [sainnhe/everforest-vscode](https://github.com/sainnhe/everforest-vscode/blob/b039b30727868d77108ec85f0be66e6d80a9bc1f/themes/everforest-dark.json) | [`MIT`](https://raw.githubusercontent.com/sainnhe/everforest-vscode/master/LICENSE) | [`licenses/sainnhe-everforest-vscode.mit.txt`](licenses/sainnhe-everforest-vscode.mit.txt) |
| Everforest Light | `everforest-light` | [sainnhe/everforest-vscode](https://github.com/sainnhe/everforest-vscode/blob/b039b30727868d77108ec85f0be66e6d80a9bc1f/themes/everforest-light.json) | [`MIT`](https://raw.githubusercontent.com/sainnhe/everforest-vscode/master/LICENSE) | [`licenses/sainnhe-everforest-vscode.mit.txt`](licenses/sainnhe-everforest-vscode.mit.txt) |
| GitHub Dark | `github-dark` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Dark Default | `github-dark-default` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Dark Dimmed | `github-dark-dimmed` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Dark High Contrast | `github-dark-high-contrast` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Light | `github-light` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Light Default | `github-light-default` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| GitHub Light High Contrast | `github-light-high-contrast` | [primer/github-vscode-theme](https://github.com/primer/github-vscode-theme/blob/f7a67d67fc2302a0ec36ddfb7bdd57142f4575e8/src/theme.js) | [`MIT`](https://raw.githubusercontent.com/primer/github-vscode-theme/main/LICENSE) | [`licenses/primer-github-vscode-theme.mit.txt`](licenses/primer-github-vscode-theme.mit.txt) |
| Gruvbox Dark Hard | `gruvbox-dark-hard` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Gruvbox Dark Medium | `gruvbox-dark-medium` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Gruvbox Dark Soft | `gruvbox-dark-soft` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Gruvbox Light Hard | `gruvbox-light-hard` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Gruvbox Light Medium | `gruvbox-light-medium` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Gruvbox Light Soft | `gruvbox-light-soft` | [jdinhify/vscode-theme-gruvbox](https://github.com/jdinhify/vscode-theme-gruvbox/blob/f0d6e1fc1f325da636b90591eccc45d2f44738fd/src/main.ts) | [`MIT`](https://raw.githubusercontent.com/jdinhify/vscode-theme-gruvbox/main/LICENSE) | [`licenses/jdinhify-vscode-theme-gruvbox.mit.txt`](licenses/jdinhify-vscode-theme-gruvbox.mit.txt) |
| Horizon | `horizon` | [alexandernanberg/horizon-theme-vscode](https://github.com/alexandernanberg/horizon-theme-vscode/blob/83c848d0efd5d57ac7c9d868b53ae375d8a27692/themes/horizon.json) | [`MIT`](https://raw.githubusercontent.com/alexandernanberg/horizon-theme-vscode/master/LICENSE) | [`licenses/alexandernanberg-horizon-theme-vscode.mit.txt`](licenses/alexandernanberg-horizon-theme-vscode.mit.txt) |
| Houston | `houston` | [withastro/houston-vscode](https://github.com/withastro/houston-vscode/blob/d297233be95e3f8fdecc22e4ffa92bb0e7265592/themes/houston.json) | [`MIT`](https://raw.githubusercontent.com/withastro/houston-vscode/main/LICENSE) | [`licenses/withastro-houston-vscode.mit.txt`](licenses/withastro-houston-vscode.mit.txt) |
| Kanagawa Dragon | `kanagawa-dragon` | [metapho-re/kanagawa-vscode-theme](https://github.com/metapho-re/kanagawa-vscode-theme/blob/cfc400efbda65f273f50bffd32c65a4077e82fce/themes/kanagawa-dragon-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/paccodes/kanagawa-vscode-theme/main/LICENSE) | [`licenses/paccodes-kanagawa-vscode-theme.mit.txt`](licenses/paccodes-kanagawa-vscode-theme.mit.txt) |
| Kanagawa Lotus | `kanagawa-lotus` | [metapho-re/kanagawa-vscode-theme](https://github.com/metapho-re/kanagawa-vscode-theme/blob/cfc400efbda65f273f50bffd32c65a4077e82fce/themes/kanagawa-lotus-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/paccodes/kanagawa-vscode-theme/main/LICENSE) | [`licenses/paccodes-kanagawa-vscode-theme.mit.txt`](licenses/paccodes-kanagawa-vscode-theme.mit.txt) |
| Kanagawa Wave | `kanagawa-wave` | [metapho-re/kanagawa-vscode-theme](https://github.com/metapho-re/kanagawa-vscode-theme/blob/cfc400efbda65f273f50bffd32c65a4077e82fce/themes/kanagawa-wave-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/paccodes/kanagawa-vscode-theme/main/LICENSE) | [`licenses/paccodes-kanagawa-vscode-theme.mit.txt`](licenses/paccodes-kanagawa-vscode-theme.mit.txt) |
| LaserWave | `laserwave` | [Jaredk3nt/laserwave](https://github.com/Jaredk3nt/laserwave/blob/f768285c659425fbb6ec5642085df4902f8a8d92/themes/LaserWave-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/Jaredk3nt/laserwave/master/LICENSE) | [`licenses/jaredk3nt-laserwave.mit.txt`](licenses/jaredk3nt-laserwave.mit.txt) |
| Light Plus | `light-plus` | [microsoft/vscode](https://github.com/microsoft/vscode/blob/09fe3fcbc1514bc35742dc4325d05b7d7adfcad2/extensions/theme-defaults/themes/light_plus.json) | [`MIT`](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | [`licenses/microsoft-vscode.mit.txt`](licenses/microsoft-vscode.mit.txt) |
| Material Theme | `material-theme` | [antfu/vsc-material-theme](https://github.com/antfu/vsc-material-theme/blob/f09de7a2970defaed43d8e293b4d3ac4e350e71b/src/material.theme.config.ts) | [`Apache-2.0`](https://raw.githubusercontent.com/antfu/vsc-material-theme/main/LICENSE) | [`licenses/antfu-vsc-material-theme.apache-2.0.txt`](licenses/antfu-vsc-material-theme.apache-2.0.txt) |
| Material Theme Darker | `material-theme-darker` | [antfu/vsc-material-theme](https://github.com/antfu/vsc-material-theme/blob/f09de7a2970defaed43d8e293b4d3ac4e350e71b/src/material.theme.config.ts) | [`Apache-2.0`](https://raw.githubusercontent.com/antfu/vsc-material-theme/main/LICENSE) | [`licenses/antfu-vsc-material-theme.apache-2.0.txt`](licenses/antfu-vsc-material-theme.apache-2.0.txt) |
| Material Theme Ocean | `material-theme-ocean` | [antfu/vsc-material-theme](https://github.com/antfu/vsc-material-theme/blob/f09de7a2970defaed43d8e293b4d3ac4e350e71b/src/material.theme.config.ts) | [`Apache-2.0`](https://raw.githubusercontent.com/antfu/vsc-material-theme/main/LICENSE) | [`licenses/antfu-vsc-material-theme.apache-2.0.txt`](licenses/antfu-vsc-material-theme.apache-2.0.txt) |
| Material Theme Palenight | `material-theme-palenight` | [antfu/vsc-material-theme](https://github.com/antfu/vsc-material-theme/blob/f09de7a2970defaed43d8e293b4d3ac4e350e71b/src/material.theme.config.ts) | [`Apache-2.0`](https://raw.githubusercontent.com/antfu/vsc-material-theme/main/LICENSE) | [`licenses/antfu-vsc-material-theme.apache-2.0.txt`](licenses/antfu-vsc-material-theme.apache-2.0.txt) |
| Min Dark | `min-dark` | [misolori/min-theme](https://github.com/misolori/min-theme/blob/4641b5d395b9a3506572ec717e80ae8c7cdaae2a/themes/min-dark.json) | [`MIT`](https://raw.githubusercontent.com/miguelsolorio/min-theme/master/LICENSE) | [`licenses/miguelsolorio-min-theme.mit.txt`](licenses/miguelsolorio-min-theme.mit.txt) |
| Min Light | `min-light` | [misolori/min-theme](https://github.com/misolori/min-theme/blob/4641b5d395b9a3506572ec717e80ae8c7cdaae2a/themes/min-light.json) | [`MIT`](https://raw.githubusercontent.com/miguelsolorio/min-theme/master/LICENSE) | [`licenses/miguelsolorio-min-theme.mit.txt`](licenses/miguelsolorio-min-theme.mit.txt) |
| Monokai | `monokai` | [microsoft/vscode](https://github.com/microsoft/vscode/blob/00c6beca4414ad306a03138e573a164bcc0f0912/extensions/theme-monokai/themes/monokai-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | [`licenses/microsoft-vscode.mit.txt`](licenses/microsoft-vscode.mit.txt) |
| Night Owl | `night-owl` | [sdras/night-owl-vscode-theme](https://github.com/sdras/night-owl-vscode-theme/blob/d298950d6378c36c027f1387e307ebf3f145fc90/themes/Night%20Owl-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/sdras/night-owl-vscode-theme/main/LICENSE.md) | [`licenses/sdras-night-owl-vscode-theme.mit.txt`](licenses/sdras-night-owl-vscode-theme.mit.txt) |
| Night Owl Light | `night-owl-light` | [sdras/night-owl-vscode-theme](https://github.com/sdras/night-owl-vscode-theme/blob/d298950d6378c36c027f1387e307ebf3f145fc90/themes/Night%20Owl-Light-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/sdras/night-owl-vscode-theme/main/LICENSE.md) | [`licenses/sdras-night-owl-vscode-theme.mit.txt`](licenses/sdras-night-owl-vscode-theme.mit.txt) |
| Nord | `nord` | [arcticicestudio/nord-visual-studio-code](https://github.com/arcticicestudio/nord-visual-studio-code/blob/27045851c5154fe2d9b116e7491c596cdcd72275/themes/nord-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/nordtheme/visual-studio-code/develop/license) | [`licenses/nordtheme-visual-studio-code.mit.txt`](licenses/nordtheme-visual-studio-code.mit.txt) |
| One Dark Pro | `one-dark-pro` | [Binaryify/OneDark-Pro](https://github.com/Binaryify/OneDark-Pro/blob/194ac088df050c97ff0dd64f8a6a38221d2971ca/themes/OneDark-Pro.json) | [`MIT`](https://raw.githubusercontent.com/Binaryify/OneDark-Pro/master/LICENSE.txt) | [`licenses/binaryify-onedark-pro.mit.txt`](licenses/binaryify-onedark-pro.mit.txt) |
| One Light | `one-light` | [akamud/vscode-theme-onelight](https://github.com/akamud/vscode-theme-onelight/blob/f1ff6b87c6379a22b34354bbf64d355cd2adc611/themes/OneLight.json) | [`MIT`](https://raw.githubusercontent.com/akamud/vscode-theme-onelight/master/LICENSE) | [`licenses/akamud-vscode-theme-onelight.mit.txt`](licenses/akamud-vscode-theme-onelight.mit.txt) |
| Plastic | `plastic` | [will-stone/plastic](https://github.com/will-stone/plastic/blob/30eaf248a3ee319c85ddf254dd0cb64a443d1571/themes/main.json) | [`MIT`](https://raw.githubusercontent.com/will-stone/plastic/main/LICENSE) | [`licenses/will-stone-plastic.mit.txt`](licenses/will-stone-plastic.mit.txt) |
| Poimandres | `poimandres` | [drcmda/poimandres-theme](https://github.com/drcmda/poimandres-theme/blob/574213aba50e3a46a95fa86a69025a0fae046a8a/themes/poimandres-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/drcmda/poimandres-theme/main/LICENSE) | [`licenses/drcmda-poimandres-theme.mit.txt`](licenses/drcmda-poimandres-theme.mit.txt) |
| Red | `red` | [microsoft/vscode](https://github.com/microsoft/vscode/blob/24ae5cf9707d8e79e8d11902157eeb471e135262/extensions/theme-red/themes/Red-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | [`licenses/microsoft-vscode.mit.txt`](licenses/microsoft-vscode.mit.txt) |
| Rosé Pine | `rose-pine` | [rose-pine/vscode](https://github.com/rose-pine/vscode/blob/c9c08b4fe4131b8c686631046b8ce9223613fd24/themes/rose-pine-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/rose-pine/vscode/main/LICENSE) | [`licenses/rose-pine-vscode.mit.txt`](licenses/rose-pine-vscode.mit.txt) |
| Rosé Pine Dawn | `rose-pine-dawn` | [rose-pine/vscode](https://github.com/rose-pine/vscode/blob/c9c08b4fe4131b8c686631046b8ce9223613fd24/themes/rose-pine-dawn-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/rose-pine/vscode/main/LICENSE) | [`licenses/rose-pine-vscode.mit.txt`](licenses/rose-pine-vscode.mit.txt) |
| Rosé Pine Moon | `rose-pine-moon` | [rose-pine/vscode](https://github.com/rose-pine/vscode/blob/c9c08b4fe4131b8c686631046b8ce9223613fd24/themes/rose-pine-moon-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/rose-pine/vscode/main/LICENSE) | [`licenses/rose-pine-vscode.mit.txt`](licenses/rose-pine-vscode.mit.txt) |
| Slack Dark | `slack-dark` | [slack-theme/visual-studio-code](https://github.com/slack-theme/visual-studio-code/blob/28cd093d2aac9bfe0d3b96d468efa73a1d6639c2/themes/dark-mode.json) | [`MIT`](https://raw.githubusercontent.com/slack-theme/visual-studio-code/master/License) | [`licenses/slack-theme-visual-studio-code.mit.txt`](licenses/slack-theme-visual-studio-code.mit.txt) |
| Slack Ochin | `slack-ochin` | [slack-theme/visual-studio-code](https://github.com/slack-theme/visual-studio-code/blob/572452d0da20d384858b28ad14e110ee5daac411/themes/ochin.json) | [`MIT`](https://raw.githubusercontent.com/slack-theme/visual-studio-code/master/License) | [`licenses/slack-theme-visual-studio-code.mit.txt`](licenses/slack-theme-visual-studio-code.mit.txt) |
| Snazzy Light | `snazzy-light` | [loilo/vscode-snazzy-light](https://github.com/loilo/vscode-snazzy-light/blob/516646af7e1a114871698ce9090182c582899c71/themes/Snazzy-Light-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/loilo/vscode-snazzy-light/master/LICENSE) | [`licenses/loilo-vscode-snazzy-light.mit.txt`](licenses/loilo-vscode-snazzy-light.mit.txt) |
| Solarized Dark | `solarized-dark` | [microsoft/vscode](https://github.com/microsoft/vscode/blob/24ae5cf9707d8e79e8d11902157eeb471e135262/extensions/theme-solarized-dark/themes/solarized-dark-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/microsoft/vscode/main/LICENSE.txt) | [`licenses/microsoft-vscode.mit.txt`](licenses/microsoft-vscode.mit.txt) |
| Synthwave '84 | `synthwave-84` | [robb0wen/synthwave-vscode](https://github.com/robb0wen/synthwave-vscode/blob/7eaf45c07650295625e1e5ea73274fc50f9ea3c1/themes/synthwave-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/robb0wen/synthwave-vscode/master/LICENSE) | [`licenses/robb0wen-synthwave-vscode.mit.txt`](licenses/robb0wen-synthwave-vscode.mit.txt) |
| Tokyo Night | `tokyo-night` | [enkia/tokyo-night-vscode-theme](https://github.com/enkia/tokyo-night-vscode-theme/blob/da5546bc4163a02a30d6f3ced90d4ef7dfcb8460/themes/tokyo-night-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/tokyo-night/tokyo-night-vscode-theme/master/LICENSE.txt) | [`licenses/tokyo-night-tokyo-night-vscode-theme.mit.txt`](licenses/tokyo-night-tokyo-night-vscode-theme.mit.txt) |
| Vesper | `vesper` | [raunofreiberg/vesper](https://github.com/raunofreiberg/vesper/blob/9043f3849b776949445f0cd4990365959cca35a3/themes/Vesper-dark-color-theme.json) | [`MIT`](https://raw.githubusercontent.com/raunofreiberg/vesper/main/LICENSE.md) | [`licenses/raunofreiberg-vesper.mit.txt`](licenses/raunofreiberg-vesper.mit.txt) |
| Vitesse Black | `vitesse-black` | [antfu/vscode-theme-vitesse](https://github.com/antfu/vscode-theme-vitesse/blob/625a5e6fffd15e440e574f353ae0ba777b41d47f/themes/vitesse-black.json) | [`MIT`](https://raw.githubusercontent.com/antfu/vscode-theme-vitesse/main/LICENSE.md) | [`licenses/antfu-vscode-theme-vitesse.mit.txt`](licenses/antfu-vscode-theme-vitesse.mit.txt) |
| Vitesse Dark | `vitesse-dark` | [antfu/vscode-theme-vitesse](https://github.com/antfu/vscode-theme-vitesse/blob/625a5e6fffd15e440e574f353ae0ba777b41d47f/themes/vitesse-dark.json) | [`MIT`](https://raw.githubusercontent.com/antfu/vscode-theme-vitesse/main/LICENSE.md) | [`licenses/antfu-vscode-theme-vitesse.mit.txt`](licenses/antfu-vscode-theme-vitesse.mit.txt) |
| Vitesse Light | `vitesse-light` | [antfu/vscode-theme-vitesse](https://github.com/antfu/vscode-theme-vitesse/blob/625a5e6fffd15e440e574f353ae0ba777b41d47f/themes/vitesse-light.json) | [`MIT`](https://raw.githubusercontent.com/antfu/vscode-theme-vitesse/main/LICENSE.md) | [`licenses/antfu-vscode-theme-vitesse.mit.txt`](licenses/antfu-vscode-theme-vitesse.mit.txt) |
## Held back
Vendored so the decision can be re-measured, but absent from the catalog.
| Theme | Identifier | SPDX | Why |
|---|---|---|---|
| Horizon Bright | `horizon-bright` | `MIT` | body text measures 1.33:1 against its own surface, below the 4.5:1 floor |
| Material Theme Lighter | `material-theme-lighter` | `Apache-2.0` | body text measures 2.48:1 against its own surface, below the 4.5:1 floor |
| Solarized Light | `solarized-light` | `MIT` | body text measures 4.13:1 against its own surface, below the 4.5:1 floor |
One theme is not vendored at all: `aurora-x` is GPL-3.0, and the research
boundary in `AGENTS.md` forbids shipping GPL-derived assets from an Apache-2.0
repository. It is excluded at the vendoring step, so no copy of it exists here.