Files
awesome-coding-agents/templates
tiennm99andGitHub 5051274e52 feat: add 10 agents, fix renamed slugs, add GitHub Pages dashboard (#5)
- Add pi, OpenHands, warp, gpt-pilot, qwen-code, kilocode, onlook,
  dyad, trae-agent, copilot-cli (19 -> 29 tracked repos)
- Update renamed slugs to canonical owners (anomalyco/opencode,
  aaif-goose/goose, AntonOsika/gpt-engineer) with history key
  migrations so star deltas survive the rename
- Generate site/data.json each run and deploy site/ (interactive
  table + star-history chart) to GitHub Pages from the daily
  workflow, since GITHUB_TOKEN bot pushes cannot trigger a separate
  Pages workflow
2026-08-08 23:27:53 +07:00
..

# Awesome Coding Agents

> Curated ranking of AI agent coding tools, sorted by GitHub stars.
> Updated daily by GitHub Actions.

📊 **[Interactive dashboard with star-history charts →](https://tiennm99.github.io/awesome-coding-agents/)**

**Last updated:** {{.UpdatedAt}} · **Tracked:** {{.Total}} repos

| # | Repo | Stars | Δ7d | Language | Last push | Description |
|---|------|------:|----:|----------|-----------|-------------|
{{- range .Rows }}
| {{ .Rank }} | [{{ .NameWithOwner }}]({{ .URL }}) | {{ formatStars .Stars }} | {{ formatDelta .Delta7d .HasDelta }} | {{ .Language }} | {{ .PushedAt }} | {{ .Description }} |
{{- end }}

---

## How it works

1. `data/agents.yml` is the curated source list.
2. A daily GitHub Actions workflow (`.github/workflows/update.yml`) runs the Go updater.
3. The updater fetches live repo metadata via the GitHub GraphQL API in one batched query.
4. Star counts are appended to `data/history.jsonl` for 7-day delta computation.
5. This `README.md` is regenerated from `templates/readme.tmpl` and committed back to the repo.
6. `site/data.json` is regenerated and the [dashboard](https://tiennm99.github.io/awesome-coding-agents/) (`site/index.html`) is redeployed to GitHub Pages.

**Δ7d:** Change in stars over the past 7 days; `—` means fewer than 7 days of history.

## Contributing

Add an agent to [`data/agents.yml`](data/agents.yml):

```yaml
agents:
  - owner: github-username-or-org
    repo: repository-name
    category: cli   # cli | ide | extension | library | research | web
```

Open a PR. The next daily run picks it up automatically.

## License

Apache-2.0