Skip to content
Vector
Esc
↑↓navigate↵open⌘Jpreview
On this page

Understand Vector's configuration model

Connect Configuration Packages, Vector Configurations, runtime values, reusable extensions, Snapshot preflight, and OpenCode registration.

Vector defines and evaluates reusable OpenCode 2 configurations. The following concepts describe the path from authored source to host registration.

Authored and distributed values

Configuration Package is an ordinary ESM package that distributes one or more Vector Configurations. The package toolchain owns compilation, publication, installation, and version selection.

Vector Configuration is one complete OpenCode configuration defined and evaluated as a reusable unit. Its build(context) callback returns the Extension Plan for one activation.

OpenCode Plugin Entrypoint is the default-exported OpenCode Plugin.Plugin value through which OpenCode loads a Vector Configuration. defineVector() and a builder’s defineVector() return this value.

Activation inputs

Runtime Configuration is per-installation JSON supplied outside the Vector Configuration and interpreted through the Configuration Author’s Standard Schema. A builder opts in with runtimeConfig; validated values are available at context.runtimeConfig. Vector does not generate a fixed Runtime Configuration schema.

Context is the complete value available while extensions are assembled. It contains the validated Runtime Configuration, active directory, project identity, and any properties returned by computeContext.

Extension pipeline

Extension Definition is a reusable extension with a fixed identity whose remaining values are assembled from Context. The specific defineX helpers create these values.

Extension Plan is the ordered set of Extension Definitions selected by the Vector Configuration’s build(context) callback for one activation. It can also select supported defaults and Instruction Files.

Instruction File is a Configuration Package file selected as a source of Global Instructions, the shared instructions added to every agent available during activation. Vector preserves each agent’s own system before the Global Instructions.

Inline Skill supplies its content within the Vector Configuration. External Skill identifies content maintained outside the Vector Configuration. A Local Skill uses a directory on the same machine. A Managed Skill uses a remote source through a named manager.

Snapshot is the complete materialized set of OpenCode extensions assembled from the Extension Plan. Every Extension Definition other than an External Skill receives the same Context while it builds. Instruction Files resolve into Global Instructions, and Local Skills and Managed Skills resolve into concrete skill values before the Snapshot is complete.

Preflight checks the complete Snapshot for duplicate identities and required cross-extension relationships before any host transform is registered. Instruction File resolution, External Skill resolution, and preflight all complete before registration starts; any failure prevents every transform registration.

Registration applies the preflighted Snapshot to OpenCode host domains. Registration is sequential and is not rolled back if a later host operation fails.

Read Lifecycle for the full activation sequence. Use Extensions, Context, and Runtime Configuration for exact API contracts.