Skip to main content
Version: 0.7.0

Upgrades

This page is the canonical upgrade contract for Agent Layer.

It defines:

  • upgrade event categories,
  • compatibility guarantees,
  • release-versioned migration rules,
  • and the supported OS/shell capability matrix.

If guidance in other docs is shorter or summarized, this page is the source of truth.

In this page

Upgrade event model

Agent Layer classifies upgrade-impact changes into three categories:

CategoryMeaningExpected user action
safe autoLow-risk change that can be applied automatically without manual migration steps.Usually none beyond normal verification (al doctor, test/lint workflow).
needs reviewChange is likely safe but may interact with local customizations.Review prompts/diffs and choose whether to apply updates.
breaking/manualChange cannot be safely auto-migrated or may require explicit user decisions.Follow release migration notes before proceeding.

Qualification guidance:

  • safe auto: formatting-only docs changes, additive defaults, or internal behavior fixes that do not require user input.
  • needs review: template updates where local edits may conflict, workflow/instruction rewrites, generated file ownership boundary changes.
  • breaking/manual: command/flag deprecations, required config schema moves, or behavior changes that require an explicit user-controlled migration step.

Current enforcement status:

  • In Phase 10, this model is a published contract and release-labeling policy.
  • Automated enforcement in CLI flows is planned for later upgrade-lifecycle phases.

Compatibility guarantees

Agent Layer follows a sequential release-line guarantee:

  • Guaranteed path: upgrade from N-1 to N release lines only.
  • Example: 0.6.x to 0.7.x is guaranteed.
  • Non-guaranteed path: skipping release lines (for example 0.5.x to 0.7.x).

What "guaranteed" means:

  • We provide documented migration guidance for the guaranteed path.
  • We classify known upgrade-impact changes using the event model on this page.
  • We aim to keep al init-based upgrade workflows predictable for that one-step path.

What it does not mean:

  • It is not a guarantee that every repo custom state can be auto-migrated.
  • It does not guarantee one-step upgrades for skipped release lines.

Migration rules by release

Migration rules are published per release and versioned with docs/release notes.

Target releaseSupported source release linesEvent summaryRequired manual actionsNotes
v0.7.00.6.xbreaking/manual: Windows support removed (installer, launcher, release targets, code paths). safe auto: upgrade path hardening (pin recovery, init dispatch bypass, download progress/errors), upgrade contract published.Windows users: Windows is no longer supported; remove al-install.ps1 and open-vscode.bat if present and migrate to macOS or Linux. All other users: No manual action required; run al init --version v0.7.0 to upgrade.First release with published upgrade contract.

How this table is maintained:

  • Add or update a row for every release.
  • If a release includes breaking/manual items, list exact required actions.
  • If no special migration is needed, keep the row explicit to avoid ambiguity.

OS and shell capability matrix

Windows is not supported.

SurfacemacOSLinuxNotes
Install via HomebrewSupportedSupportedRequires Homebrew setup for platform.
Install via al-install.shSupportedSupportedRequires curl and sha256sum or shasum.
al CLI core commandsSupportedSupportedIncludes init, sync, doctor, client launch commands.
VS Code launchersSupportedSupportedmacOS: .app/.command; Linux: .desktop/.sh.
Shell completion: bashSupportedSupportedal completion bash --install.
Shell completion: zshSupportedSupportedal completion zsh --install; may require fpath setup.
Shell completion: fishSupportedSupportedal completion fish --install.

Commitment level and limitations

This contract is intended to be explicit without over-promising:

  • We commit to best-effort adherence to this model and guarantee scope.
  • If we cannot fully meet a guarantee in a specific release, we will document the limitation clearly in release notes and migration guidance.
  • When in doubt, prefer explicit communication over silent assumptions.