VSCode Extension

We provide a BAML VSCode extension: https://marketplace.visualstudio.com/items?itemName=Boundary.baml-extension

FeatureSupported
Syntax highlighting for BAML files
Code snippets for BAML
LLM playground for testing BAML functions
Jump to definition for BAML files
Jump to definition between Python/TS files and BAML files
Auto generate baml_client on save
BAML formatter

Opening BAML Playground

Once you open a .baml file, in VSCode, you should see a small button over every BAML function: Open Playground.

Or type BAML Playground in the VSCode Command Bar (CMD + Shift + P or CTRL + Shift + P) to open the playground.

Setting Env Variables

Click on the Settings button in top right of the playground and set the environment variables.

It should have an indicator saying how many unset variables are there.

The playground should persist the environment variables between closing and opening VSCode.

You can set environment variables lazily. If anything is unset you’ll get an error when you run the function.

Environment Variables are stored in VSCode’s local storage! We don’t save any additional data to disk, or send them across the network.

Running Tests

  • Click on the Run All Tests button in the playground.

  • Press the ▶️ button next to an individual test case to run that just that test case.

Switching Functions

The playground will automatically switch to the function you’re currently editing.

To manually change it, click on the current function name in the playground (next to the dropdown) and search for your desired function.

Switching Test Cases

The test case with the highlighted background is the currently rendered test case. Clicking on a different test case will render that test case.

You can toggle between seeing the results of all test cases or all test cases for the current function.