astro
Astro
Overview
Implement production-ready Astro work with docs-first defaults and minimal guesswork. Start with the general workflow, then use the blog-focused section when the task is specifically a blog or content site.
Read references/astro-playbook.md for current versions, commands, API patterns, and blog-specific implementation details.
General Workflow
- Confirm runtime and rendering model.
- Identify whether the task is static-first, mixed mode, or server-first.
- If on-demand rendering is required, ensure an adapter is installed and routes opt out of prerendering (or use server output mode).
- Set up or normalize project baseline.
- Use
create astro@latestfor new projects. - Keep
astro.config.*explicit (site, integrations, output mode as needed). - Prefer
astro addfor official integrations.
- Implement pages and components with Astro-first patterns.
- Keep framework islands minimal and purposeful.
- Use server/client boundaries intentionally.
- Avoid adding framework complexity when plain Astro solves the task.
- Use the Content Layer API for structured content.
- Define collections in
src/content.config.*with Zod schemas. - Query with
getCollection(),getEntry(),getEntries(), and render entries withrender(). - Prefer content collections over ad-hoc glob imports for long-term maintainability.
- Handle media with
astro:assets.
- Prefer local images in
src/when processing/optimization is needed. - Use
<Image />or<Picture />when possible and always providealt. - Configure remote image authorization before transforming external images.
- Add integration-level SEO and content outputs when relevant.
- Configure RSS and sitemap for content sites.
- Ensure
siteis configured before generating canonical URLs, RSS links, or sitemap entries.
- Validate and verify.
- Run
astro checkand build commands. - Verify routes, metadata, feed output, and sitemap artifacts.
- Prefer small, testable increments rather than broad rewrites.
Blog-Focused Mode
Use this mode when building a blog, docs site, or other content-heavy publishing workflow.
- Model posts with collections and schema validation.
- Include fields such as
title,description,pubDate,draft,tags, and optional cover image data.
- Build list, post, and taxonomy routes from collection queries.
- Filter drafts for production.
- Sort by publish date descending.
- Generate
getStaticPaths()for static post pages, or fetch by params in SSR flows.
- Add publishing integrations.
- Generate RSS feed endpoints with
@astrojs/rss. - Add sitemap integration and tune include/exclude behavior for search crawl quality.
- Improve editorial workflow.
- Add MDX support only when component-rich content is required.
- Keep Markdown defaults simple for faster writing and lower maintenance.
- Optimize article media and accessibility.
- Use structured cover images from content schema.
- Ensure meaningful alt text.
Output Expectations
When delivering Astro work:
- State chosen rendering mode and adapter assumptions.
- Show modified files and why each change exists.
- Include run/validation commands (
astro dev,astro check,astro build) when relevant. - Call out remaining risks (content schema gaps, image source authorization, deployment adapter constraints).
Reference
references/astro-playbook.md: Up-to-date Astro facts (verified date, versions, APIs, blog patterns, and source links).
More from sebastiaanwouters/dotagents
flyctl
Deploy and manage apps on Fly.io using flyctl CLI. Triggers on: fly deploy, fly.io, flyctl, deploy to fly. Handles launch, deploy, scale, secrets, volumes, databases.
79teacher
Guide learning and deep understanding through proven methodologies (Socratic, Feynman, Problem-Based). Use when user says "help me understand", "teach me", "explain this", "learn about", "socratic", "feynman", "problem-based", "I don't understand", "confused about", "why does", or wants to truly grasp a concept.
77chef
Telegram communication for AI agents. ALL methods are BLOCKING. Use for user interviews, status updates, and feedback collection.
34bitwarden
Retrieves API keys, passwords, secrets from Bitwarden vault using bw CLI. Triggers on missing env variables, missing API keys, missing secrets, "secret not found", "env not set", or "use bw".
29librarian
Use for code research that needs dependency internals, upstream implementation examples, or external prior art. Always delegate to a subagent that investigates with opensrc and web search, then return only distilled findings, versions, paths, and links.
29frontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications. Generates creative, polished code that avoids generic AI aesthetics.
28