Navigate and explore Microsoft AL / Business Central packages right inside VS Code.
Features
⚡ Automatic Package Loading
AL Companion automatically loads your dependency packages when you open an AL project (any workspace containing an app.json). It respects:
The al.packageCachePath workspace setting — uses your custom cache directory if configured, otherwise falls back to .alpackages
Your app.json dependency list — only loads packages you actually depend on (plus the Microsoft platform packages: System, System Application, Base Application, Application)
Version constraints — when multiple versions of a package exist in the cache, the highest version satisfying your minimum requirement is selected
🔍 Search Event Subscribers
Quickly find all event subscribers across all loaded packages and your local project files using a guided 3-step Quick Pick:
Publisher object — pick the object that publishes the event (e.g. Codeunit "Sales-Post")
Event name — pick the event (e.g. OnBeforePostDocument)
Element(optional) — filter by field or action name for table/page events
After selecting a subscriber from the results list:
Local .al files — the file opens directly and VS Code jumps to the subscriber function
Package .app files — the AL source is extracted from the package and opened as a read-only document with full AL syntax highlighting, with the cursor placed at the subscriber function
Commands
Command
Description
AL Companion: Reload Packages
Re-scan package cache directories and reload all packages
AL Companion: Search Event Subscriber
Open the guided event subscriber search
Extension Settings
Setting
Type
Default
Description
al-companion.debugLogging
boolean
false
Enable verbose debug logging to the AL Companion output channel
Requirements
VS Code 1.109.0 or later
An AL project with an app.json file (Microsoft AL extension not required)