Glossary

Comprehensive list of Divekit terms and definitions.

This glossary defines core Divekit terms used across Quick Start, Reference, and CLI docs.

TermDefinition
DivekitCommand-line tool for creating, distributing, and operating individualized programming assignments.
CLICommand Line Interface. The primary way to use Divekit (divekit ...).
Origin RepositorySource repository containing assignment template files and .divekit configuration.
DistributionNamed setup in .divekit/distributions/<name>/ that controls one rollout.
Distribution Config.divekit/distributions/<name>/config.json, the main runtime config for distribution commands.
TargetLogical repository target in a distribution (for example main or eval).
Main TargetStudent-facing code repository target (main).
Eval TargetEvaluation-pipeline repository target (eval) used for separated CI and evaluation flows.
Evaluation PipelineOptional paired main/eval model for separated CI and evaluation workflows. See Evaluation Pipeline.
LinkingAutomatic connection between paired targets (variables/tokens/trigger URLs, job-token scope, UUID pairing).
MemberUser account assigned to a distributed repository with a configured permission level.
Members FileJSON file referenced by members.path, usually version 2.0 with groups and uuid entries.
UUIDStable unique identifier used for one student/group repository pair across targets.
IndividualizationProcess of generating per-UUID content variants during distribution.
Variation Configvariation.json containing selectable object/relation/logic options.
Individualization Configindividualization.json containing delimiter, solution-deletion, warnings, file-manipulation and related rules.
Individuals Fileindividuals.json, generated state of concrete selections per UUID.
Remotes Fileremotes.json, generated mapping of UUIDs to created remote repositories/project IDs.
Placeholder / VariableToken in template files (for example $Vehicle$) replaced during individualization.
Host AliasNamed host entry in ~/.divekit/hosts.json used by distribution targets (remote).
ProviderBackend used for execution, for example gitlab, local, or simulated.
Dry RunPreview mode without remote changes (--dry-run, often via simulated provider).
Add Modedivekit distribute --add: only process new UUIDs/members, keep existing distributed repos.
Fresh Modedivekit distribute --fresh: reset distribution state files (remotes.json, individuals.json) before run.
Fetch CacheLocal repository cache populated by divekit fetch and reused by run/analysis commands.
ExtensionA program executed across fetched or pulled repositories, typically via divekit run. The current storage path is still .divekit/scripts/, but the user-facing term is extension.
PluginCI plugin switch in evaluation-pipeline templates, executed in the eval pipeline and managed as described in Plugins.
Variable Extensionsindividualization.json -> variableExtensions: token transformation rules (prefixes/suffixes/transformations). Not the same as runtime script extensions.
Injectdivekit inject command to scaffold default assets (CI templates, variation template, scripts).
Group LayoutStrategy for deriving main/eval groups (distribution-subgroups or legacy).