重要前提
安装AI Skills的关键前提是:必须科学上网,且开启TUN模式,这一点至关重要,直接决定安装能否顺利完成,在此郑重提醒三遍:科学上网,科学上网,科学上网。查看完整安装教程 →
npx skills add https://github.com/oimiragieo/agent-studio --skill astro-expert在审查或编写代码时,请遵循以下准则:
构建与部署
在审查或编写代码时,请遵循以下准则:
组件开发
.astro 文件。在审查或编写代码时,请遵循以下准则:
内容管理
.md)或 MDX(.mdx)文件。在审查或编写代码时,请遵循以下准则:
数据获取
Astro.props 向组件传递数据。广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
getStaticPaths() 以在构建时获取数据。Astro.glob() 高效处理本地文件。在审查或编写代码时,请遵循以下准则:
在审查或编写代码时,请遵循以下准则:
核心原则
此专家技能整合了 1 项独立技能:
defineCollection() + 模式验证会在构建时捕获 frontmatter 错误,而不是在生产环境的运行时。client:load、client:idle 或 client:visible;绝不依赖默认值;错误的水合策略会破坏 Astro 的性能模型。astro:assets 的 <Image> 或 getImage();原始的 <img> 标签会跳过宽度/高度推断、格式转换和 LCP 优化。Astro.glob() 用于类型化内容 — 它返回无类型数据;对所有结构化内容使用内容集合 API(getCollection()、getEntry())以获得完整的 TypeScript 支持。| 反模式 | 失败原因 | 正确方法 |
|---|---|---|
| 对纯静态 UI 使用 React/Vue | 打包了不必要的 JS;破坏了 Astro 的零 JS 默认特性 | 对静态内容使用 .astro 组件 |
使用原始 <img> 标签而非 <Image> | 错过了 LCP 优化、格式转换、懒加载 | 始终使用来自 astro:assets 的 <Image> |
| 没有 Zod 模式的内容 | Frontmatter 错误在运行时而非构建时暴露 | 在 src/content/config.ts 中定义模式 |
对所有内容使用 client:load | 在页面加载时加载所有孤岛 JS;破坏了部分水合 | 对首屏下方的孤岛使用 client:idle 或 client:visible |
对结构化内容使用 Astro.glob() | 返回无类型数据;没有模式验证 | 使用来自 astro:content 的 getCollection() |
开始前:
cat .claude/context/memory/learnings.md
完成后: 记录发现的任何新模式或例外情况。
假设中断:您的上下文可能会重置。如果它不在记忆中,那就没有发生过。
每周安装
48
代码仓库
GitHub 星标
22
首次出现
2026年1月27日
安全审计
安装于
github-copilot45
opencode44
kimi-cli43
gemini-cli43
amp43
codex43
When reviewing or writing code, apply these guidelines:
Build and Deployment
When reviewing or writing code, apply these guidelines:
Component Development
When reviewing or writing code, apply these guidelines:
Content Management
When reviewing or writing code, apply these guidelines:
Data Fetching
When reviewing or writing code, apply these guidelines:
When reviewing or writing code, apply these guidelines:
Key Principles
This expert skill consolidates 1 individual skills:
defineCollection() + schema validation catches frontmatter errors at build time, not at runtime in production.client:load, client:idle, or client:visible intentionally; never rely on defaults; wrong hydration strategy defeats Astro's performance model.<Image> or getImage() from astro:assets; raw <img> tags skip width/height inference, format conversion, and LCP optimization.| Anti-Pattern | Why It Fails | Correct Approach |
|---|---|---|
| Using React/Vue for static-only UI | Ships unnecessary JS; kills Astro's zero-JS default | Use .astro components for static content |
Raw <img> tags instead of <Image> | Misses LCP optimization, format conversion, lazy loading | Use <Image> from astro:assets always |
| Content without Zod schema | Frontmatter errors surface at runtime, not build time | Define schema in src/content/config.ts |
Before starting:
cat .claude/context/memory/learnings.md
After completing: Record any new patterns or exceptions discovered.
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.
Weekly Installs
48
Repository
GitHub Stars
22
First Seen
Jan 27, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykFail
Installed on
github-copilot45
opencode44
kimi-cli43
gemini-cli43
amp43
codex43
React视图过渡API使用指南:实现原生浏览器动画与状态管理
9,100 周安装
Agent Memory MCP:为AI智能体提供持久化记忆库,支持文档同步与搜索
642 周安装
Telegram Mini App 开发指南:从架构到TON区块链集成,构建8亿用户平台应用
646 周安装
ASO元数据优化指南:提升应用商店搜索排名与转化率的关键技巧
643 周安装
Python FastAPI 项目架构与最佳实践模式:企业级API开发指南
45 周安装
Android Kotlin 开发指南:MVVM架构、Jetpack Compose与最佳实践
640 周安装
REST API 设计指南与最佳实践 | 资源命名、版本控制、OpenAPI 文档
647 周安装
Astro.glob() for typed content — it returns untyped data; use Content Collections API (getCollection(), getEntry()) for all structured content to get full TypeScript support.client:load for everything | Loads all island JS on page load; defeats partial hydration | Use client:idle or client:visible for below-fold islands |
Astro.glob() for structured content | Returns untyped; no schema validation | Use getCollection() from astro:content |