用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/umbraco/Umbraco-CMS-Backoffice-Skills --skill umbraco-header-apps命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
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
正在显示 SKILL.md
基于 SOC 职业分类
| name | umbraco-header-apps |
| description | Implement header apps in Umbraco backoffice using official docs |
| version | 1.0.0 |
| location | managed |
| allowed-tools | Read, Write, Edit, WebFetch |
Header apps are single-purpose extensions that appear in Umbraco's top navigation bar, positioned next to the user profile avatar and global search. They provide globally accessible functionality to the Backoffice, such as quick links to documentation, tools, or custom interactive features. Header apps can be simple links or custom interactive components that open modals or perform actions.
Always fetch the latest docs before implementing:
If you need to explain these foundational concepts when implementing header apps, reference these skills:
Umbraco Element: When implementing interactive header apps, explaining UmbHeaderAppButtonElement, or custom elements
umbraco-umbraco-elementContext API: When implementing context access, modals, notifications, or services from header apps
umbraco-context-apiControllers: When implementing controllers, action handlers, click handlers, or header app behavior
umbraco-controllers{
"type": "headerApp",
"alias": "My.HeaderApp",
"name": "My Header App",
"kind": "button",
"meta": {
"label": "Documentation",
"icon": "icon-help",
"href": "https://docs.umbraco.com/"
}
}
export const manifests = [
{
type: "headerApp",
alias: "My.Interactive.HeaderApp",
name: "My Interactive Header App",
element: () => import('./header-app.element.js'),
meta: {
label: "Tools",
icon: "icon-tools"
}
}
];
import { html, customElement } from '@umbraco-cms/backoffice/external/lit';
import { UmbHeaderAppButtonElement } from '@umbraco-cms/backoffice/header-app';
@customElement('my-header-app')
export class MyHeaderAppElement extends UmbHeaderAppButtonElement {
#onClick() {
// Handle click - open modal, navigate, etc.
console.log('Header app clicked!');
}
render() {
return html`
<uui-button
@click="${this.#onClick}"
label="${this.manifest?.meta?.label}"
compact
>
<uui-icon name="${this.manifest?.meta?.icon}"></uui-icon>
</uui-button>
`;
}
}
export ;
That's it! Always fetch fresh docs, keep examples minimal, generate complete working code.