用途
本技能用于在 Roots 生态项目中导航,帮助使用者在不将整个技术栈载入上下文的前提下定位所需资料。它从最小的相关参考入手,仅在用户实际实现或调试变更时,才加载一个任务手册(playbook)。
主要能力
技能按用户所处层级提供对应参考文件:
- Bedrock 项目搭建、.env、Composer、config/application.php、web/app/、mu-plugins:读取 references/bedrock.md
- Sage 模板、Blade、组件、composers、app/、resources/views/、Vite、编辑器资源:读取 references/sage.md
- Acorn 启动、服务提供者、路由、WP-CLI、主题模板之外的 Blade 渲染:读取 references/acorn.md
- Trellis 配置、部署、钩子、trellis CLI、部署期间的 Sage 构建步骤:读取 references/trellis.md
- WordPress 包分发、WP Packages、roots/wordpress-full、roots/wordpress-packager、roots/wp-config、私有插件工作流或 Composer 补丁:读取 references/packaging-and-distribution.md
- Trellis CLI、roots/setup-trellis-cli、GitHub Actions 部署或共享 Roots 支持辅助工具:读取 references/tooling-and-ci.md
- Acorn 扩展包(如 mail、user roles、post types、prettify、FSE helper、llms.txt 或 AI):读取 references/acorn-extensions.md
- 非核心 Roots 包的深入分析:先匹配上述包索引,再加载关联的 package-*.md 深入文件
- 跨栈归属或架构:读取 references/integration-patterns.md
- Roots 包中可复用的 provider/config/command/view 模式:读取 references/acorn-package-patterns.md
- 关于来源覆盖、技能包含内容或完整度的问题:读取 references/source-coverage.md
- 指南冲突或权威性不确定:读取 references/source-priority.md
- 整个生态的总体导览:读取 references/ecosystem-map.md
若用户正在实现,则在子系统参考之后仅加载一个手册:
- Bedrock 安装或配置变更:references/playbook-bedrock-setup.md
- Sage 组件、composer、模板或视图工作:references/playbook-sage-components-and-composers.md
- Acorn provider、路由、WP-CLI、包式扩展或自定义 Blade 渲染:references/playbook-acorn-service-providers-and-blade.md
- Trellis 部署或构建钩子工作:references/playbook-trellis-deploy-and-build.md
- 引导或梳理完整 Roots 项目栈:references/playbook-roots-project-bootstrap.md
- 构建或提取可复用 Acorn 包:references/playbook-acorn-package-authoring.md
- 通过 GitHub Actions 部署 Trellis:references/playbook-trellis-github-actions.md
默认避免加载所有参考。本技能按渐进式披露设计。
使用方式
工作流如下:
- 从 Roots 专属来源入手,而非通用 WordPress 或通用 Laravel 建议。
- 当用户询问生态完整度或来源可追溯性时,加载 references/source-coverage.md。
- 如需解决冲突,加载 references/source-priority.md。
- 根据用户主要任务加载一个子系统参考。
- 若任务面向实现,加载一个手册。
- 仅在 Acorn 有意镜像 Laravel 行为之处(如 providers、路由、中间件、控制器、包结构或 Blade 语法)使用 Laravel 文档。
- 工作流优先使用当前 Roots 文档,具体结构与示例优先使用当前 Roots 仓库代码。
导航地图包含:source-priority.md(权威顺序与冲突解决)、source-coverage.md(覆盖的源材料及深度)、ecosystem-map.md(整个技术栈概览)、bedrock.md、sage.md、acorn.md、trellis.md、packaging-and-distribution.md、tooling-and-ci.md、acorn-extensions.md、package-*.md(分发、工具与 Acorn 扩展包的逐包深入)、integration-patterns.md(层间归属)、acorn-package-patterns.md(来自 Roots 生态示例的包实现模式)。
适用场景
示例请求包括:
- “添加一个 Composer 管理的插件,并为 staging 更新 Bedrock 配置。”
- “构建一个 Sage Blade 组件,并用 composer 绑定视图数据。”
- “在自定义主题中启动 Acorn 并注册服务提供者。”
- “在 Acorn 驱动的项目中用 Blade 渲染自定义区块。”
- “将 Sage 资源构建接入 Trellis 部署钩子。”
- “通过 GitHub Actions 设置 Trellis 部署。”
- “解释 roots/wordpress-full、WP Packages 和 Bedrock 之间的关系。”
- “向现有 Acorn 项目添加 acorn-mail 或 acorn-prettify。”
- “展示本技能实际覆盖哪些 Roots 仓库以及位置。”
- “解释 Bedrock、Sage、Acorn 和 Trellis 如何在一个项目中协同。”
限制
- 不要将其视为通用 WordPress 技能。
- 除非 Acorn 文档或代码确认,否则不要假设 Laravel 行为适用。
- 不要默认推荐 Trellis 用于所有部署;仅当项目已基于 Trellis,或自托管 Roots 基础设施是技术栈的一部分时使用。
- 不要假设每个 Roots 仓库都值得拥有独立的深入参考文件;除非包具有独特的操作行为,否则将包特定细节保留在共享参考中。
- 不要无故跨层移动职责:Bedrock 负责项目结构与配置引导;Sage 负责主题实现及面向主题的 Blade/Vite 约定;Acorn 负责 Laravel 风格的应用容器与应用抽象;Trellis 负责配置与部署编排。