SuperAPI AI 工具集

astro-7

前端与建站

查看项目

更新于 10-26 16:23

技能介绍

用途

Astro 7 技能用于在构建 Astro 7 网站、选择输出模式、配置中间件或从 Astro 5/6 升级时提供指导。它面向内容驱动型网站,例如博客、文档站和营销站点,也支持需要按需渲染的应用、仪表盘和认证场景。

主要能力

该技能覆盖以下内容:

  • 初始项目搭建与从 Astro 5/6 的迁移,包括破坏性变更和 Node 22.12+ 要求。
  • 输出模式选择:static(默认,所有页面在构建时预渲染)、server(所有页面按需渲染),以及混合模式(并非 output 的取值,而是 static 或 server 配合逐路由 export const prerender)。
  • 中间件配置,用于认证、重定向和响应头等横切关注点。
  • 路由:基于文件的路由(src/pages/ 直接映射 URL)、动态路由([slug].astro、[...all].astro)、逐路由 prerender、以及 src/pages/ 下的 .ts/.js 端点作为 API 路由。
  • Astro 7 新特性:统一开发运行时(开发与生产一致)、Vite 环境 API(Vite 8)、单一 Rust 编译器(移除 Go 编译器,对 .astro 文件进行严格 HTML 解析,未闭合标签会报错而非静默自动修正)、实时内容集合、内置字体 API(稳定)、CSP 支持(稳定,基于哈希并配合 Astro.csp 运行时 API)、Cloudflare Workers 一等支持(开发时使用 workerd 运行时)、路由缓存(7.0 稳定,顶层 cache 加 routeRules,Astro.cache.set({ maxAge, swr, tags }))、高级路由(7.0,可选 src/fetch.ts 入口,astro/fetch、astro/hono)。

使用方式

该技能规定了一套强制性的智能体工作流:在任何实现之前,并行启动 3 个智能体,每个 Agent 调用各带一个名称:

  • fuse-ai-pilot:explore-codebase — 分析现有路由、布局和配置
  • fuse-ai-pilot:research-expert — 通过 Context7/Exa 核实最新的 Astro 7 文档
  • mcp__context7__query-docs — 检查 v6→v7 的破坏性变更

实现之后,运行 fuse-ai-pilot:sniper 进行验证。

技能内提供了参考指南,按需查阅:初始设置见 installation.md,路由模式见 routing.md,输出配置见 output-modes.md,中间件设置见 middleware.md,astro.config.ts 见 config.md,Astro 7 新特性见 new-features.md,完整项目设置见 templates/basic-setup.md,配置示例见 templates/config-example.md。

最佳实践

  • 默认使用 output: 'static',仅在需要时添加 server。
  • 使用逐路由 prerender 实现细粒度的混合控制(output 只接受 'static' | 'server',没有 'hybrid' 取值)。
  • 用中间件处理横切关注点:认证、重定向、响应头。
  • 无需编译器标志——Rust 编译器现在是唯一的编译器(Go 已移除);注意未闭合标签会触发严格 HTML 解析错误。
  • 使用内置稳定的 security.csp(基于哈希,外加 Astro.csp 运行时 API)而非自定义响应头。
  • 需要 Node 22.12+,不支持奇数版本 Node;保持稳定的 TypeScript 工具链,原生 tsgo 编译器可能使 astro check/typecheck 以不透明的方式失败(详见 installation.md)。

适用场景

  • 构建新的内容驱动型网站或博客
  • 从 Astro 6 迁移到版本 7
  • 配置 static 或 server 输出(混合 = 逐路由 prerender)
  • 为认证或重定向设置中间件
  • 利用新的 Rust 编译器服务大型站点
  • 实现内容安全策略(CSP)响应头

限制

该技能不覆盖以下主题,它们各自有独立技能:Content Layer API 细节(astro-content)、Server Actions(astro-actions)、Islands 水合指令(astro-islands)、UI 框架集成(astro-integrations)、部署适配器(astro-deployment)。