Your editor in the Arugula swarm: who's in which file, follow its cursor from a phone, debugger stops and Claude Code's diffs on the rail. And Arugula's colours.
Full workbench mockup using this variant's colors and tokenColors.
Loading...
colors
Workbench UI color keys from the theme JSON colors map.
key
HEX
RGB
RGBA
activityBar.background
activityBar.foreground
activityBar.inactiveForeground
activityBarBadge.background
activityBarBadge.foreground
badge.background
badge.foreground
button.background
button.foreground
dropdown.background
editor.background
editor.foreground
editor.inactiveSelectionBackground
editor.lineHighlightBackground
editor.lineHighlightBorder
editor.selectionBackground
editorCursor.foreground
editorGroup.border
editorGroupHeader.tabsBackground
editorIndentGuide.background1
editorLineNumber.activeForeground
editorLineNumber.foreground
editorWhitespace.foreground
editorWidget.background
focusBorder
foreground
input.background
input.foreground
list.activeSelectionBackground
list.focusOutline
list.hoverBackground
list.inactiveSelectionBackground
panel.background
panel.border
selection.background
sideBar.background
sideBar.foreground
sideBarSectionHeader.background
statusBar.background
statusBar.foreground
statusBar.noFolderBackground
tab.activeBackground
tab.activeBorderTop
tab.activeForeground
tab.border
tab.inactiveBackground
tab.inactiveForeground
terminal.ansiBlack
terminal.ansiBlue
terminal.ansiBrightBlack
terminal.ansiBrightBlue
terminal.ansiBrightCyan
terminal.ansiBrightGreen
terminal.ansiBrightMagenta
terminal.ansiBrightRed
terminal.ansiBrightWhite
terminal.ansiBrightYellow
terminal.ansiCyan
terminal.ansiGreen
terminal.ansiMagenta
terminal.ansiRed
terminal.ansiWhite
terminal.ansiYellow
terminal.background
terminal.foreground
terminalCursor.foreground
titleBar.activeBackground
titleBar.activeForeground
titleBar.inactiveBackground
widget.shadow
tokenColors
Foregrounds this theme assigns to the token scope catalog. A rule with only a font style is skipped, and a longer matching scope wins. Italic and bold rules are not listed — the preview above shows them in the code.
scope
HEX
RGB
RGBA
comment
comment.block
comment.block.documentation
comment.line
constant
constant.character
constant.character.escape
constant.numeric
constant.numeric.integer
constant.numeric.float
constant.numeric.hex
constant.numeric.octal
constant.other
constant.other.placeholder
constant.regexp
entity
entity.name
entity.name.class
entity.name.function
entity.name.namespace
entity.name.tag
entity.name.type
entity.name.type.enum
entity.name.type.interface
entity.name.type.struct
entity.other
entity.other.attribute-name
entity.other.inherited-class
invalid
invalid.deprecated
invalid.illegal
keyword
keyword.control
keyword.control.flow
keyword.operator
keyword.operator.new
keyword.operator.assignment
keyword.operator.arithmetic
keyword.operator.logical
keyword.other
markup
markup.deleted
markup.heading
markup.inserted
meta
meta.function-call
punctuation.definition.comment
punctuation.definition.string.begin
punctuation.definition.string.end
punctuation.separator
punctuation.separator.continuation
punctuation.terminator
storage
storage.modifier
storage.type
string
string.interpolated
string.other
string.quoted
string.quoted.double
string.quoted.other
string.quoted.single
string.quoted.triple
string.regexp
string.template
string.unquoted
support
support.class
support.function
support.type
support.type.primitive
support.type.property-name
support.variable
variable
variable.other
variable.other.property
variable.parameter
fetchUser.ts
index.ts
README.md
src
components
fetchUser.ts
User
tags
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
export interface User { id: string; name: string; role: "admin" | "member"; tags: string[];}/** * Fetch user data by ID * @param id * @returns User object or null if ID is invalid */export async function fetchUser(id: string): Promise<User | null> { if (!id) { return null; } const response = await fetch(`/api/users/${id}`, { method: "GET", headers: { Accept: "application/json" }, }); if (!response.ok) { throw new Error(`HTTP ${response.status}`); } return (await response.json()) as User;}function greet(user: User): string { // Simple greeting function that uses the user's name return `Hello, ${user.name}!`;}