Interface: ArduinoContext

January 3, 2026 ยท View on GitHub

vscode-arduino-api


Interface: ArduinoContext

Provides access to the current state of the Arduino IDE such as the sketch path, the currently selected board, and port, and etc.

Extends

Properties

boardDetails

readonly boardDetails: BoardDetails | undefined

Lightweight representation of the board's detail. This information is provided by the Arduino CLI for the currently selected board. It can be undefined if the fqbn is defined but the platform is not installed.

Deprecated

Use arduinoContext?.currentSketch?.boardDetails instead.

Inherited from

ArduinoState.boardDetails


compileSummary

readonly compileSummary: CompileSummary | undefined

The summary of the latest sketch compilation. When the sketchPath is available but the sketch has not been verified (compiled), the buildPath can be undefined.

Deprecated

Use arduinoContext?.currentSketch?.compileSummary instead.

Inherited from

ArduinoState.compileSummary


config

readonly config: CliConfig

The currently configured Arduino CLI configuration.


currentSketch

readonly currentSketch: SketchFolder | undefined

The currently active sketch (folder) or undefined. The current sketch is the one that currently has focus or most recently had focus. The current sketch is in the opened sketches.


dataDirPath

readonly dataDirPath: string | undefined

Filesystem path to the directories.data location.

Deprecated

Use arduinoContext?.config?.dataDirPath instead.

Inherited from

ArduinoState.dataDirPath


fqbn

readonly fqbn: string | undefined

The Fully Qualified Board Name (FQBN) of the currently selected board in the Arduino IDE.

Deprecated

Use arduinoContext?.currentSketch?.board?.fqbn instead.

Inherited from

ArduinoState.fqbn


onDidChangeConfig

readonly onDidChangeConfig: Event<ChangeEvent<CliConfig>>

An event that is emitter when the sketchbook (directories.data) or the data directory (directories.data) path has changed.


onDidChangeCurrentSketch

readonly onDidChangeCurrentSketch: Event<SketchFolder | undefined>

An Event that is emitted when the current sketch has changed. Note that the event also fires when the active editor changes to undefined.


onDidChangeSketch

readonly onDidChangeSketch: Event<ChangeEvent<SketchFolder>>

An event that is emitted when the selected board, port, etc., has changed in the sketch folder.


onDidChangeSketchFolders

readonly onDidChangeSketchFolders: Event<SketchFoldersChangeEvent>

An event that is emitted when sketch folders are added or removed.


openedSketches

readonly openedSketches: readonly SketchFolder[]

All opened sketch folders in the window.


port

readonly port: Port | undefined

The currently selected port in the Arduino IDE.

Deprecated

Use arduinoContext?.currentSketch?.port instead.

Inherited from

ArduinoState.port


sketchPath

readonly sketchPath: string | undefined

Absolute filesystem path of the sketch folder.

Deprecated

Use arduinoContext?.currentSketch?.sketchPath instead.

Inherited from

ArduinoState.sketchPath


userDirPath

readonly userDirPath: string | undefined

Filesystem path to the directories.user location. This is the sketchbook path.

Deprecated

Use arduinoContext?.config?.userDirPath instead.

Inherited from

ArduinoState.userDirPath

Methods

onDidChange()

onDidChange<T>(property): Event<ArduinoState[T]>

Type Parameters

T

T extends keyof ArduinoState

Parameters

property

T

Returns

Event<ArduinoState[T]>

Deprecated

Use onDidChangeSketch and onDidChangeConfig instead.