---
name: repo-blog-share-curator
description: Maintain this repository's bilingual Blogs section by adding or updating entries in data/blog_shares.json, then generating README.md, README.zh-CN.md, blogs/en/index.qmd, and blogs/zh/index.qmd. Use when the user provides technical blog posts, essays, announcements, or research writeups to share alongside the Awesome LLM Research Collections site.
---

# Repo Blogs Curator

Update together:
`data/blog_shares.json`
`README.md`
`README.zh-CN.md`
`blogs/en/index.qmd`
`blogs/zh/index.qmd`

Also update `_quarto.yml` only when blog render paths or website navigation change.

## Data Format

Add entries to `data/blog_shares.json` with these exact fields:

```json
{
  "slug": "stable-lowercase-slug",
  "date": "YYYY-MM-DD",
  "title_en": "Official or English title",
  "title_zh": "Localized Chinese title, or official title when better left untranslated",
  "description_en": "One concise English summary.",
  "description_zh": "一句简洁中文简介。",
  "blog_url": "https://example.com/post",
  "github_url": ""
}
```

Rules:
- Sort is generated by `date` descending; do not hand-sort generated README sections.
- `blog_url` is required.
- `github_url` is optional. Leave it empty when no official repository is linked by the blog.
- Keep summaries concise and source-grounded.

## Workflow

1. Verify the blog title, date, description, canonical blog URL, and any official GitHub URL.
2. Add or update the matching entry in `data/blog_shares.json`.
3. Check `.codex/project.local.json` for `conda_env`; run Python commands through `conda run -n <env> python ...`.
4. Generate README sections and blog index pages:

```bash
python scripts/sync_blog_shares.py --write
```

5. Validate generated blog content:

```bash
python scripts/sync_blog_shares.py
```

6. Validate the paper catalog still ignores blog sections:

```bash
python scripts/check_readme_qmd_sync.py
```

7. Render the website when navigation, render paths, or generated pages changed:

```bash
quarto render
```

## Output Expectations

- Keep Blogs separate from papers and notes.
- Do not hand-edit generated Blogs sections after running the sync script.
- Mention missing dates, ambiguous canonical URLs, unavailable GitHub links, or failed render clearly.
