Skip to content
| Marketplace
Sign in
Visual Studio Code>AI>BC ALM — Business Central Copilot Template ManagerNew to Visual Studio Code? Get it now.
BC ALM — Business Central Copilot Template Manager

BC ALM — Business Central Copilot Template Manager

Preview

Alexander Erdelyi

|
3 installs
| (0) | Free
| Sponsor
Create Business Central projects from the BC ALM template, keep agents/skills/prompts/instructions up to date without losing your own changes, enable or disable components, and publish your customizations to your own template or upstream.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

BC ALM — Business Central Copilot Template Manager

Version Installs License: MIT

Give your Microsoft Dynamics 365 Business Central team a ready-made set of GitHub Copilot agents, skills, prompts and instructions, and keep it up to date.

BC ALM takes them from the BC ALM template, or from your own company template, and installs them into your AL projects:

  • Your project values: they are filled in with your app prefix, object ID range and repository.
  • Safe updates: it shows what changed upstream, and updates without overwriting your own edits.
  • Sharing back: you can contribute improvements back as pull requests.

Components view with update statuses

Template Sources view with sharing actions

Browse templates in a catalog

Create a new template in a catalog or its own repository

Preview. BC ALM is new. Please report anything odd in GitHub issues.

Features

  • Start fast: create a new BC project from a template, or add BC ALM to an existing repository. Prefix, object range, publisher and work-item system (Azure DevOps or GitHub) are prefilled from app.json and your git remote.
  • Components view: every agent, skill, prompt, instruction, workflow and doc, with its status:
    • up to date
    • update available
    • modified
    • conflict
    • custom
    • disabled
  • Updates that respect your edits:
    • Unchanged files update in one click.
    • Files you edited get a 3-way merge, keep mine or reset.
    • Your project values are re-applied automatically.
  • Pick what you use: install, disable or pin ("always keep my version") single components, or choose them per template.
  • Several templates side by side: for example BC ALM plus a BC upgrade template. Turn whole templates on or off.
  • Template catalogs:
    • Browse several templates in one repository.
    • Build variants that extend a template.
    • Follow latest, a pinned version or a branch.
  • Your own company template:
    • Copy (fork, duplicate or independent copy) a template into your own repository.
    • Save customized components to it.
    • Keep it in sync with upstream.
    • Contribute improvements back as a pull request (through a fork when you can't push).
  • Authoring help: scaffolds for new agents, skills, prompts and instructions. Live diagnostics with quick fixes against current Copilot guidance. Review with Copilot.
  • Guidance & What's New: a best-practices guide, the template's change log since your version, and Copilot updates from the GitHub changelog.

Getting started

  1. Install BC ALM, either way:
    • from the Extensions view (search for BC ALM);
    • or from a terminal: code --install-extension AlexanderErdelyi.bc-alm.
  2. Open a folder. Use an empty folder for a new project, or your existing AL repository. Trust the folder when VS Code asks.
  3. Open the BC ALM view in the Activity Bar, then pick one:
    • New Project from Template… creates and initializes a new project.
    • Add BC ALM to This Repository… adds the template to an existing repo.
    • Add Template Source… / Browse Templates… adds your company's template or a catalog.
  4. Check the Components view. It shows your agents, skills and prompts. When the template changes, they show update available.

Projects created before the extension existed: run Record Template Baseline once.

Full guide: docs/vscode-extension.md

Requirements

  • VS Code 1.95 or newer, in a trusted workspace. BC ALM is disabled in Restricted Mode and in virtual workspaces, because it runs local tools.
  • git on PATH.
  • PowerShell (pwsh 7 recommended; Windows PowerShell 5.1 works). It is needed to create a project or add BC ALM to one, because those steps run the template's setup scripts.
  • GitHub CLI (gh), signed in with gh auth login. It is needed for pull requests, forks, creating templates and fork sync. Reading public templates works without it.
  • GitHub Copilot to actually use the agents, skills and prompts in your project.

Commands

All commands are in the Command Palette under BC ALM: and in the BC ALM views.

Area Main commands
Start New Project from Template… · Add BC ALM to This Repository… · Record Template Baseline
Updates Check for Template Updates · Apply All Safe Updates · Update from Template · Merge Template Changes (3-way) · Skip This Update · Reset to Template Version
Choose components Choose Components… · Install / Disable / Enable Component · Always Keep My Version · Switch Active Templates…
Template sources Add Template Source… · Browse Templates… · Change Version / Branch… · Share Template Sources with My Team…
Your own template Copy a Template into My Own Repository… · Create New Template… · Save to My Template… · Pull Upstream Updates into My Template
Contribute Contribute to Source Template (Pull Request)… · Add New Template to This Repository… · Create Variant… · Release Version…
Authoring New Agent / Skill / Prompt / Instruction… · Validate Copilot Customizations · Review This Customization with Copilot
Guidance Open Best-Practices Guide · Refresh What's New

Settings

Setting Purpose
bcAlm.templateSources Template repositories (URL or local path), the path of a catalog template, the ref (branch, tag or latest) and an optional upstream to sync from.
bcAlm.components.groupBy Group the Components view by template, by kind, or automatically.
bcAlm.checkForUpdatesOnStartup Check for template updates when a project opens.
bcAlm.fetchIntervalMinutes Minimum minutes between automatic fetches.
bcAlm.powershellPath PowerShell executable for project creation (user settings only).
bcAlm.validation.enabled Diagnostics for customization files.
bcAlm.whatsNew.feedUrl / bcAlm.whatsNew.keywords The Copilot updates feed and its filter.

Privacy and security

  • No telemetry. BC ALM does not collect or send usage data.
  • Network access:
    • It contacts only the template repositories you configure, using your own git and gh credentials.
    • It also reads the What's New feed (bcAlm.whatsNew.feedUrl, the GitHub Changelog by default).
  • It runs local tools: git, the GitHub CLI and PowerShell. When you create or add a project, it runs the template's own setup scripts (scripts/*.ps1), so only use templates you trust.
  • Credentials: tokens and user:password@ parts of URLs are masked before anything is written to the BC ALM output channel or shown in a message.
  • Writes stay inside the project folder. Writes to the project are refused if a path resolves outside it.
  • bcAlm.powershellPath is a machine-level setting, so a repository's workspace settings cannot change which executable runs.

Support

  • Questions, bugs and ideas: GitHub issues.
  • Security problems: report them privately, as described in SECURITY.md.
  • Contributing: see CONTRIBUTING.md.
  • Release notes: CHANGELOG.
  • License: MIT.
  • Like BC ALM? You can support its development through GitHub Sponsors, or with a ⭐ on the repository.
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft