Agent skill
update-app-count
Workflow for updating the popular LLM applications pool (section/x_llm_apps.md) using get_app_list_by_github_star.py. Covers full refresh, alternate exports, topic tuning, and common pitfalls. USE FOR: Refreshing the ranked GitHub applications list linked from applications.md. DO NOT USE FOR: Hand-curating application entries inside applications.md or adding GitHub star badges to the generated file.
Install this agent skill to your Project
npx add-skill https://github.com/kimtth/awesome-azure-openai-llm/tree/main/.agent/skills/update-app-count
SKILL.md
Overview
The pool file section/x_llm_apps.md is a generated ranked list of GitHub repositories related to LLM apps, agents, chat UIs, workflow builders, and similar application-layer projects.
It is generated by code/get_app_list_by_github_star.py using GitHub topic search, deduplicated across multiple topics, and sorted by GitHub star count descending.
The section ###### Popular LLM Applications (Ranked by github star count ≥1000) in section/applications.md links to this file with a one-line description only. Do not paste the generated entries directly into applications.md.
Script Reference
Script: code/get_app_list_by_github_star.py
Python env: .venv\Scripts\python.exe
Key CLI Arguments
| Argument | Default | Purpose |
|---|---|---|
--output |
section/x_llm_apps.md |
Output file path. Extension controls format: .md, .json, .csv |
--min-stars |
1000 |
Minimum GitHub star threshold |
--topics |
curated list | GitHub topics to query and merge |
--token |
GITHUB_TOKEN env var |
GitHub PAT for higher rate limits |
--show |
30 |
Number of repos printed to console |
--timeout |
20 |
Per-request timeout in seconds |
--max-retries |
4 |
Max retries per request |
--backoff |
1.0 |
Initial retry backoff |
--sleep |
1.0 |
Delay between successful page requests |
--include-archived |
off | Include archived repositories |
Workflow
1. Full refresh of the markdown pool
Use this for the normal update path.
.venv\Scripts\python.exe code/get_app_list_by_github_star.py
- Rewrites
section/x_llm_apps.md. - Uses
--min-stars 1000by default to match the section title. - Excludes archived repos unless
--include-archivedis passed. - Writes compact numbered entries instead of badge-heavy markdown.
2. Authenticated refresh to avoid GitHub API limits
.venv\Scripts\python.exe code/get_app_list_by_github_star.py --token %GITHUB_TOKEN%
Use a GitHub PAT when doing a full refresh across many topics. Unauthenticated search is heavily rate-limited.
3. Generate a stricter ranking
.venv\Scripts\python.exe code/get_app_list_by_github_star.py --min-stars 2000
Use this when you want a tighter list. If you change the threshold materially, update the descriptive text in section/applications.md so the label stays truthful.
4. Export raw data for review
.venv\Scripts\python.exe code/get_app_list_by_github_star.py --output files/x_llm_apps.json
.venv\Scripts\python.exe code/get_app_list_by_github_star.py --output files/x_llm_apps.csv
Use JSON or CSV when you want to inspect or post-process the ranked repo pool before regenerating markdown.
5. Tune the topic set
.venv\Scripts\python.exe code/get_app_list_by_github_star.py --topics llm agent rag chatbot ai-workflow
- Topics are GitHub repository topics, not free-text queries.
- Results are deduplicated by
full_nameafter all topic passes complete. - If the topic set changes substantially, regenerate the markdown pool rather than editing it by hand.
6. Topic-specific doc update
If the output is intentionally narrowed to a subset such as gemini claude azure-openai copilot assistant, keep the ranked entries as generated, then update the document metadata and the linking description in section/applications.md to reflect the narrowed scope.
Output Format
Each entry in section/x_llm_apps.md follows this compact format:
1. [owner/repo](https://github.com/owner/repo): Short GitHub description. [Mon YYYY] (GitHub stars: 12,345)
- Entries are sorted by GitHub stars descending.
- The date is the repository creation month, formatted as
[Mon YYYY]. - The star count is plain text in parentheses.
- Do not append realtime shields or badges in this generated file.
The file header includes:
- generated timestamp
- GitHub Search API source note
- searched topic list
- total repository count
Common Pitfalls
-
Using the wrong output target: The generated ranking belongs in
section/x_llm_apps.md, not inline insidesection/applications.md. -
Adding GitHub star badges: This file intentionally uses static text like
(GitHub stars: 12,345). Do not runadd_github_stars.pyon it. -
Forgetting the star threshold contract: The linked section title says
≥1000. If you generate with a different threshold, either restore1000or update the section label and description. -
Unauthenticated rate limits: Full runs over many topics can stall or fail without a token. Prefer
GITHUB_TOKENfor routine refreshes. -
Assuming GitHub topics are comprehensive: Some strong repos do not declare useful topics and may be missed. Expand
--topicsor curate separately if coverage is insufficient. -
Archived repos polluting the ranking: Archived repos are excluded by default. Only include them deliberately.
-
Hand-editing generated entries: Manual changes will be lost on the next run. Adjust the script inputs or post-process separately instead.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
add-new-entry
Workflow and tools for adding new entries from temp.md to the section files. Includes legend format, section reference, code tools, and common pitfalls. USE FOR: Adding new resources to the knowledge base. DO NOT USE FOR: Editing existing entries or restructuring sections.
update-cite-count
Guidelines for updating citation counts for papers in the section files using the `update_citation_counts.py` tool. USE FOR: Updating citation counts for papers listed in the section files to keep information current. DO NOT USE FOR: 1) Adding new papers to the section files; 2) Classifying entries into sections.
update-llm-pool
Workflow for updating the LLM landscape paper pool (section/x_llm_papers.md) using fetch_llm_papers.py. Covers full re-fetch, resume from checkpoint, and adding new topics. USE FOR: Refreshing citation counts, expanding topic coverage. DO NOT USE FOR: Adding hand-curated entries to section files (use add-new-entry), updating RAG/Agent citation sections in best_practices.md (use update-cite-count).
classify-temp-entries-to-section
Classification guidelines for entries in temp_entries.md. Each entry have its own title with the markdown file name and section name in temp_entries.md. USE FOR: Classifying new entries in temp_entries.md into *.md in the section files. DO NOT USE FOR: 1) Adding new entries to temp_entries.md; 2) Moving entries between sections.
verl-rl-training
Provides guidance for training LLMs with reinforcement learning using verl (Volcano Engine RL). Use when implementing RLHF, GRPO, PPO, or other RL algorithms for LLM post-training at scale with flexible infrastructure backends.
openrlhf-training
High-performance RLHF framework with Ray+vLLM acceleration. Use for PPO, GRPO, RLOO, DPO training of large models (7B-70B+). Built on Ray, vLLM, ZeRO-3. 2× faster than DeepSpeedChat with distributed architecture and GPU resource sharing.
Didn't find tool you were looking for?