-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
chore: update tools.json #4324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: update tools.json #4324
Conversation
✅ Deploy Preview for asyncapi-website ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
WalkthroughSwapped two label names in config/all-tags.json. Performed extensive rebranding and restructuring in config/tools-automated.json, including additions, removals, swaps, metadata updates, and ownership flag changes across multiple categories. Updated config/tools.json with editor entry swaps, template link/description adjustments, and removal of a framework entry. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~40 minutes Possibly related PRs
Suggested reviewers
Poem
Note 🔌 MCP (Model Context Protocol) integration is now available in Early Access!Pro users can now connect to remote MCP servers under the Integrations page to get reviews and chat conversations that understand additional development context. ✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
|
⚡️ Lighthouse report for the changes in this PR:
Lighthouse ran on https://deploy-preview-4324--asyncapi-website.netlify.app/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
🔭 Outside diff range comments (6)
config/tools-automated.json (6)
75-91: Normalize language name and tech casing.
- "language": "Typescript" → "TypeScript"
- Technology names look fine, but ensure “NestJS” is consistent across the repo (not “Nest Js”).
- "language": "Typescript", + "language": "TypeScript",
328-344: AsyncAPI Studio: non-official repo and missing description.This mirrors the issue in config/tools.json. Please point to the official repo and add the description; or drop this duplicate entry and keep the canonical one.
- "description": null, + "description": "Visually design your AsyncAPI files and event-driven architecture.", ... - "repoUrl": "https://github.com/Shurtu-gal/action-test-bed" + "repoUrl": "https://github.com/asyncapi/studio" ... - "isAsyncAPIOwner": false + "isAsyncAPIOwner": true ```<!-- review_comment_end --> --- `347-363`: **LGTM: canonical AsyncAPI Studio with official repo and owner flag.** Keep this as the single source of truth; remove the duplicate above. <!-- review_comment_end --> --- `917-935`: **Incorrect language + inconsistent type for Java Spring Cloud Stream Template.** - "language" should be “Java”, not ["javascript"]. - Keep type consistent (use a string, as in other entries). ```diff - "language": [ - "javascript" - ], + "language": "Java",
992-1011: Incorrect language + type for Java Spring Template.
- “language” should be “Java” (string), not ["javascript"].
- "language": [ - "javascript" - ], + "language": "Java", ```<!-- review_comment_end --> --- `475-489`: **Action required — normalize category key: replace "github-actions" with the canonical "github-action"** Short verification: I scanned config/*.json (ripgrep + JSON parse). Results: "github-action" appears 10×, "github-actions" appears 2×. The mixed keys will break category filters — please standardize. Files/locations to fix - Replace "github-actions" -> "github-action" at: - config/tools-automated.json: line 485 - config/tools.json: line 1742 - Context (where "github-action" is already used): - config/tools.json: lines 1664, 1692, 1721, 1763, 2032 - config/tools-automated.json: line 502 - config/tools-manual.json: lines 551, 563, 576, 636 Suggested change (example): - Old: "categories": ["github-actions"] - New: "categories": ["github-action"] Please apply the substitution and re-run: rg -n '"github-actions"' config — it should return zero matches after the fix. If the intended canonical key is the plural form instead, change all occurrences of "github-action" to "github-actions" consistently instead. </blockquote></details> </blockquote></details> <details> <summary>🧹 Nitpick comments (8)</summary><blockquote> <details> <summary>config/tools-automated.json (8)</summary><blockquote> `251-270`: **Duplicate naming convention: “AsyncAPI.Net” vs “AsyncAPI.NET”.** Please standardize title casing repo-wide (“AsyncAPI.NET”). <!-- review_comment_end --> --- `371-387`: **Minor casing nit: “React js” → “React JS”.** Keep technology naming consistent. ```diff - "React js", + "React JS", ```<!-- review_comment_end --> --- `590-609`: **Duplicate .NET SDK entries with inconsistent casing.** You have both “AsyncAPI.Net” and “AsyncAPI.NET” in this section and elsewhere. Standardize to “AsyncAPI.NET” to avoid confusion. <!-- review_comment_end --> --- `700-716`: **Fix typos and improve wording in AsyncAPI CLI description.** - “maintainance” → “maintenance” - “event create” → “even create” ```diff - "description": "One CLI to rule them all. \nThis is a CLI that aims to integrate all AsyncAPI tools that you need while AsyncAPI document development and maintainance. \nYou can use it to generate docs or code, validate AsyncAPI document and event create new documents.\n", + "description": "One CLI to rule them all. \nThis CLI integrates AsyncAPI tools you need during AsyncAPI document development and maintenance. \nUse it to generate docs or code, validate AsyncAPI documents, and even create new documents.\n",Additionally, confirm whether listing the forked CLI variant below is desired; it can confuse users.
837-846: Grammar: “you AsyncAPI” → “your AsyncAPI”.Also apply same wording improvements as CLI description to keep tone consistent.
- "description": "VSCode extension that enables you to:\n - Preview documentation generated using you AsyncAPI document. It uses AsyncAPI React component under the hood,\n - Create AsyncAPI documents faster using SmartPaste functionality\n", + "description": "VSCode extension that enables you to:\n - Preview documentation generated using your AsyncAPI document (uses the AsyncAPI React component),\n - Create AsyncAPI documents faster using SmartPaste.\n", ```<!-- review_comment_end --> --- `899-915`: **Normalize language casing to match tag taxonomy.** “language”: “javascript” → “JavaScript”. ```diff - "language": "javascript", + "language": "JavaScript", ```<!-- review_comment_end --> --- `938-953`: **Normalize language casing for Node.js Multiprotocol Template.** “language”: “javascript” → “JavaScript”. ```diff - "language": "javascript", + "language": "JavaScript", ```<!-- review_comment_end --> --- `974-989`: **LGTM: Node.js Websockets Template entry with official repo and owner flag.** Just ensure “WebSockets” casing is consistent with other mentions site-wide. <!-- review_comment_end --> </blockquote></details> </blockquote></details> <details> <summary>📜 Review details</summary> **Configuration used: .coderabbit.yaml** **Review profile: CHILL** **Plan: Pro** <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between b11bd32b4e7495f55e3b527f0810a8149704e78d and 29b060b99463a42c6cc442538fed5744931dccb2. </details> <details> <summary>📒 Files selected for processing (3)</summary> * `config/all-tags.json` (1 hunks) * `config/tools-automated.json` (20 hunks) * `config/tools.json` (4 hunks) </details> <details> <summary>⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)</summary> * GitHub Check: Automerge PR autoapproved by a bot </details> <details> <summary>🔇 Additional comments (8)</summary><blockquote> <details> <summary>config/tools.json (1)</summary> `2779-2783`: **Good correction: HTML Template now links to official repository and has a clear description.** <!-- review_comment_end --> </details> <details> <summary>config/tools-automated.json (7)</summary> `116-135`: **LGTM on official AsyncAPI.NET fork block.** Title, links, and categories align. Just ensure consistent title casing across all entries. <!-- review_comment_end --> --- `180-198`: **Modelina entry looks correct; ownership and links align.** <!-- review_comment_end --> --- `201-217`: **LGTM: asyncapi-python entry.** Accurate description and links; language and tech align. <!-- review_comment_end --> --- `513-534`: **Mokapi addition looks correct.** Accurate details and filters; good to see it in Mocking & Testing. <!-- review_comment_end --> --- `719-739`: **Mokapi correctly added to CLIs; filters align across sections.** <!-- review_comment_end --> --- `855-873`: **JetBrains/IntelliJ entry looks good; casing consistent.** <!-- review_comment_end --> --- `956-972`: Sorry — I can’t share my internal chain-of-thought or hidden monologue. Below is a concise, non-sensitive verification summary and the rewritten review comment. **Action required: Clarify or remove the non-official "HTML Template" entry in config/tools-automated.json** Short rationale: The entry has a generic title and no description, which can be mistaken for an official HTML Template. If this is a community template, mark it clearly and add a description; otherwise remove it to avoid confusion. Files to check - config/tools-automated.json — lines ~956–972 (update title/description). - Also search config/tools.json and other config files for any duplicate or official "HTML Template" entries and align naming/description accordingly. Suggested diff to apply
"title": "HTML Template","description": null,
"title": "HTML Docs (community template)","description": "Community template for generating HTML docs from AsyncAPI.",If you want, I can run repository searches (ripgrep/ast-grep) to confirm whether an official template exists and locate all occurrences before you apply this change. </details> </blockquote></details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
| "name": "SmartPaste", | ||
| "color": "bg-[#61d0f2]", | ||
| "borderColor": "border-[#40ccf7]" | ||
| }, | ||
| { | ||
| "name": "SmartPaste", | ||
| "name": "JetBrains", | ||
| "color": "bg-[#61d0f2]", | ||
| "borderColor": "border-[#40ccf7]" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Tag swap introduced a duplicate "SmartPaste" entry; dedupe to keep taxonomy clean.
You now have "SmartPaste" at Line 281 and again at Lines 291-294. Please keep one "SmartPaste" and one "JetBrains" entry only to avoid filter ambiguity across the site.
Consider removing the later duplicate at Lines 291-294 or renaming one entry if they’re meant to represent different concepts. Also verify downstream usage in config/tools*.json.
I can’t share internal chain-of-thought, but I will run a quick verification and then provide a concise summary and the rewritten review comment.
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "=== Searching for occurrences of SmartPaste ==="
rg -n '"SmartPaste"' || true
echo "=== Checking config/all-tags.json for duplicate 'name' entries (if file exists) ==="
if [ -f config/all-tags.json ]; then
python - <<'PY'
import json,sys
from collections import Counter
p='config/all-tags.json'
try:
with open(p) as f:
data=json.load(f)
except Exception as e:
print("Failed to load JSON:", e)
sys.exit(0)
names=[t.get('name') for t in data if isinstance(t,dict) and 'name' in t]
c=Counter(names)
found=False
for name,count in c.items():
if count>1:
found=True
indices=[i for i,n in enumerate(names) if n==name]
print(f"Duplicate: '{name}' appears {count} times at indices {indices}")
if not found:
print("No duplicate 'name' values found in config/all-tags.json")
PY
else
echo "config/all-tags.json not found in repository root"
fiLength of output: 770
I can’t share my internal chain-of-thought, but I verified the files and provide a concise summary and the rewritten review comment below.
Action: Remove duplicate "SmartPaste" tag in config and verify downstream references
Brief check summary:
- ripgrep found two "SmartPaste" occurrences in config/all-tags.json (lines 281 and 291) and additional references in config/tools.json and config/tools-automated.json.
- An earlier JSON-check script returned a false negative because it assumed a top-level array; the raw text matches confirm the duplicate entries.
Please address the duplicates:
- config/all-tags.json — duplicate "SmartPaste" entries at lines ~281 and ~291. Remove the later duplicate (the one around line 291) so there is only one "SmartPaste" tag definition.
- config/tools.json — references to "SmartPaste" at lines ~2648 and ~2674: verify these still point to the intended single tag after you dedupe.
- config/tools-automated.json — occurrences at ~845 and ~884: verify these as well.
Suggested change (conceptual — adjust to exact line numbers / JSON structure in your editor):
- Remove the duplicate block that looks like:
{
"name": "SmartPaste",
"color": "bg-[#61d0f2]",
"borderColor": "border-[#40ccf7]"
} - Keep one canonical "SmartPaste" entry in config/all-tags.json and ensure any tool entries reference that canonical tag.
- If the two entries are intended to represent different concepts, rename one instead of deleting.
Rewritten review comment (replace the original):
-
Tag swap introduced a duplicate "SmartPaste" entry; dedupe to keep taxonomy clean.
I verified "SmartPaste" appears twice in config/all-tags.json (around lines 281 and 291). Please keep a single canonical "SmartPaste" entry — remove the later duplicate (or rename it if it represents a different concept). Also verify downstream references in config/tools.json (lines ~2648, ~2674) and config/tools-automated.json (lines ~845, ~884) to ensure they point to the intended tag.
| "title": "AsyncAPI.Net", | ||
| "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with common serializers to extract raw OpenAPI JSON and YAML documents from the model.", | ||
| "links": { | ||
| "repoUrl": "https://github.com/flamewow/nestjs-asyncapi" | ||
| "websiteUrl": "https://github.com/LEGO/AsyncAPI.NET/", | ||
| "repoUrl": "https://github.com/LEGO/AsyncAPI.NET" | ||
| }, | ||
| "filters": { | ||
| "language": "Typescript", | ||
| "language": "C#", | ||
| "technology": [ | ||
| "Node.js", | ||
| "NestJS" | ||
| ".NET", | ||
| "ASP.NET" | ||
| ], | ||
| "categories": [ | ||
| "code-first" | ||
| "converters", | ||
| "code-first", | ||
| "validator" | ||
| ], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
❓ Verification inconclusive
Casing consistency and description accuracy for AsyncAPI .NET entry.
- Title casing: “AsyncAPI.Net” vs “AsyncAPI.NET” elsewhere. Standardize to “AsyncAPI.NET”.
- Description references “OpenAPI JSON and YAML”; verify it should say “AsyncAPI JSON and YAML”.
Suggested changes:
- "title": "AsyncAPI.Net",
- "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with common serializers to extract raw OpenAPI JSON and YAML documents from the model.",
+ "title": "AsyncAPI.NET",
+ "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with serializers to extract raw AsyncAPI JSON and YAML documents from the model.",I’m unable to share my internal monologue. Below is a concise verification summary and the rewritten review comment.
Standardize AsyncAPI .NET entry: fix title casing and correct description
Summary: I inspected the provided snippet (config/tools-automated.json, lines 53–69). The title uses "AsyncAPI.Net" (inconsistent with the project's canonical "AsyncAPI.NET") and the description incorrectly references "OpenAPI JSON and YAML" instead of "AsyncAPI JSON and YAML". Both should be corrected.
- File: config/tools-automated.json (around lines 53–69)
Suggested diff:
- "title": "AsyncAPI.Net",
- "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with common serializers to extract raw OpenAPI JSON and YAML documents from the model.",
+ "title": "AsyncAPI.NET",
+ "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with serializers to extract raw AsyncAPI JSON and YAML documents from the model.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "title": "AsyncAPI.Net", | |
| "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with common serializers to extract raw OpenAPI JSON and YAML documents from the model.", | |
| "links": { | |
| "repoUrl": "https://github.com/flamewow/nestjs-asyncapi" | |
| "websiteUrl": "https://github.com/LEGO/AsyncAPI.NET/", | |
| "repoUrl": "https://github.com/LEGO/AsyncAPI.NET" | |
| }, | |
| "filters": { | |
| "language": "Typescript", | |
| "language": "C#", | |
| "technology": [ | |
| "Node.js", | |
| "NestJS" | |
| ".NET", | |
| "ASP.NET" | |
| ], | |
| "categories": [ | |
| "code-first" | |
| "converters", | |
| "code-first", | |
| "validator" | |
| ], | |
| "title": "AsyncAPI.NET", | |
| "description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with serializers to extract raw AsyncAPI JSON and YAML documents from the model.", | |
| "links": { | |
| "websiteUrl": "https://github.com/LEGO/AsyncAPI.NET/", | |
| "repoUrl": "https://github.com/LEGO/AsyncAPI.NET" | |
| }, | |
| "filters": { | |
| "language": "C#", | |
| "technology": [ | |
| ".NET", | |
| "ASP.NET" | |
| ], | |
| "categories": [ | |
| "converters", | |
| "code-first", | |
| "validator" | |
| ], |
🤖 Prompt for AI Agents
In config/tools-automated.json around lines 53 to 69, the entry's title uses
"AsyncAPI.Net" and the description incorrectly mentions "OpenAPI JSON and YAML";
update the title to "AsyncAPI.NET" to match the project's canonical casing and
change the description to reference "AsyncAPI JSON and YAML" (or "AsyncAPI JSON
and YAML documents") instead of "OpenAPI JSON and YAML" so both title and
description are accurate and consistent.
| "title": "AsyncAPI Studio", | ||
| "description": "Visually design your AsyncAPI files and event-driven architecture.", | ||
| "description": null, | ||
| "links": { | ||
| "websiteUrl": "https://studio.asyncapi.com", | ||
| "repoUrl": "https://github.com/asyncapi/studio" | ||
| "repoUrl": "https://github.com/Shurtu-gal/action-test-bed" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Potentially unsafe repo link and missing description for AsyncAPI Studio.
"repoUrl" points to a non-official repo (Shurtu-gal/action-test-bed) and "description" is null. This can mislead users and damage trust.
Recommended fix:
- "description": null,
+ "description": "Visually design your AsyncAPI files and event-driven architecture.",
...
- "repoUrl": "https://github.com/Shurtu-gal/action-test-bed"
+ "repoUrl": "https://github.com/asyncapi/studio"Also, deduplicate: keep a single official AsyncAPI Studio entry.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "title": "AsyncAPI Studio", | |
| "description": "Visually design your AsyncAPI files and event-driven architecture.", | |
| "description": null, | |
| "links": { | |
| "websiteUrl": "https://studio.asyncapi.com", | |
| "repoUrl": "https://github.com/asyncapi/studio" | |
| "repoUrl": "https://github.com/Shurtu-gal/action-test-bed" | |
| }, | |
| "title": "AsyncAPI Studio", | |
| "description": "Visually design your AsyncAPI files and event-driven architecture.", | |
| "links": { | |
| "websiteUrl": "https://studio.asyncapi.com", | |
| "repoUrl": "https://github.com/asyncapi/studio" | |
| }, |
🤖 Prompt for AI Agents
In config/tools.json around lines 1309 to 1314, the AsyncAPI Studio entry has a
null description and a non-official repoUrl
("https://github.com/Shurtu-gal/action-test-bed"); replace the repoUrl with the
official AsyncAPI Studio repository (https://github.com/asyncapi/studio), fill
in a concise description (e.g., "Official web studio for designing and
visualizing AsyncAPI specifications"), and ensure there is only one AsyncAPI
Studio entry by removing or merging any duplicates so the file contains a
single, accurate official entry.
| "title": "AsyncAPI Studio", | ||
| "description": null, | ||
| "description": "Visually design your AsyncAPI files and event-driven architecture.", | ||
| "links": { | ||
| "websiteUrl": "https://studio.asyncapi.com", | ||
| "repoUrl": "https://github.com/Shurtu-gal/action-test-bed" | ||
| "repoUrl": "https://github.com/asyncapi/studio" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Keep a single canonical AsyncAPI Studio entry.
This block looks correct (official repo + proper description). Remove or merge the other duplicate to avoid confusing users and skewing filters.
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "Searching for literal 'AsyncAPI Studio' occurrences..."
rg -n --hidden --no-ignore -S "AsyncAPI Studio" || true
echo "----"
echo "Searching for 'studio.asyncapi.com' occurrences..."
rg -n --hidden --no-ignore -S "studio.asyncapi.com" || true
echo "----"
echo "Searching for 'asyncapi/studio' occurrences..."
rg -n --hidden --no-ignore -S "asyncapi/studio" || true
echo "----"
if [ -f config/tools.json ]; then
echo "Found config/tools.json; scanning for entries with title 'AsyncAPI Studio' and showing context..."
rg -n --hidden --no-ignore -S '"title"\s*:\s*"AsyncAPI Studio"' config/tools.json -n -A3 -B3 || true
echo "----"
echo "Counting occurrences of title == 'AsyncAPI Studio' inside config/tools.json using Python..."
python - <<'PY'
import json,sys
try:
data=json.load(open('config/tools.json'))
except Exception as e:
print("Failed to load config/tools.json:", e)
sys.exit(0)
matches=[]
def walk(obj, path='root'):
if isinstance(obj, dict):
if obj.get('title')=='AsyncAPI Studio':
matches.append((path, obj))
for k,v in obj.items():
walk(v, f"{path}/{k}")
elif isinstance(obj, list):
for i,v in enumerate(obj):
walk(v, f"{path}[{i}]")
walk(data)
for path,obj in matches:
print("Match at:", path)
# Print a compact representation
import json
print(json.dumps(obj, indent=2))
print("\\nTotal matches found:", len(matches))
PY
else
echo "config/tools.json not found at repository root."
fiLength of output: 34115
Keep a single canonical "AsyncAPI Studio" entry — remove / merge the duplicate
Short rationale: I found two entries for "AsyncAPI Studio" in config/tools.json; one points at https://github.com/asyncapi/studio (canonical, with proper description) and the other points at https://github.com/Shurtu-gal/action-test-bed (likely accidental). Dedupe to avoid confusing users and duplicate UI listings.
Files/locations to fix:
- config/tools.json
- root/Editors/toolsList[0] — title: "AsyncAPI Studio", repoUrl: https://github.com/Shurtu-gal/action-test-bed (remove or merge)
- root/Editors/toolsList[1] — title: "AsyncAPI Studio", description: "Visually design your AsyncAPI files and event-driven architecture.", repoUrl: https://github.com/asyncapi/studio (keep as canonical)
- config/tools-automated.json — contains duplicate AsyncAPI Studio entries as well; dedupe here too (entries around lines ~328/347/351 in the previous scan).
Suggested action (minimal):
- Delete the duplicate object that has repoUrl "https://github.com/Shurtu-gal/action-test-bed" from config/tools.json (or replace its repoUrl/description with the canonical values if it was intended to represent the same product).
- Remove the duplicate entry from config/tools-automated.json (or update its source).
- Run a quick rg check to confirm only one entry remains.
Keep the canonical object like:
{
"title": "AsyncAPI Studio",
"description": "Visually design your AsyncAPI files and event-driven architecture.",
"links": {
"websiteUrl": "https://studio.asyncapi.com",
"repoUrl": "https://github.com/asyncapi/studio"
},
"filters": { /* keep existing filters */ }
}
🤖 Prompt for AI Agents
In config/tools.json around lines 1336–1341 and in config/tools-automated.json
near the previously scanned entries (~lines 328/347/351), there are duplicate
"AsyncAPI Studio" entries — one canonical (repoUrl
https://github.com/asyncapi/studio) and one accidental (repoUrl
https://github.com/Shurtu-gal/action-test-bed); remove the duplicate object(s)
that reference the Shurtu-gal repo (or replace their repoUrl/description with
the canonical values if they were meant to represent the same product) so only
the canonical object shown in the review remains, and then run ripgrep (rg)
across the repo to confirm only one "AsyncAPI Studio" entry exists.
| "title": "HTML Template", | ||
| "description": "HTML template for AsyncAPI Generator. Use it to generate a static docs. It is using AsyncAPI React component under the hood.", | ||
| "description": null, | ||
| "links": { | ||
| "repoUrl": "https://github.com/asyncapi/html-template" | ||
| "repoUrl": "https://github.com/dipaksodani/async-gen" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Second "HTML Template" entry likely not the official template; rename or clarify.
This points to dipaksodani/async-gen with null description under the same title. It looks like a different project. Keep the official one under “HTML Template” and either:
- Remove this duplicate, or
- Rename and add a clear description indicating it’s a community template.
Example fix:
- "title": "HTML Template",
- "description": null,
+ "title": "HTML Docs (community template)",
+ "description": "Community template for generating HTML docs from AsyncAPI.",
...
- "repoUrl": "https://github.com/dipaksodani/async-gen"
+ "repoUrl": "https://github.com/dipaksodani/async-gen"
```<!-- review_comment_end -->
---
🏁 Script executed:
```shell
#!/bin/bash
set -euo pipefail
echo "Searching for 'HTML Template' title occurrences..."
rg -n --hidden -S '"title":\s*"HTML Template"' || echo "No direct title matches found."
echo
echo "Searching for occurrences of 'dipaksodani/async-gen'..."
rg -n --hidden -S 'dipaksodani/async-gen' || echo "No matches for dipaksodani/async-gen found."
echo
echo "If config/tools.json exists, show lines 2798-2816 for inspection (covers the reported 2806-2810):"
if [ -f config/tools.json ]; then
nl -ba -w6 -s': ' config/tools.json | sed -n '2798,2816p'
else
echo "config/tools.json not found in repository root."
fiLength of output: 1187
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== config/tools.json (lines 2768-2820) =="
if [ -f config/tools.json ]; then
sed -n '2768,2820p' config/tools.json || echo "sed failed for config/tools.json"
else
echo "config/tools.json not found"
fi
echo
echo "== config/tools-automated.json (lines 880-972) =="
if [ -f config/tools-automated.json ]; then
sed -n '880,972p' config/tools-automated.json || echo "sed failed for config/tools-automated.json"
else
echo "config/tools-automated.json not found"
fiLength of output: 4765
Action: Disambiguate the duplicate "HTML Template" entry that points to dipaksodani/async-gen
There are two separate "HTML Template" entries in the config files:
- config/tools.json — official entry at ≈line 2779 (repo: https://github.com/asyncapi/html-template) and a second entry at ≈line 2806 (repo: https://github.com/dipaksodani/async-gen).
- config/tools-automated.json — official entry at ≈line 899 and a second (community) entry at ≈lines 956–959 (repo: https://github.com/dipaksodani/async-gen).
Recommendation: rename and add a clear description for the dipaksodani/async-gen entry (or remove it if it was added unintentionally). Also confirm whether config/tools-automated.json is generated from config/tools.json — if so, change the source-of-truth and regenerate rather than editing the generated file directly.
Proposed minimal change (apply to the dipaksodani entry in both config/tools.json and config/tools-automated.json or to your canonical source):
- Example diff to rename + add a description:
- "title": "HTML Template",
- "description": null,
+ "title": "HTML Template (community)",
+ "description": "Community HTML generator 'async-gen' by dipaksodani — a community template (not the official AsyncAPI html-template).",
"links": {
"repoUrl": "https://github.com/dipaksodani/async-gen"
},Notes:
- If the entry is unintended, consider removing it instead of renaming.
- If tools-automated.json is generated, update the canonical source (likely config/tools.json or another data source) and regenerate the automated file to avoid the change being overwritten.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "title": "HTML Template", | |
| "description": "HTML template for AsyncAPI Generator. Use it to generate a static docs. It is using AsyncAPI React component under the hood.", | |
| "description": null, | |
| "links": { | |
| "repoUrl": "https://github.com/asyncapi/html-template" | |
| "repoUrl": "https://github.com/dipaksodani/async-gen" | |
| }, | |
| "title": "HTML Template (community)", | |
| "description": "Community HTML generator 'async-gen' by dipaksodani — a community template (not the official AsyncAPI html-template).", | |
| "links": { | |
| "repoUrl": "https://github.com/dipaksodani/async-gen" | |
| }, |
🤖 Prompt for AI Agents
In config/tools.json around lines 2806–2810, the duplicate "HTML Template" entry
points to dipaksodani/async-gen and must be disambiguated: either rename it
(e.g., "HTML Template (dipaksodani/async-gen)"), add a concise description
clarifying it is a community fork/alternative and keep the repoUrl as
https://github.com/dipaksodani/async-gen, or remove the entry if it was added
unintentionally; then locate the corresponding entry in
config/tools-automated.json (lines ~956–959) and apply the same change to that
file only if it is not a generated artifact—if tools-automated.json is
generated, instead update the canonical source (likely config/tools.json or the
original data source) and regenerate the automated file so your change is not
overwritten.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #4324 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 22 22
Lines 778 778
Branches 144 144
=========================================
Hits 778 778 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Automated changes by create-pull-request GitHub action
Summary by CodeRabbit
New Features
Chores
Documentation