umbraco-dynamic-root

Generate Umbraco backoffice extension manifests for dynamic root origins and query steps.

4|Updated Mar 6, 2026
One-click install
npx skills add https://github.com/albanist/umbraco_CLI --skill umbraco-dynamic-root-albanist
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: umbraco-dynamic-root
Source: https://github.com/albanist/umbraco_CLI/tree/main/skills/extensions/umbraco-dynamic-root
Command: npx skills add https://github.com/albanist/umbraco_CLI --skill umbraco-dynamic-root-albanist

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the need for more flexible and context-aware content selection in Umbraco by enabling dynamic starting points and navigation steps for content pickers.

Core Features & Use Cases

  • Dynamic Root Origins: Define custom starting points for content pickers beyond fixed nodes (e.g., current page, site root, nearest ancestor of a specific type).
  • Dynamic Root Query Steps: Implement custom navigation logic from the origin to find desired content (e.g., find nearest ancestor, get children of a specific type).
  • Use Case: Configure a content picker on a page template to automatically start from the site's root and then navigate to the nearest ancestor of type 'Blog' to select a blog post.

Quick Start

Use the umbraco-dynamic-root skill to create a manifest for a dynamic root origin that starts from the current page being edited.

Frequently Asked Questions about umbraco-dynamic-root

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create dynamic starting points for Umbraco content pickers?

You create dynamic starting points by generating Umbraco backoffice extension manifests for dynamic root origins using TypeScript, allowing you to define flexible, context-aware starting points like the current page or nearest ancestor.

What are dynamic root query steps in Umbraco and how do they work?

Dynamic root query steps in Umbraco implement custom navigation logic from a defined origin to find desired content, enabling actions like finding the nearest ancestor or getting children of a specific content type.

Can I configure a content picker to automatically start from the site root in Umbraco?

Yes, you can configure a content picker to start from the site root by defining a dynamic root origin in your TypeScript manifest, then adding query steps to navigate to specific content types.

Does implementing dynamic roots in Umbraco require backend C# code?

Yes, implementing dynamic roots requires backend C# implementation for custom logic, while the frontend configuration and extension manifests are defined using TypeScript and Umbraco's extension registry types.

When do I need dynamic roots for my Umbraco content selection?

You need dynamic roots when fixed content nodes are insufficient for content selection, requiring context-aware starting points and custom navigation logic to find specific content like nearest blog ancestors.