Guide 01

Introduction

These guides are written in English. · Building with an AI assistant?

Point your LLM at the docs so it understands them faster — it can also explain or translate the guides for you. Load the full documentation as a single file, or add any page's Markdown by appending .md to its URL. Works with Cursor (Add Docs), Claude, ChatGPT, Copilot and other LLMs.

The problem

GeneXus patterns (Work With, and many third-party patterns) have rich, IDE-integrated editors in the GeneXus desktop IDE — dynamic dropdowns, computed node captions, context commands. When GeneXus pattern instances are edited inside KB Editor (the GeneXus visual editor for VS Code / VSCodium), those smarts are not built in: KB Editor knows the pattern schema (from the pattern's *Instance.xml) but not the dynamic behavior, which in the IDE is implemented in .NET.

The solution

KB Editor exposes a PatternExtensionAPI. A small VS Code extension — written by the pattern's provider — registers providers that supply that dynamic behavior. KB Editor then calls those providers while the user edits, giving pattern instances the same first-class experience they have in the GeneXus IDE.

A few mechanisms cover the editor behavior of essentially every pattern:

  1. Custom Types — compute the valid values for a custom(<Id>) property on demand.
  2. Captions — override a node's label based on its data.
  3. Custom Actions — add context commands to nodes.
  4. Node icons — supply a node's icon as a bundled resource.

If the provider extension is not installed, KB Editor still works (graceful degradation): dropdowns become plain text, captions fall back to defaults, and there are no extra commands.

Who this is for

  • Pattern vendors who want their pattern to feel native in KB Editor.
  • GeneXus teams porting a pattern's editor behavior from .NET to TypeScript.

Glossary

Term Meaning
KB Editor GeneXus visual editor for VS Code / VSCodium (kbbridge.genexus-visual-editor).
Pattern A GeneXus pattern (e.g. Work With) defined by .Pattern + *Instance.xml.
Pattern instance A .gxPattern file: a tree of pattern element types over a transaction/object.
Custom type A property type custom(<Id>) whose values are computed by a provider.
Caption The label shown for a node in the editor tree.
Command / action A context action attached to a node.
SDK @kbbridge/genexus-sdk — the TypeScript contract that mirrors the GeneXus .NET pattern SDK.

Next: GeneXus pattern concepts.