用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/umbraco/Umbraco-CMS-Backoffice-Skills --skill umbraco-sections命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | umbraco-sections |
| description | Implement sections in Umbraco backoffice using official docs |
| version | 1.0.0 |
| location | managed |
| allowed-tools | Read, Write, Edit, WebFetch |
Sections are top-level navigation items in the Umbraco backoffice that appear alongside default options like Content, Media, and Settings. They serve as a home for custom content and functionality, providing a blank canvas that can be extended with dashboards, sidebars, and section views. Sections require permission configuration for user groups to access them.
Always fetch the latest docs before implementing:
The Umbraco source includes a working example:
Location: /Umbraco-CMS/src/Umbraco.Web.UI.Client/examples/section-sidebar-menu-expansion/
This example demonstrates section sidebar menu expansion patterns. Study this for sidebar customization.
If you need to explain these foundational concepts when implementing sections, reference these skills:
Context API: When implementing section contexts or explaining how section extensions communicate
umbraco-context-apiConditions: When implementing permissions, user group access, visibility controls, or section restrictions
umbraco-conditionsRouting: When implementing pathnames, navigation patterns, URLs, or section routing
umbraco-routing{
"type": "section",
"alias": "My.Section",
"name": "My Section",
"meta": {
"label": "My Section",
"pathname": "my-section"
}
}
export const manifests = [
{
type: "section",
alias: "My.CustomSection",
name: "Custom Section",
meta: {
label: "Custom",
pathname: "custom-section"
},
conditions: [
{
alias: "Umb.Condition.SectionUserPermission",
match: "My.CustomSection"
}
]
}
];
export const manifests = [
{
type: "section",
alias: "My.Section",
name: "My Section",
meta: {
label: "My Section",
pathname: "my-section"
}
},
{
type: "dashboard",
alias: "My.Section.Dashboard",
name: "My Section Dashboard",
element: () => import('./dashboard.element.js'),
meta: {
label: "Welcome",
pathname: "welcome"
},
conditions: [
{
alias: "Umb.Condition.SectionAlias",
match: "My.Section"
}
]
}
];
export const manifests = [
{
type: "section",
alias: "My.Section",
name: "My Section",
meta: {
label: "My Section",
pathname: "my-section"
}
},
{
type: "sectionSidebarApp",
alias: "My.Section.Sidebar",
name: "My Section Sidebar",
element: () => import('./sidebar.element.js'),
conditions: [
{
alias: "Umb.Condition.SectionAlias",
match: "My.Section"
}
]
}
];
"section"To enable a custom section for users:
That's it! Always fetch fresh docs, keep examples minimal, generate complete working code.
Run tests from skill examples and generate a report (project)
Validate links and references in SKILL.md files using deterministic scripts
Umbraco backoffice extension customisation - complete working examples showing how extension types combine