Feature matrix

Which surface offers each ubCode feature, how mature it is, and what it does on a private project without a license.

  • Where names the surfaces: the VS Code extension, the ubc command line (CLI), the MCP server (ubc serve mcp), and any editor with a Language Server Protocol client (ubc serve lsp, see Use ubCode from any editor).

  • The levels are defined on Maturity levels.

  • Without a license summarises What works without a license, which has the details and the limits. An active license, commercial or open source, unlocks every feature. “As the surface” means the feature follows the rules of the command or editor that reads the project.

Stable

Stable

Feature

Where

Without a license

Diagnostics and linting in the editor

VS Code and any LSP editor (ubc serve lsp): each open file’s own findings as you type — parse and markup, the field, link-value, dynamic-function and variant checks of its needs, and the marker warnings of an open source file that codelinks traces; VS Code only: the findings that need the project index (references, dead links, schemas.json rules), in its Diagnostics view

Full

Hover, completion and navigation: definitions, references, document symbols, document links

VS Code; any LSP editor, apart from the need card and the image preview on hover (VS Code only)

Full

Quick-fixes (code actions)

VS Code; any LSP editor

As the editor

Formatting in the editor

VS Code; any LSP editor

Full

Semantic highlighting

VS Code; any LSP editor

As the editor

Markdown (MyST) parsing

VS Code; any LSP editor; CLI; MCP

As the surface

Intersphinx

VS Code; any LSP editor; CLI (ubc intersphinx, and every command that reads the project)

ubc intersphinx: no license needed; otherwise as the surface

Live preview

VS Code

Limited

Needs Index view and Needs Json view

VS Code

Limited

Needs graph view

VS Code

Search limited

Site Map, Diagnostics and Std Referencing views

VS Code

As the editor

Schema validation

VS Code (its Diagnostics view) and ubc check (as diagnostics); CLI (ubc schema validate); any LSP editor: the field-level schema constraints only

CLI: refused

Variants

VS Code; any LSP editor; CLI; MCP

As the surface

Linting from the command line

CLI (ubc check, ubc build index)

Limited; ubc check --per-file refused

Listing the documents a project indexes

CLI (ubc build list-documents)

Limited

needs.json export

CLI (ubc build needs)

Limited

needs.json validation

CLI (ubc build validate-json)

No license needed

Project scaffolding

VS Code (command); CLI (ubc quickstart)

CLI: no license needed

Project scripts

CLI (ubc script)

No license needed

License management

VS Code (Home view); CLI (ubc license)

No license needed

Shell completions, configuration dump, cache cleaning

CLI (ubc completions, ubc config, ubc clean)

No license needed

Beta

Beta

Feature

Where

Without a license

MCP server: project tools and documentation tools

MCP (ubc serve mcp, also registered by the VS Code extension)

Documentation tools only

Query: filter, Cypher and reference search

VS Code (Needs Index view filter); CLI (ubc query filter, ubc query cypher, ubc query search); MCP (get_graph_schema, query_cypher, search_references, resolve_reference)

CLI and MCP: refused; Needs Index view: limited

Reports (Jinja templates)

VS Code (Reports view and preview); CLI (ubc report)

Limited

Diff and impact analysis

CLI (ubc diff, ubc diff git)

Refused

Codelinks (tracing source code)

VS Code; CLI; MCP

As the surface

Test reports

VS Code; any LSP editor; CLI; MCP

As the surface

Formatting from the command line

CLI (ubc format)

Refused

CLI skills for AI agents

CLI (ubc agent-skill)

No license needed

HTML site

CLI (ubc build html)

Limited

PDF

CLI (ubc build pdf)

Limited

External link check

CLI (ubc build linkcheck)

Refused

Alpha

Alpha

Feature

Where

Without a license

Report insights: reports rendered for a need, with Cypher queries

VS Code (insight CodeLens, Reports view); CLI (the report command, with an insight’s name and --need)

Limited

Experimental

Experimental

Feature

Where

Without a license

Pharaoh, the agentic engineer: ubc agent, Pharaoh’s engine

CLI (ubc agent)

Limited; some verbs need no license

Pharaoh’s VS Code panels: Pharaoh Agent, Pharaoh Workflows, Pharaoh Gaps, Pharaoh Intent from Code, Pharaoh Changes

VS Code

As the commands they run

Intent from Code (ubc agent reverse)

CLI; VS Code

Limited; some verbs need no license

Change requests (ubc agent change)

CLI; VS Code

Limited

Quality reviews (ubc agent verdict-check, verdict-submit, review-brief)

CLI; VS Code

Limited

Reference-targets index

CLI (ubc build targets)

Limited

Pharaoh’s chat entry point (@pharaoh)

VS Code (Copilot Chat)

As the editor