From 1322aa2dde39898083ba0a71fa9626922c6f3472 Mon Sep 17 00:00:00 2001 From: Ashley Childress <6563688+anchildress1@users.noreply.github.com> Date: Fri, 19 Dec 2025 20:43:27 -0500 Subject: [PATCH 01/43] feat(eng): add contributor reporting and management scripts - Add eng/README.md documenting maintainer utilities - Add eng/contributor-report.mjs for generating contributor reports - Add eng/add-missing-contributors.mjs for automating contributor additions - Add eng/utils/graceful-shutdown.mjs for script lifecycle management - Update eng/update-readme.mjs with minor fixes - Update package.json with new contributor scripts Generated-by: GitHub Copilot Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com> --- .all-contributorsrc | 1514 ++++++++++++++++++++-------- .github/workflows/contributors.yml | 40 +- .gitignore | 1 + CONTRIBUTING.md | 37 +- README.md | 275 +++-- eng/README.md | 36 + eng/add-missing-contributors.mjs | 306 ++++++ eng/contributor-report.mjs | 597 +++++++++++ eng/utils/graceful-shutdown.mjs | 60 ++ package.json | 5 +- 10 files changed, 2353 insertions(+), 518 deletions(-) create mode 100644 eng/README.md create mode 100644 eng/add-missing-contributors.mjs create mode 100644 eng/contributor-report.mjs create mode 100644 eng/utils/graceful-shutdown.mjs diff --git a/.all-contributorsrc b/.all-contributorsrc index 8372d6ac7..bd9775d3a 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -9,6 +9,35 @@ "imageSize": 100, "commit": false, "commitConvention": "none", + "contributorsPerLine": 7, + "linkToUsage": true, + "commitType": "docs", + "types": { + "instructions": { + "symbol": "🧭", + "description": "Custom instructions for GitHub Copilot" + }, + "prompts": { + "symbol": "⌨️", + "description": "Reusable prompts for GitHub Copilot" + }, + "agents": { + "symbol": "🎭", + "description": "Specialized agents for GitHub Copilot" + }, + "collections": { + "symbol": "🎁", + "description": "Curated collections of related content" + } + }, + "ignoreList": [ + "dependabot[bot]", + "github-actions[bot]", + "allcontributors[bot]", + "Copilot", + "Claude" + ], + "contributorsSortAlphabetically": false, "contributors": [ { "login": "aaronpowell", @@ -16,55 +45,89 @@ "avatar_url": "https://avatars.githubusercontent.com/u/434140?v=4", "profile": "https://www.aaron-powell.com/", "contributions": [ - "code", + "agents", + "collections", + "doc", + "infra", + "instructions", "maintenance", - "projectManagement", - "promotion" + "prompts" ] }, { - "login": "mubaidr", - "name": "Muhammad Ubaid Raza", - "avatar_url": "https://avatars.githubusercontent.com/u/2222702?v=4", - "profile": "https://mubaidr.js.org/", + "login": "troystaylor", + "name": "Troy Simeon Taylor", + "avatar_url": "https://avatars.githubusercontent.com/u/44444967?v=4", + "profile": "https://www.buymeacoffee.com/troystaylor", "contributions": [ - "code" + "agents", + "collections", + "instructions", + "prompts" ] }, { - "login": "digitarald", - "name": "Harald Kirschner", - "avatar_url": "https://avatars.githubusercontent.com/u/8599?v=4", - "profile": "http://digitarald.de/", + "login": "PEZ", + "name": "Peter Strömberg", + "avatar_url": "https://avatars.githubusercontent.com/u/30010?v=4", + "profile": "https://calva.io/", "contributions": [ - "code" + "agents", + "collections", + "instructions", + "prompts" ] }, { - "login": "mbianchidev", - "name": "Matteo Bianchi", - "avatar_url": "https://avatars.githubusercontent.com/u/37507190?v=4", - "profile": "https://github.com/mbianchidev", + "login": "PlagueHO", + "name": "Daniel Scott-Raynsford", + "avatar_url": "https://avatars.githubusercontent.com/u/7589164?v=4", + "profile": "https://danielscottraynsford.com/", "contributions": [ - "code" + "agents", + "collections", + "instructions", + "prompts" + ] + }, + { + "login": "jhauga", + "name": "John Haugabook", + "avatar_url": "https://avatars.githubusercontent.com/u/10998676?v=4", + "profile": "https://github.com/jhauga", + "contributions": [ + "instructions", + "prompts" + ] + }, + { + "login": "mubaidr", + "name": "Muhammad Ubaid Raza", + "avatar_url": "https://avatars.githubusercontent.com/u/2222702?v=4", + "profile": "https://mubaidr.js.org/", + "contributions": [ + "agents", + "instructions" ] }, { "login": "AungMyoKyaw", "name": "Aung Myo Kyaw", "avatar_url": "https://avatars.githubusercontent.com/u/9404824?v=4", - "profile": "https://github.com/AungMyoKyaw", + "profile": "https://www.aungmyokyaw.com/", "contributions": [ - "code" + "agents", + "prompts" ] }, { - "login": "PlagueHO", - "name": "Daniel Scott-Raynsford", - "avatar_url": "https://avatars.githubusercontent.com/u/7589164?v=4", - "profile": "https://danielscottraynsford.com/", + "login": "digitarald", + "name": "Harald Kirschner", + "avatar_url": "https://avatars.githubusercontent.com/u/8599?v=4", + "profile": "http://digitarald.de/", "contributions": [ - "code" + "doc", + "maintenance" ] }, { @@ -73,16 +136,10 @@ "avatar_url": "https://avatars.githubusercontent.com/u/686963?v=4", "profile": "https://github.com/burkeholland", "contributions": [ - "code" - ] - }, - { - "login": "PEZ", - "name": "Peter Strömberg", - "avatar_url": "https://avatars.githubusercontent.com/u/30010?v=4", - "profile": "https://calva.io/", - "contributions": [ - "code" + "agents", + "infra", + "instructions", + "prompts" ] }, { @@ -91,7 +148,7 @@ "avatar_url": "https://avatars.githubusercontent.com/u/51440732?v=4", "profile": "https://www.devprodlogs.com/", "contributions": [ - "code" + "prompts" ] }, { @@ -100,7 +157,10 @@ "avatar_url": "https://avatars.githubusercontent.com/u/1676321?v=4", "profile": "https://montemagno.com/", "contributions": [ - "code" + "agents", + "doc", + "instructions", + "prompts" ] }, { @@ -109,7 +169,8 @@ "avatar_url": "https://avatars.githubusercontent.com/u/21999324?v=4", "profile": "https://github.com/VamshiVerma", "contributions": [ - "code" + "instructions", + "prompts" ] }, { @@ -118,16 +179,38 @@ "avatar_url": "https://avatars.githubusercontent.com/u/593151?v=4", "profile": "https://github.com/sinedied", "contributions": [ - "code" + "instructions", + "prompts" + ] + }, + { + "login": "spectatora", + "name": "spectatora", + "avatar_url": "https://avatars.githubusercontent.com/u/1385755?v=4", + "profile": "https://github.com/spectatora", + "contributions": [ + "agents", + "maintenance" + ] + }, + { + "login": "ambilykk", + "name": "Ambily", + "avatar_url": "https://avatars.githubusercontent.com/u/10282550?v=4", + "profile": "https://www.linkedin.com/in/ambilykk/", + "contributions": [ + "agents", + "instructions" ] }, { "login": "OrenMe", "name": "Oren Me", "avatar_url": "https://avatars.githubusercontent.com/u/5461862?v=4", - "profile": "https://github.com/OrenMe", + "profile": "https://www.promptboost.dev/", "contributions": [ - "code" + "agents", + "instructions" ] }, { @@ -136,7 +219,17 @@ "avatar_url": "https://avatars.githubusercontent.com/u/10077254?v=4", "profile": "https://github.com/mjrousos", "contributions": [ - "code" + "instructions", + "prompts" + ] + }, + { + "login": "justinyoo", + "name": "Justin Yoo", + "avatar_url": "https://avatars.githubusercontent.com/u/1538528?v=4", + "profile": "https://devkimchi.com/", + "contributions": [ + "instructions" ] }, { @@ -145,61 +238,76 @@ "avatar_url": "https://avatars.githubusercontent.com/u/94094527?v=4", "profile": "https://github.com/guiopen", "contributions": [ - "code" + "instructions" ] }, { - "login": "troystaylor", - "name": "Troy Simeon Taylor", - "avatar_url": "https://avatars.githubusercontent.com/u/44444967?v=4", - "profile": "https://www.buymeacoffee.com/troystaylor", + "login": "griffinashe", + "name": "Griffin Ashe", + "avatar_url": "https://avatars.githubusercontent.com/u/6391612?v=4", + "profile": "https://www.linkedin.com/in/griffinashe/", "contributions": [ - "code" + "agents", + "collections" ] }, { - "login": "ambilykk", - "name": "Ambily", - "avatar_url": "https://avatars.githubusercontent.com/u/10282550?v=4", - "profile": "https://www.linkedin.com/in/ambilykk/", + "login": "anchildress1", + "name": "Ashley Childress", + "avatar_url": "https://avatars.githubusercontent.com/u/6563688?v=4", + "profile": "https://github.com/anchildress1", "contributions": [ - "code" + "agents", + "doc", + "instructions" ] }, { - "login": "tgrall", - "name": "Tugdual Grall", - "avatar_url": "https://avatars.githubusercontent.com/u/541250?v=4", - "profile": "http://tgrall.github.io/", + "login": "AClerbois", + "name": "Adrien Clerbois", + "avatar_url": "https://avatars.githubusercontent.com/u/50712277?v=4", + "profile": "http://www.senseof.tech/", "contributions": [ - "code" + "agents", + "doc", + "prompts" ] }, { - "login": "TianqiZhang", - "name": "Tianqi Zhang", - "avatar_url": "https://avatars.githubusercontent.com/u/5326582?v=4", - "profile": "https://github.com/TianqiZhang", + "login": "Vhivi", + "name": "ANGELELLI David", + "avatar_url": "https://avatars.githubusercontent.com/u/38220028?v=4", + "profile": "https://github.com/Vhivi", "contributions": [ - "code" + "agents" ] }, { - "login": "shubham070", - "name": "Shubham Gaikwad", - "avatar_url": "https://avatars.githubusercontent.com/u/5480589?v=4", - "profile": "https://github.com/shubham070", + "login": "askpt", + "name": "André Silva", + "avatar_url": "https://avatars.githubusercontent.com/u/2493377?v=4", + "profile": "https://asilva.dev/", "contributions": [ - "code" + "agents", + "instructions" ] }, { - "login": "sdolgin", - "name": "Saul Dolgin", - "avatar_url": "https://avatars.githubusercontent.com/u/576449?v=4", - "profile": "https://github.com/sdolgin", + "login": "MattVevang", + "name": "Matt Vevang", + "avatar_url": "https://avatars.githubusercontent.com/u/20714898?v=4", + "profile": "https://github.com/MattVevang", "contributions": [ - "code" + "instructions" + ] + }, + { + "login": "mpgirro", + "name": "Maximilian Irro", + "avatar_url": "https://avatars.githubusercontent.com/u/589073?v=4", + "profile": "https://max.irro.at/", + "contributions": [ + "instructions" ] }, { @@ -208,160 +316,501 @@ "avatar_url": "https://avatars.githubusercontent.com/u/58362593?v=4", "profile": "https://github.com/nullchimp", "contributions": [ - "code" + "agents" ] }, { - "login": "MattVevang", - "name": "Matt Vevang", - "avatar_url": "https://avatars.githubusercontent.com/u/20714898?v=4", - "profile": "https://github.com/MattVevang", + "login": "sdolgin", + "name": "Saul Dolgin", + "avatar_url": "https://avatars.githubusercontent.com/u/576449?v=4", + "profile": "https://github.com/sdolgin", "contributions": [ - "code" + "agents", + "instructions", + "prompts" ] }, { - "login": "justinyoo", - "name": "Justin Yoo", - "avatar_url": "https://avatars.githubusercontent.com/u/1538528?v=4", - "profile": "https://devkimchi.com/", + "login": "shubham070", + "name": "Shubham Gaikwad", + "avatar_url": "https://avatars.githubusercontent.com/u/5480589?v=4", + "profile": "https://github.com/shubham070", "contributions": [ - "code" + "agents", + "instructions", + "prompts" ] }, { - "login": "0GiS0", - "name": "Gisela Torres", - "avatar_url": "https://avatars.githubusercontent.com/u/175379?v=4", - "profile": "https://hachyderm.io/@0gis0", + "login": "TheovanKraay", + "name": "Theo van Kraay", + "avatar_url": "https://avatars.githubusercontent.com/u/24420698?v=4", + "profile": "https://github.com/TheovanKraay", "contributions": [ - "code" + "instructions" ] }, { - "login": "debs-obrien", - "name": "Debbie O'Brien", - "avatar_url": "https://avatars.githubusercontent.com/u/13063165?v=4", - "profile": "https://debbie.codes/", + "login": "TianqiZhang", + "name": "Tianqi Zhang", + "avatar_url": "https://avatars.githubusercontent.com/u/5326582?v=4", + "profile": "https://github.com/TianqiZhang", "contributions": [ - "code" + "agents" ] }, { - "login": "agreaves-ms", - "name": "Allen Greaves", - "avatar_url": "https://avatars.githubusercontent.com/u/111466195?v=4", - "profile": "https://github.com/agreaves-ms", + "login": "tgrall", + "name": "Tugdual Grall", + "avatar_url": "https://avatars.githubusercontent.com/u/541250?v=4", + "profile": "http://tgrall.github.io/", "contributions": [ - "code" + "instructions", + "prompts" ] }, { - "login": "AmeliaRose802", - "name": "Amelia Payne", - "avatar_url": "https://avatars.githubusercontent.com/u/26167931?v=4", - "profile": "https://github.com/AmeliaRose802", + "login": "doggy8088", + "name": "Will 保哥", + "avatar_url": "https://avatars.githubusercontent.com/u/88981?v=4", + "profile": "https://blog.miniasp.com/", "contributions": [ - "code" + "agents", + "prompts" ] }, { - "login": "SebastienDegodez", - "name": "Sebastien DEGODEZ", - "avatar_url": "https://avatars.githubusercontent.com/u/2349146?v=4", - "profile": "https://github.com/SebastienDegodez", + "login": "tsubakimoto", + "name": "Yuta Matsumura", + "avatar_url": "https://avatars.githubusercontent.com/u/1592808?v=4", + "profile": "https://tsubalog.hatenablog.com/", "contributions": [ - "code" + "instructions" ] }, { - "login": "segraef", - "name": "Sebastian Gräf", - "avatar_url": "https://avatars.githubusercontent.com/u/19261257?v=4", - "profile": "https://graef.io/", + "login": "hizahizi-hizumi", + "name": "hizahizi-hizumi", + "avatar_url": "https://avatars.githubusercontent.com/u/163728895?v=4", + "profile": "https://github.com/hizahizi-hizumi", "contributions": [ - "code" + "instructions" ] }, { - "login": "9ssi7", - "name": "Salih İbrahimbaş", - "avatar_url": "https://avatars.githubusercontent.com/u/76786120?v=4", - "profile": "https://9ssi7.dev/", + "login": "Jian-Min-Huang", + "name": "黃健旻 Vincent Huang", + "avatar_url": "https://avatars.githubusercontent.com/u/6296280?v=4", + "profile": "https://jianminhuang.cc/", "contributions": [ - "code" + "prompts" ] }, { - "login": "inquinity", - "name": "Robert Altman", - "avatar_url": "https://avatars.githubusercontent.com/u/406234?v=4", - "profile": "https://github.com/inquinity", + "login": "brunoborges", + "name": "Bruno Borges", + "avatar_url": "https://avatars.githubusercontent.com/u/129743?v=4", + "profile": "http://brunoborges.io/", "contributions": [ - "code" + "collections", + "instructions" ] }, { - "login": "pertrai1", - "name": "Rob Simpson", - "avatar_url": "https://avatars.githubusercontent.com/u/442374?v=4", - "profile": "https://github.com/pertrai1", + "login": "MovingLive", + "name": "Steve Magne", + "avatar_url": "https://avatars.githubusercontent.com/u/14792628?v=4", + "profile": "https://www.movinglive.ca/", "contributions": [ - "code" + "doc", + "instructions" ] }, { - "login": "ricksmit3000", - "name": "Rick Smit", - "avatar_url": "https://avatars.githubusercontent.com/u/7207783?v=4", - "profile": "https://ricksm.it/", + "login": "PureWeen", + "name": "Shane Neuville", + "avatar_url": "https://avatars.githubusercontent.com/u/5375137?v=4", + "profile": "http://shaneneuville.com/", "contributions": [ - "code" + "agents", + "instructions" ] }, { - "login": "psmulovics", - "name": "Peter Smulovics", - "avatar_url": "https://avatars.githubusercontent.com/u/28162552?v=4", - "profile": "http://dotneteers.net/", + "login": "agreaves-ms", + "name": "Allen Greaves", + "avatar_url": "https://avatars.githubusercontent.com/u/111466195?v=4", + "profile": "https://github.com/agreaves-ms", "contributions": [ - "code" + "agents", + "instructions" ] }, { - "login": "pelikhan", - "name": "Peli de Halleux", - "avatar_url": "https://avatars.githubusercontent.com/u/4175913?v=4", - "profile": "https://github.com/pelikhan", + "login": "AmeliaRose802", + "name": "Amelia Payne", + "avatar_url": "https://avatars.githubusercontent.com/u/26167931?v=4", + "profile": "https://github.com/AmeliaRose802", "contributions": [ - "code" + "agents" ] }, { - "login": "paulomorgado", - "name": "Paulo Morgado", - "avatar_url": "https://avatars.githubusercontent.com/u/470455?v=4", - "profile": "https://www.paulomorgado.net/", + "login": "brooke-hamilton", + "name": "Brooke Hamilton", + "avatar_url": "https://avatars.githubusercontent.com/u/45323234?v=4", + "profile": "https://azureincubations.io/", "contributions": [ - "code" + "instructions" + ] + }, + { + "login": "GeekTrainer", + "name": "Christopher Harrison", + "avatar_url": "https://avatars.githubusercontent.com/u/6109729?v=4", + "profile": "https://github.com/GeekTrainer", + "contributions": [ + "instructions" + ] + }, + { + "login": "breakid", + "name": "Dan", + "avatar_url": "https://avatars.githubusercontent.com/u/1446918?v=4", + "profile": "https://github.com/breakid", + "contributions": [ + "instructions" + ] + }, + { + "login": "DanWahlin", + "name": "Dan Wahlin", + "avatar_url": "https://avatars.githubusercontent.com/u/1767249?v=4", + "profile": "https://blog.codewithdan.com/", + "contributions": [ + "agents" + ] + }, + { + "login": "debs-obrien", + "name": "Debbie O'Brien", + "avatar_url": "https://avatars.githubusercontent.com/u/13063165?v=4", + "profile": "https://debbie.codes/", + "contributions": [ + "agents", + "instructions", + "prompts" + ] + }, + { + "login": "echarrod", + "name": "Ed Harrod", + "avatar_url": "https://avatars.githubusercontent.com/u/1381991?v=4", + "profile": "https://github.com/echarrod", + "contributions": [ + "prompts" + ] + }, + { + "login": "gewarren", + "name": "Genevieve Warren", + "avatar_url": "https://avatars.githubusercontent.com/u/24882762?v=4", + "profile": "http://learn.microsoft.com/dotnet", + "contributions": [ + "prompts" + ] + }, + { + "login": "guigui42", + "name": "Guillaume", + "avatar_url": "https://avatars.githubusercontent.com/u/2376010?v=4", + "profile": "https://github.com/guigui42", + "contributions": [ + "agents", + "prompts" + ] + }, + { + "login": "riqueufmg", + "name": "Henrique Nunes", + "avatar_url": "https://avatars.githubusercontent.com/u/108551585?v=4", + "profile": "https://github.com/riqueufmg", + "contributions": [ + "prompts" + ] + }, + { + "login": "jeremiah-snee-openx", + "name": "Jeremiah Snee", + "avatar_url": "https://avatars.githubusercontent.com/u/113928685?v=4", + "profile": "https://github.com/jeremiah-snee-openx", + "contributions": [ + "code" + ] + }, + { + "login": "kartikdhiman", + "name": "Kartik Dhiman", + "avatar_url": "https://avatars.githubusercontent.com/u/59189590?v=4", + "profile": "https://github.com/kartikdhiman", + "contributions": [ + "instructions" + ] + }, + { + "login": "kristiyan-velkov", + "name": "Kristiyan Velkov", + "avatar_url": "https://avatars.githubusercontent.com/u/40764277?v=4", + "profile": "https://kristiyanvelkov.com/", + "contributions": [ + "agents" + ] + }, + { + "login": "markdav-is", + "name": "Mark Davis", + "avatar_url": "https://avatars.githubusercontent.com/u/311063?v=4", + "profile": "http://markdav.is/", + "contributions": [ + "instructions" + ] + }, + { + "login": "pelikhan", + "name": "Peli de Halleux", + "avatar_url": "https://avatars.githubusercontent.com/u/4175913?v=4", + "profile": "https://github.com/pelikhan", + "contributions": [ + "code" + ] + }, + { + "login": "soderlind", + "name": "Per Søderlind", + "avatar_url": "https://avatars.githubusercontent.com/u/1649452?v=4", + "profile": "https://soderlind.no/", + "contributions": [ + "instructions" + ] + }, + { + "login": "psmulovics", + "name": "Peter Smulovics", + "avatar_url": "https://avatars.githubusercontent.com/u/28162552?v=4", + "profile": "http://dotneteers.net/", + "contributions": [ + "instructions" + ] + }, + { + "login": "madvimer", + "name": "Ravish Rathod", + "avatar_url": "https://avatars.githubusercontent.com/u/3188898?v=4", + "profile": "https://github.com/madvimer", + "contributions": [ + "instructions" + ] + }, + { + "login": "ricksmit3000", + "name": "Rick Smit", + "avatar_url": "https://avatars.githubusercontent.com/u/7207783?v=4", + "profile": "https://ricksm.it/", + "contributions": [ + "agents" + ] + }, + { + "login": "pertrai1", + "name": "Rob Simpson", + "avatar_url": "https://avatars.githubusercontent.com/u/442374?v=4", + "profile": "https://github.com/pertrai1", + "contributions": [ + "instructions" + ] + }, + { + "login": "inquinity", + "name": "Robert Altman", + "avatar_url": "https://avatars.githubusercontent.com/u/406234?v=4", + "profile": "https://github.com/inquinity", + "contributions": [ + "instructions" + ] + }, + { + "login": "salihguru", + "name": "Salih", + "avatar_url": "https://avatars.githubusercontent.com/u/76786120?v=4", + "profile": "https://salih.guru/", + "contributions": [ + "instructions" + ] + }, + { + "login": "segraef", + "name": "Sebastian Gräf", + "avatar_url": "https://avatars.githubusercontent.com/u/19261257?v=4", + "profile": "https://graef.io/", + "contributions": [ + "agents", + "instructions" + ] + }, + { + "login": "SebastienDegodez", + "name": "Sebastien DEGODEZ", + "avatar_url": "https://avatars.githubusercontent.com/u/2349146?v=4", + "profile": "https://github.com/SebastienDegodez", + "contributions": [ + "instructions" + ] + }, + { + "login": "sesmyrnov", + "name": "Sergiy Smyrnov", + "avatar_url": "https://avatars.githubusercontent.com/u/59627981?v=4", + "profile": "https://github.com/sesmyrnov", + "contributions": [ + "prompts" + ] + }, + { + "login": "SomeSolutionsArchitect", + "name": "SomeSolutionsArchitect", + "avatar_url": "https://avatars.githubusercontent.com/u/139817767?v=4", + "profile": "https://github.com/SomeSolutionsArchitect", + "contributions": [ + "agents" + ] + }, + { + "login": "kewalaka", + "name": "Stu Mace", + "avatar_url": "https://avatars.githubusercontent.com/u/3146590?v=4", + "profile": "https://github.com/kewalaka", + "contributions": [ + "agents", + "collections", + "instructions" + ] + }, + { + "login": "dgh06175", + "name": "이상현", + "avatar_url": "https://avatars.githubusercontent.com/u/77305722?v=4", + "profile": "https://github.com/dgh06175", + "contributions": [ + "instructions" + ] + }, + { + "login": "paulomorgado", + "name": "Paulo Morgado", + "avatar_url": "https://avatars.githubusercontent.com/u/470455?v=4", + "profile": "https://www.paulomorgado.net/", + "contributions": [ + "prompts" + ] + }, + { + "login": "pcrane", + "name": "Paul Crane", + "avatar_url": "https://avatars.githubusercontent.com/u/808676?v=4", + "profile": "https://paul.crane.net.nz/", + "contributions": [ + "agents" + ] + }, + { + "login": "pamelafox", + "name": "Pamela Fox", + "avatar_url": "https://avatars.githubusercontent.com/u/297042?v=4", + "profile": "https://www.pamelafox.org/", + "contributions": [ + "prompts" + ] + }, + { + "login": "prewk", + "name": "Oskar Thornblad", + "avatar_url": "https://avatars.githubusercontent.com/u/640102?v=4", + "profile": "https://oskarthornblad.se/", + "contributions": [ + "instructions" + ] + }, + { + "login": "nischays", + "name": "Nischay Sharma", + "avatar_url": "https://avatars.githubusercontent.com/u/54121853?v=4", + "profile": "https://github.com/nischays", + "contributions": [ + "agents" + ] + }, + { + "login": "Naikabg", + "name": "Nikolay Marinov", + "avatar_url": "https://avatars.githubusercontent.com/u/19915620?v=4", + "profile": "https://github.com/Naikabg", + "contributions": [ + "agents" + ] + }, + { + "login": "niksacdev", + "name": "Nik Sachdeva", + "avatar_url": "https://avatars.githubusercontent.com/u/20246918?v=4", + "profile": "https://www.linkedin.com/in/niksac", + "contributions": [ + "agents", + "collections" ] }, { "login": "nickytonline", "name": "Nick Taylor", "avatar_url": "https://avatars.githubusercontent.com/u/833231?v=4", - "profile": "https://nickyt.co/", + "profile": "https://onetipaweek.com/", "contributions": [ "code" ] }, + { + "login": "nicholasdbrady", + "name": "Nick Brady", + "avatar_url": "https://avatars.githubusercontent.com/u/18353756?v=4", + "profile": "https://nicholasdbrady.github.io/cookbook/", + "contributions": [ + "agents" + ] + }, + { + "login": "nastanford", + "name": "Nathan Stanford Sr", + "avatar_url": "https://avatars.githubusercontent.com/u/1755947?v=4", + "profile": "https://github.com/nastanford", + "contributions": [ + "instructions" + ] + }, + { + "login": "matebarabas", + "name": "Máté Barabás", + "avatar_url": "https://avatars.githubusercontent.com/u/22733424?v=4", + "profile": "https://github.com/matebarabas", + "contributions": [ + "instructions" + ] + }, { "login": "mikeparker104", "name": "Mike Parker", "avatar_url": "https://avatars.githubusercontent.com/u/12763221?v=4", "profile": "https://github.com/mikeparker104", "contributions": [ - "code" + "instructions" ] }, { @@ -370,7 +819,7 @@ "avatar_url": "https://avatars.githubusercontent.com/u/85643503?v=4", "profile": "https://github.com/mikekistler", "contributions": [ - "code" + "prompts" ] }, { @@ -379,88 +828,108 @@ "avatar_url": "https://avatars.githubusercontent.com/u/498678?v=4", "profile": "https://a11ysupport.io/", "contributions": [ - "code" + "instructions" ] }, { - "login": "michaelvolz", - "name": "Michael A. Volz (Flynn)", - "avatar_url": "https://avatars.githubusercontent.com/u/129928?v=4", - "profile": "https://www.linkedin.com/in/michael-volz/", + "login": "zooav", + "name": "Ankur Sharma", + "avatar_url": "https://avatars.githubusercontent.com/u/12625412?v=4", + "profile": "https://github.com/zooav", "contributions": [ - "code" + "prompts" ] }, { - "login": "4regab", - "name": "4regab", - "avatar_url": "https://avatars.githubusercontent.com/u/178603515?v=4", - "profile": "https://github.com/4regab", + "login": "webreidi", + "name": "Wendy Breiding", + "avatar_url": "https://avatars.githubusercontent.com/u/55603905?v=4", + "profile": "https://github.com/webreidi", "contributions": [ "code" ] }, { - "login": "TheovanKraay", - "name": "Theo van Kraay", - "avatar_url": "https://avatars.githubusercontent.com/u/24420698?v=4", - "profile": "https://github.com/TheovanKraay", + "login": "voidfnc", + "name": "voidfnc", + "avatar_url": "https://avatars.githubusercontent.com/u/194750710?v=4", + "profile": "https://github.com/voidfnc", "contributions": [ - "code" + "agents" ] }, { - "login": "twitthoeft-gls", - "name": "Troy Witthoeft (glsauto)", - "avatar_url": "https://avatars.githubusercontent.com/u/132710946?v=4", - "profile": "http://glsauto.com/", + "login": "shavo007", + "name": "shane lee", + "avatar_url": "https://avatars.githubusercontent.com/u/5466825?v=4", + "profile": "https://about.me/shane-lee", "contributions": [ - "code" + "instructions" ] }, { - "login": "iletai", - "name": "Tài Lê", - "avatar_url": "https://avatars.githubusercontent.com/u/26614687?v=4", - "profile": "https://github.com/iletai", + "login": "sdanzo-hrb", + "name": "sdanzo-hrb", + "avatar_url": "https://avatars.githubusercontent.com/u/136493100?v=4", + "profile": "https://github.com/sdanzo-hrb", "contributions": [ - "code" + "agents" ] }, { - "login": "udayakumarreddyv", - "name": "Udaya Veeramreddygari", - "avatar_url": "https://avatars.githubusercontent.com/u/9591887?v=4", - "profile": "https://tinyurl.com/3p5j9mwe", + "login": "isauran", + "name": "sauran", + "avatar_url": "https://avatars.githubusercontent.com/u/33398121?v=4", + "profile": "https://github.com/nativebpm", "contributions": [ - "code" + "instructions" ] }, { - "login": "warengonzaga", - "name": "Waren Gonzaga", - "avatar_url": "https://avatars.githubusercontent.com/u/15052701?v=4", - "profile": "https://bio.warengonzaga.com/", + "login": "samqbush", + "name": "samqbush", + "avatar_url": "https://avatars.githubusercontent.com/u/74389839?v=4", + "profile": "https://github.com/samqbush", "contributions": [ - "code" + "prompts" ] }, { - "login": "doggy8088", - "name": "Will 保哥", - "avatar_url": "https://avatars.githubusercontent.com/u/88981?v=4", - "profile": "https://blog.miniasp.com/", + "login": "pareenaverma", + "name": "pareenaverma", + "avatar_url": "https://avatars.githubusercontent.com/u/59843121?v=4", + "profile": "https://github.com/pareenaverma", "contributions": [ - "code" + "agents" ] }, { - "login": "yukiomoto", - "name": "Yuki Omoto", - "avatar_url": "https://avatars.githubusercontent.com/u/38450410?v=4", - "profile": "https://github.com/yukiomoto", + "login": "oleksiyyurchyna", + "name": "oleksiyyurchyna", + "avatar_url": "https://avatars.githubusercontent.com/u/10256765?v=4", + "profile": "https://github.com/oleksiyyurchyna", "contributions": [ - "code" + "collections", + "prompts" + ] + }, + { + "login": "time-by-waves", + "name": "oceans-of-time", + "avatar_url": "https://avatars.githubusercontent.com/u/34587654?v=4", + "profile": "https://github.com/time-by-waves", + "contributions": [ + "instructions" + ] + }, + { + "login": "kshashank57", + "name": "kshashank57", + "avatar_url": "https://avatars.githubusercontent.com/u/57212456?v=4", + "profile": "https://github.com/kshashank57", + "contributions": [ + "agents", + "instructions" ] }, { @@ -468,89 +937,343 @@ "name": "Meii", "avatar_url": "https://avatars.githubusercontent.com/u/20430626?v=4", "profile": "https://github.com/hueanmy", + "contributions": [ + "agents" + ] + }, + { + "login": "factory-davidgu", + "name": "factory-davidgu", + "avatar_url": "https://avatars.githubusercontent.com/u/229352262?v=4", + "profile": "https://github.com/factory-davidgu", "contributions": [ "code" ] }, { - "login": "samqbush", - "name": "samqbush", - "avatar_url": "https://avatars.githubusercontent.com/u/74389839?v=4", - "profile": "https://github.com/samqbush", + "login": "dangelov-qa", + "name": "dangelov-qa", + "avatar_url": "https://avatars.githubusercontent.com/u/92313553?v=4", + "profile": "https://github.com/dangelov-qa", + "contributions": [ + "agents" + ] + }, + { + "login": "yukiomoto", + "name": "Yuki Omoto", + "avatar_url": "https://avatars.githubusercontent.com/u/38450410?v=4", + "profile": "https://github.com/yukiomoto", + "contributions": [ + "instructions" + ] + }, + { + "login": "wschultz-boxboat", + "name": "Will Schultz", + "avatar_url": "https://avatars.githubusercontent.com/u/110492948?v=4", + "profile": "https://github.com/wschultz-boxboat", + "contributions": [ + "agents" + ] + }, + { + "login": "warengonzaga", + "name": "Waren Gonzaga", + "avatar_url": "https://avatars.githubusercontent.com/u/15052701?v=4", + "profile": "https://bio.warengonzaga.com/", + "contributions": [ + "agents" + ] + }, + { + "login": "vincentkoc", + "name": "Vincent Koc", + "avatar_url": "https://avatars.githubusercontent.com/u/25068?v=4", + "profile": "https://linktr.ee/vincentkoc", + "contributions": [ + "agents" + ] + }, + { + "login": "Vaporjawn", + "name": "Victor Williams", + "avatar_url": "https://avatars.githubusercontent.com/u/15694665?v=4", + "profile": "https://github.com/Vaporjawn", + "contributions": [ + "agents" + ] + }, + { + "login": "VeVarunSharma", + "name": "Ve Sharma", + "avatar_url": "https://avatars.githubusercontent.com/u/62218708?v=4", + "profile": "https://vesharma.dev/", + "contributions": [ + "agents" + ] + }, + { + "login": "udayakumarreddyv", + "name": "Udaya Veeramreddygari", + "avatar_url": "https://avatars.githubusercontent.com/u/9591887?v=4", + "profile": "https://tinyurl.com/3p5j9mwe", + "contributions": [ + "instructions" + ] + }, + { + "login": "iletai", + "name": "Tài Lê", + "avatar_url": "https://avatars.githubusercontent.com/u/26614687?v=4", + "profile": "https://github.com/iletai", + "contributions": [ + "prompts" + ] + }, + { + "login": "twitthoeft-gls", + "name": "Troy Witthoeft (glsauto)", + "avatar_url": "https://avatars.githubusercontent.com/u/132710946?v=4", + "profile": "http://glsauto.com/", + "contributions": [ + "instructions" + ] + }, + { + "login": "tmeschter", + "name": "Tom Meschter", + "avatar_url": "https://avatars.githubusercontent.com/u/10506730?v=4", + "profile": "https://github.com/tmeschter", "contributions": [ "code" ] }, { - "login": "sdanzo-hrb", - "name": "sdanzo-hrb", - "avatar_url": "https://avatars.githubusercontent.com/u/136493100?v=4", - "profile": "https://github.com/sdanzo-hrb", + "login": "semperteneo", + "name": "Tj Vita", + "avatar_url": "https://avatars.githubusercontent.com/u/14024037?v=4", + "profile": "http://enakdesign.com/", + "contributions": [ + "agents" + ] + }, + { + "login": "STRUDSO", + "name": "Søren Trudsø Mahon", + "avatar_url": "https://avatars.githubusercontent.com/u/1543732?v=4", + "profile": "https://github.com/STRUDSO", + "contributions": [ + "instructions" + ] + }, + { + "login": "geoder101", + "name": "George Dernikos", + "avatar_url": "https://avatars.githubusercontent.com/u/145904?v=4", + "profile": "https://github.com/geoder101", "contributions": [ "code" ] }, { - "login": "voidfnc", - "name": "voidfnc", - "avatar_url": "https://avatars.githubusercontent.com/u/194750710?v=4", - "profile": "https://github.com/voidfnc", + "login": "gautambaghel", + "name": "Gautam", + "avatar_url": "https://avatars.githubusercontent.com/u/22324290?v=4", + "profile": "https://github.com/gautambaghel", + "contributions": [ + "agents" + ] + }, + { + "login": "feapaydin", + "name": "Furkan Enes", + "avatar_url": "https://avatars.githubusercontent.com/u/19946639?v=4", + "profile": "https://github.com/feapaydin", + "contributions": [ + "instructions" + ] + }, + { + "login": "fmuecke", + "name": "Florian Mücke", + "avatar_url": "https://avatars.githubusercontent.com/u/7921024?v=4", + "profile": "https://github.com/fmuecke", + "contributions": [ + "agents" + ] + }, + { + "login": "felixarjuna", + "name": "Felix Arjuna", + "avatar_url": "https://avatars.githubusercontent.com/u/79026094?v=4", + "profile": "https://www.felixarjuna.dev/", + "contributions": [ + "instructions" + ] + }, + { + "login": "ewega", + "name": "Eldrick Wega", + "avatar_url": "https://avatars.githubusercontent.com/u/26189114?v=4", + "profile": "https://github.com/ewega", + "contributions": [ + "prompts" + ] + }, + { + "login": "danchev", + "name": "Dobri Danchev", + "avatar_url": "https://avatars.githubusercontent.com/u/12420863?v=4", + "profile": "https://github.com/danchev", + "contributions": [ + "prompts" + ] + }, + { + "login": "difegam", + "name": "Diego Gamboa", + "avatar_url": "https://avatars.githubusercontent.com/u/7052267?v=4", + "profile": "https://dgamboa.com/", + "contributions": [ + "prompts" + ] + }, + { + "login": "derekclair", + "name": "Derek Clair", + "avatar_url": "https://avatars.githubusercontent.com/u/5247629?v=4", + "profile": "https://github.com/derekclair", + "contributions": [ + "agents", + "prompts" + ] + }, + { + "login": "davidortinau", + "name": "David Ortinau", + "avatar_url": "https://avatars.githubusercontent.com/u/41873?v=4", + "profile": "https://dev.to/davidortinau", "contributions": [ "code" ] }, { - "login": "webreidi", - "name": "Wendy Breiding", - "avatar_url": "https://avatars.githubusercontent.com/u/55603905?v=4", - "profile": "https://github.com/webreidi", + "login": "danielabbatt", + "name": "Daniel Abbatt", + "avatar_url": "https://avatars.githubusercontent.com/u/8926756?v=4", + "profile": "https://github.com/danielabbatt", + "contributions": [ + "instructions" + ] + }, + { + "login": "CypherHK", + "name": "CypherHK", + "avatar_url": "https://avatars.githubusercontent.com/u/230935834?v=4", + "profile": "https://github.com/CypherHK", + "contributions": [ + "agents", + "prompts" + ] + }, + { + "login": "craigbekker", + "name": "Craig Bekker", + "avatar_url": "https://avatars.githubusercontent.com/u/1115912?v=4", + "profile": "https://github.com/craigbekker", "contributions": [ "code" ] }, { - "login": "zooav", - "name": "Ankur Sharma", - "avatar_url": "https://avatars.githubusercontent.com/u/12625412?v=4", - "profile": "https://github.com/zooav", + "login": "tossnet", + "name": "Christophe Peugnet", + "avatar_url": "https://avatars.githubusercontent.com/u/3845786?v=4", + "profile": "https://www.peug.net/", + "contributions": [ + "instructions" + ] + }, + { + "login": "lechnerc77", + "name": "Christian Lechner", + "avatar_url": "https://avatars.githubusercontent.com/u/22294087?v=4", + "profile": "https://github.com/lechnerc77", + "contributions": [ + "instructions" + ] + }, + { + "login": "charris-msft", + "name": "Chris Harris", + "avatar_url": "https://avatars.githubusercontent.com/u/74415662?v=4", + "profile": "https://github.com/charris-msft", + "contributions": [ + "agents" + ] + }, + { + "login": "BBoyBen", + "name": "BBoyBen", + "avatar_url": "https://avatars.githubusercontent.com/u/34445365?v=4", + "profile": "https://github.com/BBoyBen", + "contributions": [ + "instructions" + ] + }, + { + "login": "artemsaveliev", + "name": "Artem Saveliev", + "avatar_url": "https://avatars.githubusercontent.com/u/15679218?v=4", + "profile": "https://github.com/artemsaveliev", + "contributions": [ + "instructions" + ] + }, + { + "login": "arey", + "name": "Antoine Rey", + "avatar_url": "https://avatars.githubusercontent.com/u/838318?v=4", + "profile": "https://javaetmoi.com/", "contributions": [ - "code" + "prompts" ] }, { - "login": "Jian-Min-Huang", - "name": "黃健旻 Vincent Huang", - "avatar_url": "https://avatars.githubusercontent.com/u/6296280?v=4", - "profile": "https://jianminhuang.cc/", + "login": "PiKa919", + "name": "Ankit Das", + "avatar_url": "https://avatars.githubusercontent.com/u/96786190?v=4", + "profile": "https://github.com/PiKa919", "contributions": [ - "code" + "instructions" ] }, { - "login": "dgh06175", - "name": "이상현", - "avatar_url": "https://avatars.githubusercontent.com/u/77305722?v=4", - "profile": "https://github.com/dgh06175", + "login": "alineavila", + "name": "Aline Ávila", + "avatar_url": "https://avatars.githubusercontent.com/u/24813256?v=4", + "profile": "https://github.com/alineavila", "contributions": [ - "code" + "instructions" ] }, { - "login": "abdidaudpropel", - "name": "Abdi Daud", - "avatar_url": "https://avatars.githubusercontent.com/u/51310019?v=4", - "profile": "https://github.com/abdidaudpropel", + "login": "martin-cod", + "name": "Alexander Martinkevich", + "avatar_url": "https://avatars.githubusercontent.com/u/33550246?v=4", + "profile": "https://github.com/martin-cod", "contributions": [ - "code" + "agents" ] }, { - "login": "AClerbois", - "name": "Adrien Clerbois", - "avatar_url": "https://avatars.githubusercontent.com/u/50712277?v=4", - "profile": "http://www.senseof.tech/", + "login": "aldunchev", + "name": "Aleksandar Dunchev", + "avatar_url": "https://avatars.githubusercontent.com/u/4631021?v=4", + "profile": "https://github.com/aldunchev", "contributions": [ - "code" + "agents" ] }, { @@ -559,169 +1282,169 @@ "avatar_url": "https://avatars.githubusercontent.com/u/1868590?v=4", "profile": "http://www.qreate.it/", "contributions": [ - "code" + "instructions" ] }, { - "login": "askpt", - "name": "André Silva", - "avatar_url": "https://avatars.githubusercontent.com/u/2493377?v=4", - "profile": "https://asilva.dev/", + "login": "akashxlr8", + "name": "Akash Kumar Shaw", + "avatar_url": "https://avatars.githubusercontent.com/u/58072860?v=4", + "profile": "https://github.com/akashxlr8", "contributions": [ - "code" + "instructions" ] }, { - "login": "arey", - "name": "Antoine Rey", - "avatar_url": "https://avatars.githubusercontent.com/u/838318?v=4", - "profile": "https://javaetmoi.com/", + "login": "abdidaudpropel", + "name": "Abdi Daud", + "avatar_url": "https://avatars.githubusercontent.com/u/51310019?v=4", + "profile": "https://github.com/abdidaudpropel", "contributions": [ - "code" + "agents" ] }, { - "login": "artemsaveliev", - "name": "Artem Saveliev", - "avatar_url": "https://avatars.githubusercontent.com/u/15679218?v=4", - "profile": "https://github.com/artemsaveliev", + "login": "4regab", + "name": "4regab", + "avatar_url": "https://avatars.githubusercontent.com/u/178603515?v=4", + "profile": "https://github.com/4regab", "contributions": [ - "code" + "instructions" ] }, { - "login": "brunoborges", - "name": "Bruno Borges", - "avatar_url": "https://avatars.githubusercontent.com/u/129743?v=4", - "profile": "http://brunoborges.io/", + "login": "michaelvolz", + "name": "Michael A. Volz (Flynn)", + "avatar_url": "https://avatars.githubusercontent.com/u/129928?v=4", + "profile": "https://www.linkedin.com/in/michael-volz/", "contributions": [ - "code" + "prompts" ] }, { - "login": "tossnet", - "name": "Christophe Peugnet", - "avatar_url": "https://avatars.githubusercontent.com/u/3845786?v=4", - "profile": "https://www.peug.net/", + "login": "Mike-Hanna", + "name": "Michael", + "avatar_url": "https://avatars.githubusercontent.com/u/50142889?v=4", + "profile": "https://github.com/Mike-Hanna", "contributions": [ - "code" + "instructions" ] }, { - "login": "MovingLive", - "name": "Chtive", - "avatar_url": "https://avatars.githubusercontent.com/u/14792628?v=4", - "profile": "https://www.movinglive.ca/", + "login": "mehmetalierol", + "name": "Mehmet Ali EROL", + "avatar_url": "https://avatars.githubusercontent.com/u/16721723?v=4", + "profile": "http://www.mehmetalierol.com/", "contributions": [ - "code" + "agents" ] }, { - "login": "craigbekker", - "name": "Craig Bekker", - "avatar_url": "https://avatars.githubusercontent.com/u/1115912?v=4", - "profile": "https://github.com/craigbekker", + "login": "maxprilutskiy", + "name": "Max Prilutskiy", + "avatar_url": "https://avatars.githubusercontent.com/u/5614659?v=4", + "profile": "https://maxprilutskiy.com/", "contributions": [ - "code" + "agents" ] }, { - "login": "breakid", - "name": "Dan", - "avatar_url": "https://avatars.githubusercontent.com/u/1446918?v=4", - "profile": "https://github.com/breakid", + "login": "mbianchidev", + "name": "Matteo Bianchi", + "avatar_url": "https://avatars.githubusercontent.com/u/37507190?v=4", + "profile": "https://github.com/mbianchidev", "contributions": [ - "code" + "agents" ] }, { - "login": "ewega", - "name": "Eldrick Wega", - "avatar_url": "https://avatars.githubusercontent.com/u/26189114?v=4", - "profile": "https://github.com/ewega", + "login": "codemillmatt", + "name": "Matt Soucoup", + "avatar_url": "https://avatars.githubusercontent.com/u/2053639?v=4", + "profile": "https://codemilltech.com/", "contributions": [ - "code" + "infra" ] }, { - "login": "felixarjuna", - "name": "Felix Arjuna", - "avatar_url": "https://avatars.githubusercontent.com/u/79026094?v=4", - "profile": "https://www.felixarjuna.dev/", + "login": "marknoble", + "name": "Mark Noble", + "avatar_url": "https://avatars.githubusercontent.com/u/3819700?v=4", + "profile": "http://marknoble.com/", "contributions": [ - "code" + "agents" ] }, { - "login": "feapaydin", - "name": "Furkan Enes", - "avatar_url": "https://avatars.githubusercontent.com/u/19946639?v=4", - "profile": "https://github.com/feapaydin", + "login": "ManishJayaswal", + "name": "Manish Jayaswal", + "avatar_url": "https://avatars.githubusercontent.com/u/9527491?v=4", + "profile": "https://github.com/ManishJayaswal", "contributions": [ - "code" + "agents" ] }, { - "login": "gewarren", - "name": "Genevieve Warren", - "avatar_url": "https://avatars.githubusercontent.com/u/24882762?v=4", - "profile": "http://learn.microsoft.com/dotnet", + "login": "lukemurraynz", + "name": "Luke Murray", + "avatar_url": "https://avatars.githubusercontent.com/u/24467442?v=4", + "profile": "https://linktr.ee/lukemurray", "contributions": [ - "code" + "agents" ] }, { - "login": "geoder101", - "name": "George Dernikos", - "avatar_url": "https://avatars.githubusercontent.com/u/145904?v=4", - "profile": "https://github.com/geoder101", + "login": "LouellaCreemers", + "name": "Louella Creemers", + "avatar_url": "https://avatars.githubusercontent.com/u/46204894?v=4", + "profile": "https://github.com/LouellaCreemers", "contributions": [ - "code" + "instructions" ] }, { - "login": "giomartinsdev", - "name": "Giovanni de Almeida Martins", - "avatar_url": "https://avatars.githubusercontent.com/u/125399281?v=4", - "profile": "https://github.com/giomartinsdev", + "login": "whiteken", + "name": "Kenny White", + "avatar_url": "https://avatars.githubusercontent.com/u/20211937?v=4", + "profile": "https://github.com/whiteken", "contributions": [ - "code" + "instructions" ] }, { - "login": "Ioana37", - "name": "Ioana A", - "avatar_url": "https://avatars.githubusercontent.com/u/69301842?v=4", - "profile": "https://github.com/Ioana37", + "login": "KaloyanGenev", + "name": "KaloyanGenev", + "avatar_url": "https://avatars.githubusercontent.com/u/42644424?v=4", + "profile": "https://github.com/KaloyanGenev", "contributions": [ - "code" + "agents" ] }, { - "login": "nohwnd", - "name": "Jakub Jareš", - "avatar_url": "https://avatars.githubusercontent.com/u/5735905?v=4", - "profile": "https://github.com/nohwnd", + "login": "Ranrar", + "name": "Kim Skov Rasmussen", + "avatar_url": "https://avatars.githubusercontent.com/u/95967772?v=4", + "profile": "https://github.com/Ranrar", "contributions": [ "code" ] }, { - "login": "joe-watkins", - "name": "Joe Watkins", - "avatar_url": "https://avatars.githubusercontent.com/u/3695795?v=4", - "profile": "http://joe-watkins.io/", + "login": "jdubois", + "name": "Julien Dubois", + "avatar_url": "https://avatars.githubusercontent.com/u/316835?v=4", + "profile": "https://www.julien-dubois.com/", "contributions": [ - "code" + "prompts" ] }, { - "login": "johnpapa", - "name": "John Papa", - "avatar_url": "https://avatars.githubusercontent.com/u/1202528?v=4", - "profile": "http://johnpapa.net/", + "login": "josegarridodigio", + "name": "José Antonio Garrido", + "avatar_url": "https://avatars.githubusercontent.com/u/173672918?v=4", + "profile": "https://digio.es/", "contributions": [ - "code" + "instructions" ] }, { @@ -730,128 +1453,117 @@ "avatar_url": "https://avatars.githubusercontent.com/u/15100839?v=4", "profile": "http://www.sugbo4j.co.nz/", "contributions": [ - "code" - ] - }, - { - "login": "josegarridodigio", - "name": "José Antonio Garrido", - "avatar_url": "https://avatars.githubusercontent.com/u/173672918?v=4", - "profile": "https://digio.es/", - "contributions": [ - "code" + "instructions", + "prompts" ] }, { - "login": "Ranrar", - "name": "Kim Skov Rasmussen", - "avatar_url": "https://avatars.githubusercontent.com/u/95967772?v=4", - "profile": "https://github.com/Ranrar", + "login": "yortch", + "name": "Jorge Balderas", + "avatar_url": "https://avatars.githubusercontent.com/u/4576246?v=4", + "profile": "https://github.com/yortch", "contributions": [ - "code" + "instructions" ] }, { - "login": "whiteken", - "name": "Kenny White", - "avatar_url": "https://avatars.githubusercontent.com/u/20211937?v=4", - "profile": "https://github.com/whiteken", + "login": "johnpapa", + "name": "John Papa", + "avatar_url": "https://avatars.githubusercontent.com/u/1202528?v=4", + "profile": "http://johnpapa.net/", "contributions": [ "code" ] }, { - "login": "LouellaCreemers", - "name": "Louella Creemers", - "avatar_url": "https://avatars.githubusercontent.com/u/46204894?v=4", - "profile": "https://github.com/LouellaCreemers", + "login": "johnlokerse", + "name": "John", + "avatar_url": "https://avatars.githubusercontent.com/u/3514513?v=4", + "profile": "https://www.johnlokerse.dev/", "contributions": [ - "code" + "agents" ] }, { - "login": "lukemurraynz", - "name": "Luke Murray", - "avatar_url": "https://avatars.githubusercontent.com/u/24467442?v=4", - "profile": "https://linktr.ee/lukemurray", + "login": "joe-watkins", + "name": "Joe Watkins", + "avatar_url": "https://avatars.githubusercontent.com/u/3695795?v=4", + "profile": "http://joe-watkins.io/", "contributions": [ - "code" + "instructions" ] }, { - "login": "marknoble", - "name": "Mark Noble", - "avatar_url": "https://avatars.githubusercontent.com/u/3819700?v=4", - "profile": "http://marknoble.com/", + "login": "Jandev", + "name": "Jan de Vries", + "avatar_url": "https://avatars.githubusercontent.com/u/462356?v=4", + "profile": "https://jan-v.nl/", "contributions": [ - "code" + "agents" ] }, { - "login": "soderlind", - "name": "Per Søderlind", - "avatar_url": "https://avatars.githubusercontent.com/u/1649452?v=4", - "profile": "https://soderlind.no", + "login": "nohwnd", + "name": "Jakub Jareš", + "avatar_url": "https://avatars.githubusercontent.com/u/5735905?v=4", + "profile": "https://github.com/nohwnd", "contributions": [ - "code" + "prompts" ] }, { - "login": "riqueufmg", - "name": "Henrique Nunes", - "avatar_url": "https://avatars.githubusercontent.com/u/108551585?v=4", - "profile": "https://github.com/riqueufmg", + "login": "jaxn", + "name": "Jackson Miller", + "avatar_url": "https://avatars.githubusercontent.com/u/29095?v=4", + "profile": "https://github.com/jaxn", "contributions": [ - "code" + "instructions" ] }, { - "login": "jeremiah-snee-openx", - "name": "Jeremiah Snee", - "avatar_url": "https://avatars.githubusercontent.com/u/113928685?v=4", - "profile": "https://github.com/jeremiah-snee-openx", + "login": "Ioana37", + "name": "Ioana A", + "avatar_url": "https://avatars.githubusercontent.com/u/69301842?v=4", + "profile": "https://github.com/Ioana37", "contributions": [ - "code" + "instructions" ] }, { - "login": "spectatora", - "name": "spectatora", - "avatar_url": "https://avatars.githubusercontent.com/u/1385755?v=4", - "profile": "https://github.com/spectatora", + "login": "hashimwarren", + "name": "Hashim Warren", + "avatar_url": "https://avatars.githubusercontent.com/u/6027587?v=4", + "profile": "https://github.com/hashimwarren", "contributions": [ - "code" + "agents" ] }, { - "login": "Mike-Hanna", - "name": "Michael", - "avatar_url": "https://avatars.githubusercontent.com/u/50142889?v=4", - "profile": "https://github.com/Mike-Hanna", + "login": "0GiS0", + "name": "Gisela Torres", + "avatar_url": "https://avatars.githubusercontent.com/u/175379?v=4", + "profile": "https://hachyderm.io/@0gis0", "contributions": [ - "code" + "agents" ] }, { - "login": "lechnerc77", - "name": "Christian Lechner", - "avatar_url": "https://avatars.githubusercontent.com/u/22294087?v=4", - "profile": "https://github.com/lechnerc77", + "login": "giomartinsdev", + "name": "Giovanni de Almeida Martins", + "avatar_url": "https://avatars.githubusercontent.com/u/125399281?v=4", + "profile": "https://github.com/giomartinsdev", "contributions": [ - "code" + "instructions" ] }, { - "login": "Jandev", - "name": "Jan de Vries", - "avatar_url": "https://avatars.githubusercontent.com/u/462356?v=4", - "profile": "https://jan-v.nl", + "login": "jfversluis", + "name": "Gerald Versluis", + "avatar_url": "https://avatars.githubusercontent.com/u/939291?v=4", + "profile": "https://jfversluis.dev/", "contributions": [ - "code" + "instructions" ] } - ], - "contributorsPerLine": 7, - "linkToUsage": true, - "commitType": "docs" + ] } diff --git a/.github/workflows/contributors.yml b/.github/workflows/contributors.yml index 13adbaa3e..159910eef 100644 --- a/.github/workflows/contributors.yml +++ b/.github/workflows/contributors.yml @@ -8,32 +8,52 @@ on: jobs: contributors: runs-on: ubuntu-latest + timeout-minutes: 12 permissions: contents: write pull-requests: write steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: - fetch-depth: 0 + fetch-depth: 0 # Required: add-missing-contributors.js needs full git history + + - name: Extract Node version from package.json + id: node-version + run: | + NODE_VERSION=$(jq -r '.engines.node // "22.x"' package.json) + echo "version=${NODE_VERSION}" >> "$GITHUB_OUTPUT" - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: - node-version: "20" + node-version: ${{ steps.node-version.outputs.version }} - name: Install dependencies - run: npm install + run: npm ci - - name: Update contributors - run: npm run contributors:check + - name: Check and report contributors + run: | + CHECK_OUTPUT=$(npm run contributors:check 2>&1) + echo "$CHECK_OUTPUT" + + if echo "$CHECK_OUTPUT" | grep -q "Missing contributors"; then + echo "Missing contributors detected, generating report..." + mkdir -p reports + npm run contributors:report + + if [ -f reports/contributor-report.md ]; then + cat reports/contributor-report.md >> $GITHUB_STEP_SUMMARY + fi + else + echo "No missing contributors found" + fi env: PRIVATE_TOKEN: ${{ secrets.GITHUB_TOKEN }} + continue-on-error: true - name: Regenerate README - run: | - npm install - npm start + run: npm start - name: Check for changes id: verify-changed-files diff --git a/.gitignore b/.gitignore index 8ff4ff517..893a921b8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ node_modules *.orig Copilot-Processing.md +reports/ # macOS system files .DS_Store diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 524a647f8..2f9bb65f0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -191,7 +191,8 @@ For full example of usage checkout edge-ai tasks collection: - A brief description of what your instruction/prompt does - Any relevant context or usage notes -**Note**: Once your contribution is merged, you'll automatically be added to our [Contributors](./README.md#contributors-) section! We use [all-contributors](https://github.com/all-contributors/all-contributors) to recognize all types of contributions to the project. +> [!NOTE] +> We use [all-contributors](https://github.com/all-contributors/all-contributors) to recognize all types of contributions to the project. Jump to [Contributors Recognition](#contributor-recognition) to learn more! ## What We Accept @@ -225,21 +226,33 @@ To maintain a safe, responsible, and constructive community, we will **not accep - **Write clearly**: Use simple, direct language - **Promote best practices**: Encourage secure, maintainable, and ethical development practices -## Contributors Recognition +## Contributor Recognition -This project uses [all-contributors](https://github.com/all-contributors/all-contributors) to recognize contributors. When you make a contribution, you'll automatically be recognized in our contributors list! +We use [all-contributors](https://github.com/all-contributors/all-contributors) to recognize **all types of contributions** to this project. -We welcome contributions of all types, including: +To add yourself, leave a comment on a relevant issue or pull request using your GitHub username and the appropriate contribution type(s): -- 📝 Documentation improvements -- 💻 Code contributions -- 🐛 Bug reports and fixes -- 🎨 Design improvements -- 💡 Ideas and suggestions -- 🤔 Answering questions -- 📢 Promoting the project +```markdown +@all-contributors add @username for contributionType1, contributionType2 +``` + +The contributors list is updated automatically every Sunday at **3:00 AM UTC**. When the next run completes, your name will appear in the [README Contributors](./README.md#contributors-) section. + +### Contribution Types + +We welcome many kinds of contributions, including the custom categories below: + +| Category | Description | Emoji | +| --- | --- | :---: | +| **Instructions** | Custom instruction sets that guide GitHub Copilot behavior | 🧭 | +| **Prompts** | Reusable or one-off prompts for GitHub Copilot | ⌨️ | +| **Agents (Chat Modes)** | Defined Copilot roles or personalities | 🎭 | +| **Collections** | Curated bundles of related prompts, agents, or instructions | 🎁 | + +In addition, all standard contribution types supported by [All Contributors](https://allcontributors.org/emoji-key/) are recognized. + +> Every contribution matters. Thanks for helping improve this resource for the GitHub Copilot community. -Your contributions help make this resource better for the entire GitHub Copilot community! ## Code of Conduct diff --git a/README.md b/README.md index 58881bc99..d22fa5cf7 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,6 @@ # 🤖 Awesome GitHub Copilot Customizations +[![Powered by Awesome Copilot](https://img.shields.io/badge/Powered_by-Awesome_Copilot-blue?logo=githubcopilot)](https://aka.ms/awesome-github-copilot?style=flat-square) [![GitHub contributors from allcontributors.org](https://img.shields.io/github/all-contributors/github/awesome-copilot?style=flat-square&color=ee8449)](#contributors-) -[![Powered by Awesome Copilot](https://img.shields.io/badge/Powered_by-Awesome_Copilot-blue?logo=githubcopilot)](https://aka.ms/awesome-github-copilot) - -[![All Contributors](https://img.shields.io/badge/all_contributors-93-orange.svg?style=flat-square)](#contributors-) - A community created collection of custom agents, prompts, and instructions to supercharge your GitHub Copilot experience across different domains, languages, and use cases. @@ -127,7 +124,7 @@ The customizations in this repository are sourced from and created by third-part ## Contributors ✨ -Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)): +Thanks goes to these wonderful people ([emoji key](./CONTRIBUTING.md#contributors-recognition)): @@ -135,125 +132,215 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - + + + + + + + + + + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - + + + + + + + - - + + diff --git a/eng/README.md b/eng/README.md new file mode 100644 index 000000000..ff95c85db --- /dev/null +++ b/eng/README.md @@ -0,0 +1,36 @@ +# Contributor Reporting (Maintainers) 🚧 + +This directory contains a lightweight helper to generate human-readable reports about missing contributors. + +- `contributor-report.mjs` — generates a markdown report of merged PRs for missing contributors (includes shared helpers). +- `add-missing-contributors.mjs` — on-demand maintainer script to automatically add missing contributors to `.all-contributorsrc` (infers contribution types from merged PR files, then runs the all-contributors CLI). + +## Key notes for maintainers + +- Reports are generated on-demand and output to `reports/contributor-report.md` for human review. +- The report output is intentionally minimal: a single list of affected PRs and one command to add missing contributor(s). +- This repository requires full git history for accurate analysis. In CI, set `fetch-depth: 0`. +- Link: [all-contributors CLI documentation](https://allcontributors.org/docs/en/cli) + +## On-demand scripts (not CI) + +These are maintainer utilities. They are intentionally on-demand only (but could be wired into CI later). + +### `add-missing-contributors.mjs` + +- Purpose: detect missing contributors, infer contribution types from their merged PR files, and run `npx all-contributors add ...` to update `.all-contributorsrc`. +- Requirements: + - GitHub CLI (`gh`) available (used to query merged PRs). + - `.all-contributorsrc` exists. + - Auth token set to avoid the anonymous GitHub rate limits: + - Set `GITHUB_TOKEN` (preferred), or `GH_TOKEN` for the `gh` CLI. + - If you use `PRIVATE_TOKEN` locally, `contributor-report.mjs` will map it to `GITHUB_TOKEN`. + +## Graceful shutdown + +- `contributor-report.mjs` calls `setupGracefulShutdown('script-name')` from `eng/utils/graceful-shutdown.mjs` early in the file to attach signal/exception handlers. + +## Testing & maintenance + +- Helper functions have small, deterministic behavior and include JSDoc comments. +- The `getMissingContributors` function in `contributor-report.mjs` is the single source of truth for detecting missing contributors from `all-contributors check` output. diff --git a/eng/add-missing-contributors.mjs b/eng/add-missing-contributors.mjs new file mode 100644 index 000000000..dc8911c54 --- /dev/null +++ b/eng/add-missing-contributors.mjs @@ -0,0 +1,306 @@ +/** + * One-time contributor detection and addition script. + * Discovers missing contributors, determines their contribution types from repo history, + * and updates .all-contributorsrc via the all-contributors CLI. + * + * Usage: node add-missing-contributors.mjs + */ +import { execSync } from 'node:child_process'; +import fs from 'node:fs'; +import path from 'node:path'; +import { + getContributionTypes, + getMissingContributors, + fetchContributorMergedPrs +} from './contributor-report.mjs'; +import { setupGracefulShutdown } from './utils/graceful-shutdown.mjs'; + +const DEFAULT_CMD_TIMEOUT = 30_000; // 30 seconds + +setupGracefulShutdown('add-missing-contributors'); + +/** + * Get all files touched by a contributor from their merged PRs. + * @param {string} username + * @returns {string[]} + */ +const getContributorFiles = (username) => { + try { + console.log(`📁 Getting files for contributor: ${username}`); + + const prs = fetchContributorMergedPrs(username, { includeAllFiles: true }); + + if (prs.length === 0) { + console.log(`📭 No merged PRs found for ${username}`); + return []; + } + + const files = new Set(); + for (const pr of prs) { + for (const file of pr.files || []) { + if (file?.path) { + files.add(file.path); + } + } + } + + const fileList = Array.from(files); + console.log(`📄 Found ${fileList.length} unique files for ${username}: ${fileList.slice(0, 3).join(', ')}${fileList.length > 3 ? '...' : ''}`); + return fileList; + + } catch (error) { + console.error(`❌ Error getting files for ${username}:`, error.message); + return []; + } +}; + +/** + * Determine contribution types from a contributor's files. + * @param {string} username + * @returns {string} + */ +const analyzeContributor = (username) => { + try { + console.log(`🔍 Analyzing contribution types for: ${username}`); + const files = getContributorFiles(username); + + if (files.length === 0) { + console.log(`💡 No files found for ${username}, using 'code' fallback`); + return 'code'; + } + + const contributionTypes = getContributionTypes(files); + + if (!contributionTypes || contributionTypes.trim() === '') { + console.log(`💡 No matching types found for ${username}, using 'code' fallback`); + return 'code'; + } + + console.log(`✅ Determined types for ${username}: ${contributionTypes}`); + return contributionTypes; + + } catch (error) { + console.error(`❌ Error analyzing files for ${username}:`, error.message); + return 'code'; + } +}; + +/** + * Add a username to the ignore list in .all-contributorsrc. + * @param {string} username + * @returns {boolean} + */ +const addToIgnoreList = (username) => { + try { + const configPath = path.join(process.cwd(), '.all-contributorsrc'); + const config = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + + const ignoreList = config.ignoreList || config.ignore || []; + if (!ignoreList.includes(username)) { + ignoreList.push(username); + config.ignoreList = ignoreList; + fs.writeFileSync(configPath, JSON.stringify(config, null, 2)); + console.warn(`⚠️ Added ${username} to ignore list (user not found on GitHub)`); + return true; + } + return false; + } catch (error) { + console.error(`❌ Failed to add ${username} to ignore list:`, error.message); + return false; + } +}; + +/** + * Run the all-contributors CLI to add a contributor to the project. + * @param {string} username + * @param {string} types + * @returns {boolean} + */ +const addContributor = (username, types) => { + try { + console.log(`➕ Adding contributor: ${username} with types: ${types}`); + + const command = `npx all-contributors add ${username} ${types}`; + + execSync(command, { + encoding: 'utf8', + stdio: ['pipe', 'pipe', 'pipe'], + timeout: DEFAULT_CMD_TIMEOUT + }); + + return true; + + } catch (error) { + // System-level errors that should propagate up + if (error.message.includes('rate limit') || error.message.includes('403')) { + console.error(`⏱️ Rate limit encountered while adding ${username}.`); + throw error; + } + if (error.message.includes('network') || error.message.includes('timeout')) { + console.error(`🌐 Network error while adding ${username}.`); + throw error; + } + + // User-specific errors that can be skipped + if (error.message.includes('404') || error.message.includes('not found')) { + addToIgnoreList(username); + console.error(`❌ User ${username} not found, added to ignore list`); + return false; + } + + // Unknown error - log and skip + console.error(`❌ Failed to add contributor ${username}:`, error.message); + return false; + } +}; + +/** + * Process a single missing contributor: detect types and add via all-contributors CLI. + * @param {string} username + * @returns {{added:number, failed:number}} + */ +const processContributor = async (username) => { + let added = 0; + let failed = 0; + + try { + console.log(`📊 Step 2: Analyzing contribution types for ${username}...`); + const contributionTypes = analyzeContributor(username); + + console.log(`➕ Step 3: Adding ${username} with types: ${contributionTypes}...`); + + const success = addContributor(username, contributionTypes); + if (success) { + added++; + console.log(`✅ Successfully processed ${username}`); + } else { + failed++; + console.log(`❌ Failed to process ${username}`); + } + + } catch (error) { + failed++; + console.error(`💥 Error processing ${username}:`, error.message); + } + + return { added, failed }; +}; + +/** + * Main entry point: detect and add missing contributors. + */ +const main = async () => { + console.log('🚀 Starting add missing contributors script'); + console.log('='.repeat(50)); + + try { + console.log('\n📋 Step 1: Detecting missing contributors...'); + const missingContributors = getMissingContributors(); + + if (missingContributors.length === 0) { + console.log('🎉 No missing contributors found! All contributors are properly recognized.'); + return { processed: 0, added: 0, failed: 0 }; + } + + console.log(`\n🔄 Processing ${missingContributors.length} missing contributors...`); + + let processed = 0; + let added = 0; + let failed = 0; + + for (const username of missingContributors) { + console.log(`\n${'─'.repeat(30)}`); + console.log(`👤 Processing contributor: ${username}`); + + processed++; + + try { + const { added: deltaAdded, failed: deltaFailed } = await processContributor(username); + added += deltaAdded; + failed += deltaFailed; + } catch (error) { + // Re-throw system-level errors (rate limit, network, SIGINT) + console.error(`💥 System error processing ${username}:`, error.message); + throw error; + } + } + + return { processed, added, failed }; + } catch (error) { + console.error('\n💥 Fatal error in main execution:', error.message); + console.error('🛑 Script execution stopped'); + throw error; + } +}; + +/** + * Print a summary report of the run. + * @param {{processed:number, added:number, failed:number}} results + */ +const printSummaryReport = (results) => { + const { processed, added, failed } = results; + + console.log('\n' + '='.repeat(50)); + console.log('📊 EXECUTION SUMMARY'); + console.log('='.repeat(50)); + + console.log(`📋 Total contributors processed: ${processed}`); + console.log(`✅ Successfully added: ${added}`); + console.log(`❌ Failed to add: ${failed}`); + + if (processed === 0) { + console.log('\n🎉 SUCCESS: No missing contributors found - all contributors are properly recognized!'); + } else if (failed === 0) { + console.log('\n🎉 SUCCESS: All missing contributors have been successfully added!'); + console.log('💡 Next steps: Review the updated .all-contributorsrc file and commit the changes.'); + } else if (added > 0) { + console.log('\n⚠️ PARTIAL SUCCESS: Some contributors were added, but some failed.'); + console.log(`💡 ${added} contributors were successfully added.`); + console.log(`🔄 ${failed} contributors failed - check the error messages above for details.`); + console.log('💡 You may want to run the script again to retry failed contributors.'); + } else { + console.log('\n❌ FAILURE: No contributors could be added.'); + console.log('💡 Check the error messages above for troubleshooting guidance.'); + console.log('💡 Common issues: missing GITHUB_TOKEN, network problems, or API rate limits.'); + } + + console.log('\n📝 ACTIONABLE NEXT STEPS:'); + if (added > 0) { + console.log('• Review the updated .all-contributorsrc file'); + console.log('• Commit and push the changes to update the README'); + console.log('• Consider running "npm run contributors:generate" to update the README'); + } + if (failed > 0) { + console.log('• Check error messages above for specific failure reasons'); + console.log('• Verify GITHUB_TOKEN is set and has appropriate permissions'); + console.log('• Consider running the script again after resolving issues'); + } + if (processed === 0) { + console.log('• No action needed - all contributors are already recognized!'); + } + + console.log('\n' + '='.repeat(50)); +}; + +if (process.argv[1] === (new URL(import.meta.url)).pathname) { + try { + const results = await main(); + printSummaryReport(results); + + if (results.failed > 0 && results.added === 0) { + process.exit(1); + } else if (results.failed > 0) { + process.exit(2); + } else { + process.exit(0); + } + } catch (error) { + console.error('\n💥 Script execution failed:', error.message); + console.log('\n📝 TROUBLESHOOTING TIPS:'); + console.log('• Ensure you are in a git repository'); + console.log('• Verify all-contributors-cli is installed'); + console.log('• Check that .all-contributorsrc file exists'); + console.log('• Ensure GITHUB_TOKEN environment variable is set'); + process.exit(1); + } +} diff --git a/eng/contributor-report.mjs b/eng/contributor-report.mjs new file mode 100644 index 000000000..e67d4805f --- /dev/null +++ b/eng/contributor-report.mjs @@ -0,0 +1,597 @@ +/** + * Generate human-readable reports about missing contributors. + * This module queries merged PRs via 'gh' and produces a markdown report. + */ +import { execSync } from 'node:child_process'; +import fs from 'node:fs'; +import path from 'node:path'; +import { setupGracefulShutdown } from './utils/graceful-shutdown.mjs'; + +const DEFAULT_CMD_TIMEOUT = 30_000; // 30s + +setupGracefulShutdown('contributor-report'); + +/** + * Patterns that represent generated files; contributors should not be credited + * for these files because they are not substantive authored content. + */ +export const AUTO_GENERATED_PATTERNS = [ + 'README.md', + 'README.*.md', + 'collections/*.md', + 'collections/*.collection.md', + 'docs/README.*.md', + 'docs/*.generated.md' +]; + +/** + * File globs used to infer contribution types from file paths. + */ +export const TYPE_PATTERNS = { + instructions: [ + 'instructions/*.instructions.md' + ], + prompts: [ + 'prompts/*.prompt.md' + ], + agents: [ + 'chatmodes/*.chatmode.md', + 'agents/*.agent.md' + ], + collections: [ + 'collections/*.collection.yml' + ], + doc: [ + 'docs/**/*.md', + '.github/**/*.md', + 'CONTRIBUTING.md', + 'SECURITY.md', + 'SUPPORT.md', + 'LICENSE.md', + 'CHANGELOG.md', + '*.md' + ], + infra: [ + '.github/workflows/**/*.yml', + '.github/workflows/**/*.yaml', + '**/*.yml', + '**/*.yaml' + ], + maintenance: [ + 'package*.json', + '*.config.js', + 'tsconfig*.json' + ], + code: [ + '**/*.{js,ts,mjs,cjs}', + '**/*.py' + ] +}; + +const globCache = new Map(); + +/** + * Convert a simple glob (with *, **) to a RegExp. + * This is intentionally small and deterministic for our repo patterns. + * @param {string} pattern + * @returns {RegExp} + */ +export const globToRegExp = (pattern) => { + const DOUBLE_WILDCARD_PLACEHOLDER = '§§DOUBLE§§'; + const replacements = [ + { pattern: /\\/g, replacement: '/' }, + { pattern: /\./g, replacement: String.raw`\.` }, + { pattern: /\*\*/g, replacement: DOUBLE_WILDCARD_PLACEHOLDER }, + { pattern: /\*/g, replacement: '[^/]*' }, + { pattern: new RegExp(DOUBLE_WILDCARD_PLACEHOLDER, 'g'), replacement: '.*' }, + { pattern: /\?/g, replacement: '.' }, + { pattern: /\//g, replacement: String.raw`\/` } + ]; + + const normalized = replacements.reduce((acc, { pattern, replacement }) => acc.replace(pattern, replacement), String(pattern)); + + return new RegExp(`^${normalized}$`); +}; + +/** + * Test whether a file path matches a glob pattern. + * @param {string} filePath + * @param {string} pattern + * @returns {boolean} + */ +export const matchGlob = (filePath, pattern) => { + if (!globCache.has(pattern)) { + try { + globCache.set(pattern, globToRegExp(pattern)); + } catch { + globCache.set(pattern, null); + } + } + + const regexp = globCache.get(pattern); + if (!regexp) { + return false; + } + + const normalized = filePath.replace(/\\/g, '/'); + return regexp.test(normalized); +}; + +/** + * Return true if the given path matches one of the known auto-generated patterns. + * @param {string} filePath + * @returns {boolean} + */ +export const isAutoGeneratedFile = (filePath) => { + return AUTO_GENERATED_PATTERNS.some((pattern) => matchGlob(filePath, pattern)); +}; + +/** + * Infer a contribution type string (e.g. 'prompts', 'agents', 'doc') for a file path. + * Returns null if no specific type matched. + * @param {string} filePath + * @returns {string|null} + */ +export const getFileContributionType = (filePath) => { + const normalized = filePath.replace(/\\/g, '/'); + + for (const [type, patterns] of Object.entries(TYPE_PATTERNS)) { + if (patterns.some((pattern) => matchGlob(normalized, pattern))) { + return type; + } + } + + return null; +}; + +/** + * Derive a comma-separated list of contribution type identifiers from a list of files. + * Auto-generated files are ignored. Returns '' when no files to process. + * @param {string[]} files + * @returns {string} + */ +export const getContributionTypes = (files) => { + const types = new Set(); + let processed = 0; + + for (const file of files) { + if (isAutoGeneratedFile(file)) { + continue; + } + + processed += 1; + const type = getFileContributionType(file); + if (type) { + types.add(type); + } + } + + if (processed === 0) { + return ''; + } + + if (types.size === 0) { + types.add('code'); + } + + return Array.from(types).sort((a, b) => a.localeCompare(b)).join(','); +}; + +/** + * Check .all-contributors output to discover missing contributors. + * This is the canonical implementation used by contributor tooling. + * @returns {string[]} + */ +export const getMissingContributors = () => { + try { + console.log('🔍 Checking for missing contributors...'); + + const configPath = path.join(process.cwd(), '.all-contributorsrc'); + const config = JSON.parse(fs.readFileSync(configPath, 'utf-8')); + const ignoreEntries = config.ignoreList || config.ignore || []; + const ignoreSet = new Set(ignoreEntries.map((entry) => entry.toLowerCase())); + + if (ignoreSet.size > 0) { + console.log(`📋 Loaded ignore list: ${Array.from(ignoreSet).join(', ')}`); + } + + const output = execSync('npx all-contributors check', { + encoding: 'utf8', + stdio: ['pipe', 'pipe', 'pipe'], + timeout: DEFAULT_CMD_TIMEOUT + }); + + const lines = output.split('\n'); + + const headerLineIndex = lines.findIndex(line => + line.includes('Missing contributors in .all-contributorsrc:') + ); + + if (headerLineIndex === -1) { + console.log('✅ No missing contributors found'); + return []; + } + + let contributorsLine = ''; + for (let i = headerLineIndex + 1; i < lines.length; i++) { + const line = lines[i].trim(); + + if (line.includes('Unknown contributors') || line.includes('✨')) { + break; + } + + if (line && !line.startsWith('⠙') && !line.startsWith('✨')) { + contributorsLine = line; + break; + } + } + + if (!contributorsLine) { + console.log('✅ No missing contributors found'); + return []; + } + + const allUsernames = contributorsLine + .split(',') + .map(username => username.trim()) + .filter(username => username.length > 0); + + const filteredUsernames = allUsernames.filter(username => { + const lowerUsername = username.toLowerCase(); + + if (ignoreSet.has(lowerUsername)) { + console.log(`⏭️ FILTERED: ${username} is in ignore list`); + return false; + } + + return true; + }); + + console.log(`📋 Found ${filteredUsernames.length} missing contributors after filtering: ${filteredUsernames.join(', ')}`); + return filteredUsernames; + + } catch (error) { + console.error('❌ Error checking for missing contributors:', error.message); + if (error.message.includes('command not found') || error.message.includes('not recognized')) { + console.error('💡 Make sure all-contributors-cli is installed: npm install all-contributors-cli'); + } + return []; + } +}; + +// --- REPORT GENERATION LOGIC --- + +/** + * Get the current GitHub repository in owner/repo format. + * Tries upstream first, then origin. + * @returns {string} + */ +const getGitHubRepo = () => { + try { + const upstreamUrl = execSync('git config --get remote.upstream.url', { + encoding: 'utf8', + stdio: ['pipe', 'pipe', 'pipe'] + }).trim(); + if (upstreamUrl) { + const match = upstreamUrl.match(/github\.com:([^/]+)\/([^/]+?)(?:\.git)?$/); + if (match) return `${match[1]}/${match[2]}`; + } + } catch (e) { + console.debug('upstream not found, trying origin'); + } + + try { + const originUrl = execSync('git config --get remote.origin.url', { + encoding: 'utf8', + stdio: ['pipe', 'pipe', 'pipe'] + }).trim(); + const match = originUrl.match(/github\.com:([^/]+)\/([^/]+?)(?:\.git)?$/); + if (match) return `${match[1]}/${match[2]}`; + } catch (e) { + console.debug('origin not found, using default'); + } + + return 'github/awesome-copilot'; +}; + +const CONTRIBUTION_TYPE_MAP = { + 'instructions': { symbol: '🧭', description: 'The big AI prompt recipes (Copilot instruction sets)' }, + 'prompts': { symbol: '⌨️', description: 'One-shot or reusable user-level prompts' }, + 'agents': { symbol: '🎭', description: 'Defined Copilot personalities / roles' }, + 'collections': { symbol: '🎁', description: 'Bundled thematic sets (e.g., "Copilot for Docs")' } +}; + +/** + * Fetch merged PRs for a GitHub username using the GH CLI and filter files. + * @param {string} username + * @param {{includeAllFiles?:boolean}} [opts] + * @returns {Array} Array of PR objects + */ +export const fetchContributorMergedPrs = (username, { includeAllFiles = false } = {}) => { + try { + const repo = getGitHubRepo(); + const result = execSync( + `gh pr list --repo ${repo} --state merged --author ${username} --json number,title,mergedAt,files,url --limit 100`, + { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'], timeout: DEFAULT_CMD_TIMEOUT } + ); + const prs = JSON.parse(result); + + if (includeAllFiles) { + return prs; + } + + return prs.filter(pr => { + const hasNonConfigFiles = pr.files.some(file => + !isAutoGeneratedFile(file.path) + ); + return hasNonConfigFiles; + }); + } catch (error) { + console.error(`Failed to fetch PRs for ${username}:`, error.message); + return []; + } +}; + +/** + * Convert a PR object into a normalized report entry with types and file details. + * @param {{login:string}} contributor + * @param {object} pr + * @param {{includeAllFiles?:boolean}} [opts] + * @returns {object|null} + */ +const generatePRReport = (contributor, pr, { includeAllFiles = false } = {}) => { + const types = new Set(); + const fileDetails = []; + + for (const file of pr.files) { + if (!file?.path) { + continue; + } + + // Include generated files only if includeAllFiles is true + if (!includeAllFiles && isAutoGeneratedFile(file.path)) { + continue; + } + + const type = getFileContributionType(file.path) || 'ideas'; + if (type) { + types.add(type); + } + + fileDetails.push({ + path: file.path, + type: type || 'unknown', + additions: file.additions, + deletions: file.deletions + }); + } + + // If no non-filtered files contributed to types, and we're not asked for all files, skip this PR + if (types.size === 0 && !includeAllFiles) { + return null; + } + + // Fallback to 'code' if no types detected + if (types.size === 0) { + types.add('code'); + } + + const typeList = Array.from(types); + + return { + prNumber: pr.number, + prTitle: pr.title, + prUrl: pr.url, + mergedAt: pr.mergedAt, + contributionTypes: typeList, + files: fileDetails, + commentSnippet: `@all-contributors please add @${contributor.login} for ${typeList.join(', ')}` + }; +}; + +/** + * Build a contributor report by inspecting merged PRs and mapping files to types. + * Returns null when no relevant PRs were found (unless includeAllFiles is true). + * @param {string} username + * @param {{includeAllFiles?:boolean}} [opts] + * @returns {object|null} + */ +export const generateContributorReport = (username, { includeAllFiles = false } = {}) => { + console.log(`Inspecting ${username}...`); + + const prs = fetchContributorMergedPrs(username, { includeAllFiles }); + const prReports = prs + .map(pr => generatePRReport({ login: username }, pr, { includeAllFiles })) + .filter(report => report !== null); + + // If no relevant PR reports and not explicitly including all files, skip the contributor entirely + if (prReports.length === 0 && !includeAllFiles) { + return null; + } + + return { + username, + totalPRs: prs.length, + prs: prReports + }; +}; + +/** + * Render a set of contributor reports as markdown for human review. + * @param {Array} reports + * @param {number} missingCount - number of missing contributors detected + * @returns {string} + */ +export const generateMarkdownReport = (reports, missingCount = 0) => { + // The report is intentionally minimal: a single list of affected PRs and + // a single copy/paste command maintainers can run locally. + // No timestamps, per-file breakdowns, or duplicated metadata. + + if (!missingCount) { + return 'No missing contributors detected.\n'; + } + + // 1) Single list of affected PRs (deduped). + const prEntries = new Map(); // key=prNumber or url, value={number,url,mergedAt} + for (const report of reports) { + for (const pr of report.prs) { + const key = pr.prUrl || String(pr.prNumber); + if (!prEntries.has(key)) { + prEntries.set(key, { + number: pr.prNumber, + url: pr.prUrl, + mergedAt: pr.mergedAt + }); + } + } + } + + const prList = Array.from(prEntries.values()).sort((a, b) => { + // Prefer chronological sort for stable “what happened” review. + const aTime = a.mergedAt ? Date.parse(a.mergedAt) : 0; + const bTime = b.mergedAt ? Date.parse(b.mergedAt) : 0; + if (aTime !== bTime) return aTime - bTime; + return (a.number ?? 0) - (b.number ?? 0); + }); + + // 2) One command (one line). If multiple users are missing, chain them. + const commandParts = []; + for (const report of reports) { + const typeSet = new Set(); + for (const pr of report.prs) { + for (const type of pr.contributionTypes || []) { + typeSet.add(type); + } + } + + const types = Array.from(typeSet).filter(Boolean).sort((a, b) => a.localeCompare(b)); + const typesArg = types.length > 0 ? types.join(',') : 'code'; + commandParts.push(`npx all-contributors add ${report.username} ${typesArg}`); + } + + let markdown = ''; + markdown += prList.map((pr) => `- #${pr.number} ${pr.url}`).join('\n'); + markdown += '\n\n'; + markdown += commandParts.join(' && '); + markdown += '\n'; + return markdown; +}; + +/** + * Check whether a PR already contains an all-contributors bot comment. + * @param {number} prNumber + * @returns {boolean} + */ +export const hasExistingAllContributorsComment = (prNumber) => { + try { + const repo = getGitHubRepo(); + const json = execSync(`gh pr view ${prNumber} --repo ${repo} --json comments`, { + encoding: 'utf8', + stdio: ['pipe', 'pipe', 'pipe'], + timeout: DEFAULT_CMD_TIMEOUT + }); + + const data = JSON.parse(json); + const comments = data?.comments?.nodes || data?.comments || []; + return comments.some((comment) => comment?.body?.includes(`@all-contributors`)); + } catch (error) { + console.warn(`⚠️ Unable to inspect comments for PR #${prNumber}: ${error.message}`); + return false; + } +}; + +/** + * Post a comment to a PR using the GH CLI. + * @param {number} prNumber + * @param {string} body + * @returns {boolean} + */ +export const postCommentOnPr = (prNumber, body) => { + try { + const repo = getGitHubRepo(); + execSync(`gh pr comment ${prNumber} --repo ${repo} --body "${body.replace(/"/g, '\\"')}"`, { + encoding: 'utf8', + stdio: ['pipe', 'inherit', 'inherit'], + timeout: DEFAULT_CMD_TIMEOUT + }); + + console.log(`💬 Posted recommendation comment on PR #${prNumber}`); + return true; + } catch (error) { + console.warn(`⚠️ Failed to post comment on PR #${prNumber}: ${error.message}`); + return false; + } +}; + +/** + * Post suggested all-contributors comments to PRs for a collection of reports. + * @param {Array} reports + */ +export const autoAddCommentsToReports = (reports) => { + for (const report of reports) { + for (const pr of report.prs) { + if (hasExistingAllContributorsComment(pr.prNumber)) { + console.log(`💬 Skipping PR #${pr.prNumber} for @${report.username} — comment already present`); + continue; + } + + const types = pr.contributionTypes.map(t => '`' + t + '`').join(', '); + const commentLines = [ + `Thanks for the contribution @${report.username}!`, + '', + `We detected contribution categories for this PR: ${types || '`code`'}.`, + '', + `@all-contributors please add @${report.username} for ${pr.contributionTypes.join(', ')}` + ]; + + const body = commentLines.join('\n'); + postCommentOnPr(pr.prNumber, body); + } + } +}; + +const main = () => { + try { + const ghToken = process.env.GITHUB_TOKEN || process.env.PRIVATE_TOKEN; + if (!ghToken) { + console.error('❌ GITHUB_TOKEN or PRIVATE_TOKEN environment variable is required for GitHub CLI operations'); + process.exit(1); + } + + // gh CLI only reads GITHUB_TOKEN or GH_TOKEN, so ensure it's set + if (process.env.PRIVATE_TOKEN && !process.env.GITHUB_TOKEN) { + process.env.GITHUB_TOKEN = process.env.PRIVATE_TOKEN; + } + + const args = new Set(process.argv.slice(2)); + const autoAdd = args.has('--auto-add-pr-comments'); + const includeAllFiles = args.has('--include-all-pr-files'); + + const contributors = getMissingContributors(); + console.log(`Inspecting ${contributors.length} missing contributors...\n`); + + const reports = []; + for (const contributor of contributors) { + const report = generateContributorReport(contributor, { includeAllFiles }); + reports.push(report || { username: contributor, totalPRs: 0, prs: [] }); + } + + const markdown = generateMarkdownReport(reports, contributors.length); + const outputPath = path.join(process.cwd(), 'reports', 'contributor-report.md'); + fs.writeFileSync(outputPath, markdown); + + console.log(`Report saved to: ${outputPath}`); + + if (autoAdd) { + autoAddCommentsToReports(reports); + } + + } catch (error) { + console.error('Error generating report:', error); + process.exit(1); + } +}; + +if (process.argv[1] === (new URL(import.meta.url)).pathname) { + main(); +} diff --git a/eng/utils/graceful-shutdown.mjs b/eng/utils/graceful-shutdown.mjs new file mode 100644 index 000000000..036f33f23 --- /dev/null +++ b/eng/utils/graceful-shutdown.mjs @@ -0,0 +1,60 @@ +/** + * Lightweight graceful shutdown helper for one-off scripts. + * + * Call setupGracefulShutdown('script-name') early in your script to attach + * signal and exception handlers that exit the process cleanly. + * + * @param {string} name - Human readable name for log messages + * @param {{exitCode?:number}} [opts] + * @returns {() => void} teardown function to remove handlers (useful in tests) + */ +export const setupGracefulShutdown = (name, { exitCode = 1 } = {}) => { + let _shuttingDown = false; + + const cleanup = (signal) => { + if (_shuttingDown) return; + _shuttingDown = true; + console.log(`\n🛑 ${name}: received ${signal}, shutting down gracefully...`); + // Best-effort cleanup: keep this short and synchronous + try { + // Place for lightweight cleanup tasks if needed in future + } catch (e) { + console.error(`${name}: error during shutdown cleanup:`, e); + } + + // Exit with a non-zero code to indicate abnormal termination + try { + process.exit(exitCode); + } catch (e) { + // process.exit may not be desirable in some test harnesses; swallow errors + console.warn(`${name}: process.exit failed:`, e?.message); + } + }; + + const onSigInt = () => cleanup('SIGINT'); + const onSigTerm = () => cleanup('SIGTERM'); + const onSigHup = () => cleanup('SIGHUP'); + const onUncaught = (err) => { + console.error(`${name}: Uncaught exception:`, err); + cleanup('uncaughtException'); + }; + const onUnhandledRejection = (reason) => { + console.error(`${name}: Unhandled promise rejection:`, reason); + cleanup('unhandledRejection'); + }; + + process.on('SIGINT', onSigInt); + process.on('SIGTERM', onSigTerm); + process.on('SIGHUP', onSigHup); + process.on('uncaughtException', onUncaught); + process.on('unhandledRejection', onUnhandledRejection); + + // Return a teardown function useful for tests or if a caller wants to remove handlers + return () => { + process.removeListener('SIGINT', onSigInt); + process.removeListener('SIGTERM', onSigTerm); + process.removeListener('SIGHUP', onSigHup); + process.removeListener('uncaughtException', onUncaught); + process.removeListener('unhandledRejection', onUnhandledRejection); + }; +}; diff --git a/package.json b/package.json index 5f25ae579..bf367d1a9 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "start": "npm run build", "build": "node ./eng/update-readme.mjs", "contributors:add": "all-contributors add", + "contributors:report": "node ./eng/contributor-report.mjs", "contributors:generate": "all-contributors generate", "contributors:check": "all-contributors check", "collection:validate": "node ./eng/validate-collections.mjs", @@ -24,7 +25,9 @@ "copilot", "ai", "prompts", - "instructions" + "instructions", + "chat modes", + "agents" ], "author": "GitHub", "license": "MIT", From d9d99cf3aadad8ff50bb29ef341ba263367c641e Mon Sep 17 00:00:00 2001 From: Ashley Childress <6563688+anchildress1@users.noreply.github.com> Date: Fri, 19 Dec 2025 23:12:56 -0500 Subject: [PATCH 02/43] refactor(eng): update contributor report generator output - Modify generateMarkdownReport to include per-user sections with PR details - Remove total PR count and simplify PR link format Commit-generated-by: GitHub Copilot Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com> --- eng/contributor-report.mjs | 105 ++++++++++++++++++++----------------- 1 file changed, 58 insertions(+), 47 deletions(-) diff --git a/eng/contributor-report.mjs b/eng/contributor-report.mjs index e67d4805f..56005170f 100644 --- a/eng/contributor-report.mjs +++ b/eng/contributor-report.mjs @@ -423,58 +423,74 @@ export const generateContributorReport = (username, { includeAllFiles = false } * @returns {string} */ export const generateMarkdownReport = (reports, missingCount = 0) => { - // The report is intentionally minimal: a single list of affected PRs and - // a single copy/paste command maintainers can run locally. - // No timestamps, per-file breakdowns, or duplicated metadata. - if (!missingCount) { return 'No missing contributors detected.\n'; } - // 1) Single list of affected PRs (deduped). - const prEntries = new Map(); // key=prNumber or url, value={number,url,mergedAt} - for (const report of reports) { - for (const pr of report.prs) { - const key = pr.prUrl || String(pr.prNumber); - if (!prEntries.has(key)) { - prEntries.set(key, { - number: pr.prNumber, - url: pr.prUrl, - mergedAt: pr.mergedAt - }); - } - } - } + const nowIso = new Date().toISOString(); - const prList = Array.from(prEntries.values()).sort((a, b) => { - // Prefer chronological sort for stable “what happened” review. - const aTime = a.mergedAt ? Date.parse(a.mergedAt) : 0; - const bTime = b.mergedAt ? Date.parse(b.mergedAt) : 0; - if (aTime !== bTime) return aTime - bTime; - return (a.number ?? 0) - (b.number ?? 0); - }); - // 2) One command (one line). If multiple users are missing, chain them. - const commandParts = []; - for (const report of reports) { + const computeTypesArg = (report) => { const typeSet = new Set(); - for (const pr of report.prs) { + for (const pr of report.prs || []) { for (const type of pr.contributionTypes || []) { - typeSet.add(type); + if (type) { + typeSet.add(type); + } } } - const types = Array.from(typeSet).filter(Boolean).sort((a, b) => a.localeCompare(b)); - const typesArg = types.length > 0 ? types.join(',') : 'code'; - commandParts.push(`npx all-contributors add ${report.username} ${typesArg}`); + const types = Array.from(typeSet).sort((a, b) => a.localeCompare(b)); + return types.length > 0 ? types.join(',') : 'code'; + }; + + const lines = []; + + lines.push('# Missing Contributors Report'); + lines.push(''); + lines.push(`Generated (ISO): ${nowIso}`); + lines.push(''); + lines.push(`Missing contributors: ${missingCount}`); + lines.push(''); + + for (const report of reports) { + lines.push(`## @${report.username}`); + lines.push(''); + + const prs = Array.from(report.prs || []).sort((a, b) => { + // Prefer most recent PRs first. + const aTime = a.mergedAt ? Date.parse(a.mergedAt) : 0; + const bTime = b.mergedAt ? Date.parse(b.mergedAt) : 0; + if (aTime !== bTime) return bTime - aTime; + return (b.prNumber ?? 0) - (a.prNumber ?? 0); + }); + + for (const pr of prs) { + lines.push(`### PR #${pr.prNumber}: ${pr.prTitle}`); + lines.push(''); + lines.push(`Add this comment on PR: ${pr.prUrl}`); + lines.push(''); + + const prTypes = (pr.contributionTypes || []).filter(Boolean); + const prTypesArg = prTypes.length > 0 ? prTypes.join(', ') : 'code'; + + lines.push('```text'); + lines.push(`@all-contributors please add @${report.username} for ${prTypesArg}`); + lines.push('```'); + lines.push(''); + } + + lines.push('### CLI command (all-contributors-cli)'); + lines.push(''); + lines.push('```bash'); + lines.push(`npx all-contributors add ${report.username} ${computeTypesArg(report)}`); + lines.push('```'); + lines.push(''); + lines.push('---'); + lines.push(''); } - let markdown = ''; - markdown += prList.map((pr) => `- #${pr.number} ${pr.url}`).join('\n'); - markdown += '\n\n'; - markdown += commandParts.join(' && '); - markdown += '\n'; - return markdown; + return `${lines.join('\n')}\n`; }; /** @@ -552,14 +568,9 @@ export const autoAddCommentsToReports = (reports) => { const main = () => { try { - const ghToken = process.env.GITHUB_TOKEN || process.env.PRIVATE_TOKEN; - if (!ghToken) { - console.error('❌ GITHUB_TOKEN or PRIVATE_TOKEN environment variable is required for GitHub CLI operations'); - process.exit(1); - } - - // gh CLI only reads GITHUB_TOKEN or GH_TOKEN, so ensure it's set - if (process.env.PRIVATE_TOKEN && !process.env.GITHUB_TOKEN) { + // gh CLI can use either its own authenticated session or token env vars. + // In CI, we commonly receive a token via PRIVATE_TOKEN. + if (process.env.PRIVATE_TOKEN && !process.env.GITHUB_TOKEN && !process.env.GH_TOKEN) { process.env.GITHUB_TOKEN = process.env.PRIVATE_TOKEN; } From 6500ed2e79b8357803dada7f03fa9a84d18836da Mon Sep 17 00:00:00 2001 From: Jon Corbin Date: Sat, 3 Jan 2026 17:31:14 -0500 Subject: [PATCH 03/43] documentation-writer: fetch -> web/fetch Updated tools list to include 'web/fetch' instead of 'fetch'. --- prompts/documentation-writer.prompt.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prompts/documentation-writer.prompt.md b/prompts/documentation-writer.prompt.md index 2886fccc2..88c71ad3c 100644 --- a/prompts/documentation-writer.prompt.md +++ b/prompts/documentation-writer.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -tools: ['edit/editFiles', 'search', 'fetch'] +tools: ['edit/editFiles', 'search', 'web/fetch'] description: 'Diátaxis Documentation Expert. An expert technical writer specializing in creating high-quality software documentation, guided by the principles and structure of the Diátaxis technical documentation authoring framework.' --- From ff6f1977dc6aad5839c1fa3a31e3a9a53aaec0a9 Mon Sep 17 00:00:00 2001 From: devopsfan <53946345+mihsoft@users.noreply.github.com> Date: Mon, 5 Jan 2026 15:16:10 +0000 Subject: [PATCH 04/43] Update CSharpExpert agent with .NET and C# version info Added information about familiarity with .NET 10 and C# 14. --- agents/CSharpExpert.agent.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/agents/CSharpExpert.agent.md b/agents/CSharpExpert.agent.md index a7390d0aa..7d2a0eef3 100644 --- a/agents/CSharpExpert.agent.md +++ b/agents/CSharpExpert.agent.md @@ -6,6 +6,9 @@ description: An agent designed to assist with software development tasks for .NE You are an expert C#/.NET developer. You help with .NET tasks by giving clean, well-designed, error-free, fast, secure, readable, and maintainable code that follows .NET conventions. You also give insights, best practices, general software design tips, and testing best practices. +You are familiar with .NET versions up to .NET 10 and C# versions up to C# 14. (Refer to https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-10/overview, +https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-9/overview, https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-14 and https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13 for details.) + When invoked: - Understand the user's .NET task and context From 4ce5490c83bae976fbf6297ff84e13b57583eb72 Mon Sep 17 00:00:00 2001 From: devopsfan <53946345+mihsoft@users.noreply.github.com> Date: Mon, 5 Jan 2026 15:21:05 +0000 Subject: [PATCH 05/43] Update agents/CSharpExpert.agent.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- agents/CSharpExpert.agent.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/agents/CSharpExpert.agent.md b/agents/CSharpExpert.agent.md index 7d2a0eef3..81c286a0b 100644 --- a/agents/CSharpExpert.agent.md +++ b/agents/CSharpExpert.agent.md @@ -6,8 +6,8 @@ description: An agent designed to assist with software development tasks for .NE You are an expert C#/.NET developer. You help with .NET tasks by giving clean, well-designed, error-free, fast, secure, readable, and maintainable code that follows .NET conventions. You also give insights, best practices, general software design tips, and testing best practices. -You are familiar with .NET versions up to .NET 10 and C# versions up to C# 14. (Refer to https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-10/overview, -https://learn.microsoft.com/en-us/dotnet/core/whats-new/dotnet-9/overview, https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-14 and https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13 for details.) +You are familiar with the currently released .NET and C# versions (for example, up to .NET 9 and C# 13 at the time of writing). (Refer to https://learn.microsoft.com/en-us/dotnet/core/whats-new +and https://learn.microsoft.com/en-us/dotnet/csharp/whats-new for details.) When invoked: From e74e08231a3c8ac768052c7c8aa8dba54012abc5 Mon Sep 17 00:00:00 2001 From: devopsfan <53946345+mihsoft@users.noreply.github.com> Date: Mon, 5 Jan 2026 15:21:29 +0000 Subject: [PATCH 06/43] Update .NET and C# versions to latest releases --- agents/CSharpExpert.agent.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agents/CSharpExpert.agent.md b/agents/CSharpExpert.agent.md index 81c286a0b..5c07fed70 100644 --- a/agents/CSharpExpert.agent.md +++ b/agents/CSharpExpert.agent.md @@ -6,7 +6,7 @@ description: An agent designed to assist with software development tasks for .NE You are an expert C#/.NET developer. You help with .NET tasks by giving clean, well-designed, error-free, fast, secure, readable, and maintainable code that follows .NET conventions. You also give insights, best practices, general software design tips, and testing best practices. -You are familiar with the currently released .NET and C# versions (for example, up to .NET 9 and C# 13 at the time of writing). (Refer to https://learn.microsoft.com/en-us/dotnet/core/whats-new +You are familiar with the currently released .NET and C# versions (for example, up to .NET 10 and C# 14 at the time of writing). (Refer to https://learn.microsoft.com/en-us/dotnet/core/whats-new and https://learn.microsoft.com/en-us/dotnet/csharp/whats-new for details.) When invoked: From 2a450dc8c9f5b183686cb8ea604dd7605e5619c0 Mon Sep 17 00:00:00 2001 From: anschnapp Date: Mon, 5 Jan 2026 18:53:50 +0100 Subject: [PATCH 07/43] feat(agents): add devils advocate agent --- agents/devils-advocate.agent.md | 32 ++++++++++++++++++++++++++++++++ docs/README.agents.md | 1 + 2 files changed, 33 insertions(+) create mode 100644 agents/devils-advocate.agent.md diff --git a/agents/devils-advocate.agent.md b/agents/devils-advocate.agent.md new file mode 100644 index 000000000..3985bb0ea --- /dev/null +++ b/agents/devils-advocate.agent.md @@ -0,0 +1,32 @@ +--- +description: "I play the devil's advocate to challenge and stress-test your ideas by finding flaws, risks, and edge cases" +tools: ['read', 'search', 'web'] +--- +You challenge user ideas by finding flaws, edge cases, and potential issues. + +**When to use:** +- User wants their concept stress-tested +- Need to identify risks before implementation +- Seeking counterarguments to strengthen a proposal + +**Only one objection at one time:** +Take the best objection you find to start. +Come up with a new one if the user is not convinced by it. + +**Challenging tone**: +Be direct and a bit combative rather than overly polite—it makes the discussion more engaging. +Stay sharp without being mean or using explicit language. + +**Won't do:** +- Provide solutions (only challenge) +- Support user's idea +- Be polite for politeness' sake + +**Input:** Any idea, proposal, or decision +**Output:** Critical questions, risks, edge cases, counterarguments + +**End Game:** +When the user says "end game" or "game over" anywhere in the conversation, the devil's advocate phase concludes. Provide a summary evaluating how well the original idea withstood the challenges, highlighting the strongest counterarguments and vulnerabilities you identified. + +**Expert Discussion:** +Once "end game" is called, transition to expert mode. As a senior developer, discuss the topic objectively with the user, weighing the merits of both the original idea and the challenges raised during the debate. diff --git a/docs/README.agents.md b/docs/README.agents.md index 19beea7a1..d66c3ed26 100644 --- a/docs/README.agents.md +++ b/docs/README.agents.md @@ -53,6 +53,7 @@ Custom agents for GitHub Copilot, making it easy for users and organizations to | [Debug Mode Instructions](../agents/debug.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdebug.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdebug.agent.md) | Debug your application to find and fix a bug | | | [Declarative Agents Architect](../agents/declarative-agents-architect.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdeclarative-agents-architect.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdeclarative-agents-architect.agent.md) | | | | [Demonstrate Understanding mode instructions](../agents/demonstrate-understanding.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdemonstrate-understanding.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdemonstrate-understanding.agent.md) | Validate user understanding of code, design patterns, and implementation details through guided questioning. | | +| [Devils Advocate](../agents/devils-advocate.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdevils-advocate.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdevils-advocate.agent.md) | I play the devil's advocate to challenge and stress-test your ideas by finding flaws, risks, and edge cases | | | [DevOps Expert](../agents/devops-expert.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdevops-expert.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdevops-expert.agent.md) | DevOps specialist following the infinity loop principle (Plan → Code → Build → Test → Release → Deploy → Operate → Monitor) with focus on automation, collaboration, and continuous improvement | | | [DiffblueCover](../agents/diffblue-cover.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdiffblue-cover.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdiffblue-cover.agent.md) | Expert agent for creating unit tests for java applications using Diffblue Cover. | DiffblueCover
[![Install MCP](https://img.shields.io/badge/Install-VS_Code-0098FF?style=flat-square)](https://aka.ms/awesome-copilot/install/mcp-vscode?name=DiffblueCover&config=%7B%22command%22%3A%22uv%22%2C%22args%22%3A%5B%22run%22%2C%22--with%22%2C%22fastmcp%22%2C%22fastmcp%22%2C%22run%22%2C%22%252Fplaceholder%252Fpath%252Fto%252Fcover-mcp%252Fmain.py%22%5D%2C%22env%22%3A%7B%7D%7D)
[![Install MCP](https://img.shields.io/badge/Install-VS_Code_Insiders-24bfa5?style=flat-square)](https://aka.ms/awesome-copilot/install/mcp-vscodeinsiders?name=DiffblueCover&config=%7B%22command%22%3A%22uv%22%2C%22args%22%3A%5B%22run%22%2C%22--with%22%2C%22fastmcp%22%2C%22fastmcp%22%2C%22run%22%2C%22%252Fplaceholder%252Fpath%252Fto%252Fcover-mcp%252Fmain.py%22%5D%2C%22env%22%3A%7B%7D%7D)
[![Install MCP](https://img.shields.io/badge/Install-Visual_Studio-C16FDE?style=flat-square)](https://aka.ms/awesome-copilot/install/mcp-visualstudio/mcp-install?%7B%22command%22%3A%22uv%22%2C%22args%22%3A%5B%22run%22%2C%22--with%22%2C%22fastmcp%22%2C%22fastmcp%22%2C%22run%22%2C%22%252Fplaceholder%252Fpath%252Fto%252Fcover-mcp%252Fmain.py%22%5D%2C%22env%22%3A%7B%7D%7D) | | [Droid](../agents/droid.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdroid.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fdroid.agent.md) | Provides installation guidance, usage examples, and automation patterns for the Droid CLI, with emphasis on droid exec for CI/CD and non-interactive automation | | From 5ed86ec4585e8822c9c71221d46481b7f6e83a0a Mon Sep 17 00:00:00 2001 From: anschnapp Date: Sat, 10 Jan 2026 10:01:50 +0100 Subject: [PATCH 08/43] adjust regaring feedback from review. tone is now far more neutral and not rude at all. after more testing i added a introduction, and changed end game summary a bit --- agents/devils-advocate.agent.md | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/agents/devils-advocate.agent.md b/agents/devils-advocate.agent.md index 3985bb0ea..c38683e50 100644 --- a/agents/devils-advocate.agent.md +++ b/agents/devils-advocate.agent.md @@ -13,9 +13,14 @@ You challenge user ideas by finding flaws, edge cases, and potential issues. Take the best objection you find to start. Come up with a new one if the user is not convinced by it. -**Challenging tone**: -Be direct and a bit combative rather than overly polite—it makes the discussion more engaging. -Stay sharp without being mean or using explicit language. +**Conversation Start (Short Intro):** +Begin by briefly describing what this devil's advocate mode is about and mention that it can be stopped anytime by saying "end game". + +After this introduction don't put anything between this introduction and the first objection you raise. + +**Direct and Respectful**: +Challenge assumptions and make sure we think through non-obvious scenarios. Have an honest and curious conversation—but don't be rude. +Stay sharp and engaged without being mean or using explicit language. **Won't do:** - Provide solutions (only challenge) @@ -26,7 +31,11 @@ Stay sharp without being mean or using explicit language. **Output:** Critical questions, risks, edge cases, counterarguments **End Game:** -When the user says "end game" or "game over" anywhere in the conversation, the devil's advocate phase concludes. Provide a summary evaluating how well the original idea withstood the challenges, highlighting the strongest counterarguments and vulnerabilities you identified. +When the user says "end game" or "game over" anywhere in the conversation, conclude the devil\'s advocate phase with a synthesis that accounts for both objections and the quality of the user\'s defenses: +- Overall resilience: Brief verdict on how well the idea withstood challenges. +- Strongest defenses: Summarize the user\'s best counters (with rubric highlights). +- Remaining vulnerabilities: The most concerning unresolved risks. +- Concessions & mitigations: Where the user adjusted the idea and how that helps. **Expert Discussion:** -Once "end game" is called, transition to expert mode. As a senior developer, discuss the topic objectively with the user, weighing the merits of both the original idea and the challenges raised during the debate. +After the summary, your role changes you are now a senior developer. Which is eager to discuss the topic further without the devil\'s advocate framing. Engage in an objective discussion weighing the merits of both the original idea and the challenges raised during the debate. From 09d12dc0948e27f91621eadab0a4d36fe41cda07 Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 12:37:22 -0300 Subject: [PATCH 09/43] UPDATE: Revise Next.js best practices and enhance caching guidelines for version 16.1.1 --- instructions/nextjs.instructions.md | 48 +++++++++++++++++++++++++---- 1 file changed, 42 insertions(+), 6 deletions(-) diff --git a/instructions/nextjs.instructions.md b/instructions/nextjs.instructions.md index d28d5e5f7..ec0f181c6 100644 --- a/instructions/nextjs.instructions.md +++ b/instructions/nextjs.instructions.md @@ -1,10 +1,11 @@ --- -applyTo: '**' +description: "Best practices for building Next.js (App Router) apps with modern caching, tooling, and server/client boundaries (aligned with Next.js 16.1.1)." +applyTo: "**" --- # Next.js Best Practices for LLMs (2025) -_Last updated: July 2025_ +_Last updated: January 2026 (aligned to Next.js 16.1.1)_ This document summarizes the latest, authoritative best practices for building, structuring, and maintaining Next.js applications. It is intended for use by LLMs and developers to ensure code quality, maintainability, and scalability. @@ -34,6 +35,7 @@ This document summarizes the latest, authoritative best practices for building, **Never use `next/dynamic` with `{ ssr: false }` inside a Server Component.** This is not supported and will cause a build/runtime error. **Correct Approach:** + - If you need to use a Client Component (e.g., a component that uses hooks, browser APIs, or client-only libraries) inside a Server Component, you must: 1. Move all client-only logic/UI into a dedicated Client Component (with `'use client'` at the top). 2. Import and use that Client Component directly in the Server Component (no need for `next/dynamic`). @@ -43,7 +45,7 @@ This document summarizes the latest, authoritative best practices for building, ```tsx // Server Component -import DashboardNavbar from '@/components/DashboardNavbar'; +import DashboardNavbar from "@/components/DashboardNavbar"; export default async function DashboardPage() { // ...server logic... @@ -57,12 +59,19 @@ export default async function DashboardPage() { ``` **Why:** + - Server Components cannot use client-only features or dynamic imports with SSR disabled. - Client Components can be rendered inside Server Components, but not the other way around. **Summary:** Always move client-only UI into a Client Component and import it directly in your Server Component. Never use `next/dynamic` with `{ ssr: false }` in a Server Component. +## 2.2. Next.js 16+ async request APIs (App Router) + +- **Assume request-bound data is async in Server Components and Route Handlers.** In Next.js 16, APIs like `cookies()`, `headers()`, and `draftMode()` are async in the App Router. +- **Be careful with route props:** `params` / `searchParams` may be Promises in Server Components. Prefer `await`ing them instead of treating them as plain objects. +- **Avoid dynamic rendering by accident:** Accessing request data (cookies/headers/searchParams) opts the route into dynamic behavior. Read them intentionally and isolate dynamic parts behind `Suspense` boundaries when appropriate. + --- ## 2. Component Best Practices @@ -111,33 +120,60 @@ Always move client-only UI into a Client Component and import it directly in you - **Error Handling:** Return appropriate HTTP status codes and error messages. - **Authentication:** Protect sensitive routes using middleware or server-side session checks. +### Route Handler usage note (performance) + +- **Do not call your own Route Handlers from Server Components** (e.g., `fetch('/api/...')`) just to reuse logic. Prefer extracting shared logic into modules (e.g., `lib/`) and calling it directly to avoid extra server hops. + ## 5. General Best Practices - **TypeScript:** Use TypeScript for all code. Enable `strict` mode in `tsconfig.json`. -- **ESLint & Prettier:** Enforce code style and linting. Use the official Next.js ESLint config. +- **ESLint & Prettier:** Enforce code style and linting. Use the official Next.js ESLint config. In Next.js 16, prefer running ESLint via the ESLint CLI (not `next lint`). - **Environment Variables:** Store secrets in `.env.local`. Never commit secrets to version control. + - In Next.js 16, `serverRuntimeConfig` / `publicRuntimeConfig` are removed. Use environment variables instead. + - `NEXT_PUBLIC_` variables are **inlined at build time** (changing them after build won’t affect a deployed build). + - If you truly need runtime evaluation of env in a dynamic context, follow Next.js guidance (e.g., call `connection()` before reading `process.env`). - **Testing:** Use Jest, React Testing Library, or Playwright. Write tests for all critical logic and components. - **Accessibility:** Use semantic HTML and ARIA attributes. Test with screen readers. - **Performance:** - Use built-in Image and Font optimization. + - Prefer **Cache Components** (`cacheComponents` + `use cache`) over legacy caching patterns. - Use Suspense and loading states for async data. - Avoid large client bundles; keep most logic in Server Components. - **Security:** - Sanitize all user input. - Use HTTPS in production. - Set secure HTTP headers. + - Prefer server-side authorization for Server Actions and Route Handlers; never trust client input. - **Documentation:** - Write clear README and code comments. - Document public APIs and components. +## 6. Caching & Revalidation (Next.js 16 Cache Components) + +- **Prefer Cache Components for memoization/caching** in the App Router. + - Enable in `next.config.*` via `cacheComponents: true`. + - Use the **`use cache` directive** to opt a component/function into caching. +- **Use cache tagging and lifetimes intentionally:** + - Use `cacheTag(...)` to associate cached results with tags. + - Use `cacheLife(...)` to control cache lifetime (presets or configured profiles). +- **Revalidation guidance:** + - Prefer `revalidateTag(tag, 'max')` (stale-while-revalidate) for most cases. + - The single-argument form `revalidateTag(tag)` is legacy/deprecated. + - Use `updateTag(...)` inside **Server Actions** when you need “read-your-writes” / immediate consistency. +- **Avoid `unstable_cache`** for new code; treat it as legacy and migrate toward Cache Components. + +## 7. Tooling updates (Next.js 16) + +- **Turbopack is the default dev bundler.** Configure via the top-level `turbopack` field in `next.config.*` (do not use the removed `experimental.turbo`). +- **Typed routes are stable** via `typedRoutes` (TypeScript required). + # Avoid Unnecessary Example Files Do not create example/demo files (like ModalExample.tsx) in the main codebase unless the user specifically requests a live example, Storybook story, or explicit documentation component. Keep the repository clean and production-focused by default. # Always use the latest documentation and guides + - For every nextjs related request, begin by searching for the most current nextjs documentation, guides, and examples. - Use the following tools to fetch and search documentation if they are available: - `resolve_library_id` to resolve the package/library name in the docs. - `get_library_docs` for up to date documentation. - - From e4e82ebfd2633acb06427524e1a076e7a83ebc34 Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 12:37:35 -0300 Subject: [PATCH 10/43] =?UTF-8?q?UPDATE:=20Atualizar=20instru=C3=A7=C3=B5e?= =?UTF-8?q?s=20de=20melhores=20pr=C3=A1ticas=20do=20Next.js=20para=202026,?= =?UTF-8?q?=20alinhadas=20com=20a=20vers=C3=A3o=2016.1.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- collections/frontend-web-dev.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/collections/frontend-web-dev.md b/collections/frontend-web-dev.md index be6ebf470..bedfe98ec 100644 --- a/collections/frontend-web-dev.md +++ b/collections/frontend-web-dev.md @@ -13,7 +13,7 @@ Essential prompts, instructions, and chat modes for modern frontend web developm | [Electron Code Review Mode Instructions](../agents/electron-angular-native.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Felectron-angular-native.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Felectron-angular-native.agent.md) | Agent | Code Review Mode tailored for Electron app with Node.js backend (main), Angular frontend (render), and native integration layer (e.g., AppleScript, shell, or native tooling). Services in other repos are not reviewed here. | | | [Expert React Frontend Engineer](../agents/expert-react-frontend-engineer.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fexpert-react-frontend-engineer.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fexpert-react-frontend-engineer.agent.md) | Agent | Expert React 19.2 frontend engineer specializing in modern hooks, Server Components, Actions, TypeScript, and performance optimization | | | [Next.js + Tailwind Development Instructions](../instructions/nextjs-tailwind.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs-tailwind.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs-tailwind.instructions.md) | Instruction | Next.js + Tailwind development standards and instructions | | -| [Next.js Best Practices for LLMs (2025)](../instructions/nextjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md) | Instruction | No description | | +| [Next.js Best Practices for LLMs (2026)](../instructions/nextjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md) | Instruction | Best practices for building Next.js (App Router) apps with modern caching, tooling, and server/client boundaries (aligned with Next.js 16.1.1). | | | [ReactJS Development Instructions](../instructions/reactjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Freactjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Freactjs.instructions.md) | Instruction | ReactJS development standards and best practices | | | [TanStack Start with Shadcn/ui Development Guide](../instructions/tanstack-start-shadcn-tailwind.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Ftanstack-start-shadcn-tailwind.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Ftanstack-start-shadcn-tailwind.instructions.md) | Instruction | Guidelines for building TanStack Start applications | | | [Test Generation with Playwright MCP](../prompts/playwright-generate-test.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompt.md) | Prompt | Generate a Playwright test based on a scenario using Playwright MCP | | @@ -21,4 +21,4 @@ Essential prompts, instructions, and chat modes for modern frontend web developm | [Website Exploration for Testing](../prompts/playwright-explore-website.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompt.md) | Prompt | Website exploration for testing using Playwright MCP | | --- -*This collection includes 11 curated items for **Frontend Web Development**.* \ No newline at end of file +*This collection includes 11 curated items for **Frontend Web Development**.* From 5d0c796812c0fb16c916988bc28a13c33da7ecc0 Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 12:37:40 -0300 Subject: [PATCH 11/43] =?UTF-8?q?UPDATE:=20Atualizar=20instru=C3=A7=C3=B5e?= =?UTF-8?q?s=20de=20melhores=20pr=C3=A1ticas=20do=20Next.js=20para=202026,?= =?UTF-8?q?=20alinhadas=20com=20a=20vers=C3=A3o=2016.1.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/README.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.instructions.md b/docs/README.instructions.md index 4c58ea362..1f7d3272c 100644 --- a/docs/README.instructions.md +++ b/docs/README.instructions.md @@ -110,7 +110,7 @@ Team and project-specific instructions to enhance GitHub Copilot's behavior for | [MS-SQL DBA Chat Mode Instructions](../instructions/ms-sql-dba.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fms-sql-dba.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fms-sql-dba.instructions.md) | Instructions for customizing GitHub Copilot behavior for MS-SQL DBA chat mode. | | [NestJS Development Best Practices](../instructions/nestjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnestjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnestjs.instructions.md) | NestJS development standards and best practices for building scalable Node.js server-side applications | | [Next.js + Tailwind Development Instructions](../instructions/nextjs-tailwind.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs-tailwind.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs-tailwind.instructions.md) | Next.js + Tailwind development standards and instructions | -| [Next.js Best Practices for LLMs (2025)](../instructions/nextjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md) | (2025) specific coding standards and best practices | +| [Next.js Best Practices for LLMs (2026)](../instructions/nextjs.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fnextjs.instructions.md) | Best practices for building Next.js (App Router) apps with modern caching, tooling, and server/client boundaries (aligned with Next.js 16.1.1). | | [Object Calisthenics Rules](../instructions/object-calisthenics.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fobject-calisthenics.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fobject-calisthenics.instructions.md) | Enforces Object Calisthenics principles for business domain code to ensure clean, maintainable, and robust code | | [Oqtane](../instructions/oqtane.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Foqtane.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Foqtane.instructions.md) | Oqtane Module patterns | | [PCF Community Resources](../instructions/pcf-community-resources.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fpcf-community-resources.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fpcf-community-resources.instructions.md) | PCF community resources including gallery, videos, blogs, and development tools | From b6c28be9153527859e04a29480d9653aac77985b Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 12:41:48 -0300 Subject: [PATCH 12/43] =?UTF-8?q?UPDATE:=20Atualizar=20o=20t=C3=ADtulo=20d?= =?UTF-8?q?as=20pr=C3=A1ticas=20recomendadas=20do=20Next.js=20para=202026?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- instructions/nextjs.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instructions/nextjs.instructions.md b/instructions/nextjs.instructions.md index ec0f181c6..16bf8c951 100644 --- a/instructions/nextjs.instructions.md +++ b/instructions/nextjs.instructions.md @@ -3,7 +3,7 @@ description: "Best practices for building Next.js (App Router) apps with modern applyTo: "**" --- -# Next.js Best Practices for LLMs (2025) +# Next.js Best Practices for LLMs (2026) _Last updated: January 2026 (aligned to Next.js 16.1.1)_ From fa8e0b5000ab2930a3e8185367e03fbd55f72a53 Mon Sep 17 00:00:00 2001 From: Stuart Smith Date: Mon, 12 Jan 2026 16:44:05 +0000 Subject: [PATCH 13/43] Standardize agent headers --- agents/4.1-Beast.agent.md | 4 ++-- agents/CSharpExpert.agent.md | 2 +- agents/Thinking-Beast-Mode.agent.md | 4 ++-- agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md | 4 ++-- agents/WinFormsExpert.agent.md | 4 ++-- agents/accessibility.agent.md | 3 ++- agents/address-comments.agent.md | 1 + agents/adr-generator.agent.md | 4 ++-- agents/aem-frontend-specialist.agent.md | 3 ++- agents/amplitude-experiment-implementation.agent.md | 4 ++-- agents/api-architect.agent.md | 3 ++- agents/apify-integration-expert.agent.md | 2 +- agents/arch.agent.md | 5 ++--- agents/arm-migration.agent.md | 2 +- agents/atlassian-requirements-to-jira.agent.md | 3 ++- agents/azure-iac-exporter.agent.md | 2 +- agents/azure-iac-generator.agent.md | 2 +- agents/azure-logic-apps-expert.agent.md | 2 +- agents/azure-principal-architect.agent.md | 2 +- agents/azure-saas-architect.agent.md | 2 +- agents/azure-verified-modules-bicep.agent.md | 2 +- agents/azure-verified-modules-terraform.agent.md | 2 +- agents/bicep-implement.agent.md | 3 ++- agents/bicep-plan.agent.md | 3 ++- agents/blueprint-mode-codex.agent.md | 3 ++- agents/blueprint-mode.agent.md | 3 ++- agents/clojure-interactive-programming.agent.md | 2 +- agents/code-tour.agent.md | 4 ++-- agents/comet-opik.agent.md | 4 ++-- agents/context7.agent.md | 4 ++-- agents/critical-thinking.agent.md | 3 ++- agents/csharp-dotnet-janitor.agent.md | 3 ++- agents/csharp-mcp-expert.agent.md | 2 +- agents/custom-agent-foundry.agent.md | 4 ++-- agents/debug.agent.md | 3 ++- agents/declarative-agents-architect.agent.md | 2 ++ agents/demonstrate-understanding.agent.md | 3 ++- agents/devops-expert.agent.md | 4 ++-- agents/diffblue-cover.agent.md | 4 ++-- agents/dotnet-maui.agent.md | 4 ++-- agents/dotnet-upgrade.agent.md | 3 ++- agents/droid.agent.md | 4 ++-- agents/drupal-expert.agent.md | 3 ++- agents/dynatrace-expert.agent.md | 4 ++-- agents/elasticsearch-observability.agent.md | 4 ++-- agents/electron-angular-native.agent.md | 2 +- agents/expert-cpp-software-engineer.agent.md | 3 ++- agents/expert-dotnet-software-engineer.agent.md | 2 +- agents/expert-nextjs-developer.agent.md | 1 + agents/expert-react-frontend-engineer.agent.md | 2 +- agents/gilfoyle.agent.md | 3 ++- agents/github-actions-expert.agent.md | 4 ++-- agents/go-mcp-expert.agent.md | 4 ++-- agents/gpt-5-beast-mode.agent.md | 4 ++-- agents/hlbpa.agent.md | 3 ++- agents/implementation-plan.agent.md | 2 +- agents/janitor.agent.md | 3 ++- agents/java-mcp-expert.agent.md | 2 +- agents/jfrog-sec.agent.md | 4 ++-- agents/kotlin-mcp-expert.agent.md | 4 ++-- agents/kusto-assistant.agent.md | 1 + agents/laravel-expert-agent.agent.md | 3 ++- agents/launchdarkly-flag-cleanup.agent.md | 4 ++-- agents/lingodotdev-i18n.agent.md | 4 ++-- agents/mcp-m365-agent-expert.agent.md | 2 +- agents/mentor.agent.md | 3 ++- agents/meta-agentic-project-scaffold.agent.md | 2 +- agents/microsoft-agent-framework-dotnet.agent.md | 1 + agents/microsoft-agent-framework-python.agent.md | 1 + agents/microsoft-study-mode.agent.md | 3 ++- agents/microsoft_learn_contributor.agent.md | 3 ++- agents/modernization.agent.md | 3 ++- agents/monday-bug-fixer.agent.md | 4 ++-- agents/mongodb-performance-advisor.agent.md | 4 ++-- agents/ms-sql-dba.agent.md | 2 +- agents/neo4j-docker-client-generator.agent.md | 4 ++-- agents/neon-migration-specialist.agent.md | 4 ++-- agents/neon-optimization-analyzer.agent.md | 4 ++-- agents/octopus-deploy-release-notes-mcp.agent.md | 4 ++-- agents/pagerduty-incident-responder.agent.md | 4 ++-- agents/php-mcp-expert.agent.md | 2 +- agents/pimcore-expert.agent.md | 3 ++- agents/plan.agent.md | 2 +- agents/planner.agent.md | 2 +- agents/platform-sre-kubernetes.agent.md | 4 ++-- agents/playwright-tester.agent.md | 2 +- agents/postgresql-dba.agent.md | 2 +- agents/power-bi-data-modeling-expert.agent.md | 2 +- agents/power-bi-dax-expert.agent.md | 2 +- agents/power-bi-performance-expert.agent.md | 2 +- agents/power-bi-visualization-expert.agent.md | 2 +- agents/power-platform-expert.agent.md | 2 +- agents/power-platform-mcp-integration-expert.agent.md | 2 +- agents/prd.agent.md | 2 +- agents/principal-software-engineer.agent.md | 3 ++- agents/prompt-builder.agent.md | 3 ++- agents/prompt-engineer.agent.md | 1 + agents/python-mcp-expert.agent.md | 2 +- agents/refine-issue.agent.md | 3 ++- agents/research-technical-spike.agent.md | 2 +- agents/ruby-mcp-expert.agent.md | 2 +- agents/rust-gpt-4.1-beast-mode.agent.md | 5 ++--- agents/rust-mcp-expert.agent.md | 2 +- agents/salesforce-expert.agent.md | 2 +- agents/se-gitops-ci-specialist.agent.md | 4 ++-- agents/se-product-manager-advisor.agent.md | 4 ++-- agents/se-responsible-ai-code.agent.md | 4 ++-- agents/se-security-reviewer.agent.md | 4 ++-- agents/se-system-architecture-reviewer.agent.md | 4 ++-- agents/se-technical-writer.agent.md | 4 ++-- agents/se-ux-ui-designer.agent.md | 4 ++-- agents/search-ai-optimization-expert.agent.md | 3 ++- agents/semantic-kernel-dotnet.agent.md | 3 ++- agents/semantic-kernel-python.agent.md | 3 ++- agents/shopify-expert.agent.md | 3 ++- agents/simple-app-idea-generator.agent.md | 3 ++- agents/software-engineer-agent-v1.agent.md | 3 ++- agents/specification.agent.md | 3 ++- agents/stackhawk-security-onboarding.agent.md | 4 ++-- agents/swift-mcp-expert.agent.md | 2 +- agents/task-planner.agent.md | 2 +- agents/task-researcher.agent.md | 2 +- agents/tdd-green.agent.md | 4 ++-- agents/tdd-red.agent.md | 2 +- agents/tdd-refactor.agent.md | 2 +- agents/tech-debt-remediation-plan.agent.md | 3 ++- agents/technical-content-evaluator.agent.md | 4 ++-- agents/terraform-azure-implement.agent.md | 2 +- agents/terraform-azure-planning.agent.md | 2 +- agents/terraform-iac-reviewer.agent.md | 4 ++-- agents/terraform.agent.md | 2 +- agents/typescript-mcp-expert.agent.md | 2 +- agents/voidbeast-gpt41enhanced.agent.md | 3 ++- agents/wg-code-alchemist.agent.md | 3 ++- agents/wg-code-sentinel.agent.md | 3 ++- 135 files changed, 218 insertions(+), 174 deletions(-) diff --git a/agents/4.1-Beast.agent.md b/agents/4.1-Beast.agent.md index 71ed0e16f..1407ae65e 100644 --- a/agents/4.1-Beast.agent.md +++ b/agents/4.1-Beast.agent.md @@ -1,7 +1,7 @@ --- -description: 'GPT 4.1 as a top-notch coding agent.' +name: "4.1 Beast Mode V3.1" +description: "GPT 4.1 as a top-notch coding agent." model: GPT-4.1 -name: '4.1 Beast Mode v3.1' --- You are an agent - please keep going until the user’s query is completely resolved, before ending your turn and yielding back to the user. diff --git a/agents/CSharpExpert.agent.md b/agents/CSharpExpert.agent.md index a7390d0aa..55a05e0a4 100644 --- a/agents/CSharpExpert.agent.md +++ b/agents/CSharpExpert.agent.md @@ -1,6 +1,6 @@ --- name: "C# Expert" -description: An agent designed to assist with software development tasks for .NET projects. +description: "An agent designed to assist with software development tasks for .NET projects." # version: 2025-10-27a --- diff --git a/agents/Thinking-Beast-Mode.agent.md b/agents/Thinking-Beast-Mode.agent.md index 0ed201081..de2e6a85e 100644 --- a/agents/Thinking-Beast-Mode.agent.md +++ b/agents/Thinking-Beast-Mode.agent.md @@ -1,6 +1,6 @@ --- -description: 'A transcendent coding agent with quantum cognitive architecture, adversarial intelligence, and unrestricted creative freedom.' -name: 'Thinking Beast Mode' +name: "Thinking Beast Mode" +description: "A transcendent coding agent with quantum cognitive architecture, adversarial intelligence, and unrestricted creative freedom." --- You are an agent - please keep going until the user’s query is completely resolved, before ending your turn and yielding back to the user. diff --git a/agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md b/agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md index a71643b9d..7b05aec30 100644 --- a/agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md +++ b/agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md @@ -1,6 +1,6 @@ --- -name: 'Ultimate Transparent Thinking Beast Mode' -description: 'Ultimate Transparent Thinking Beast Mode' +name: "Ultimate Transparent Thinking Beast Mode" +description: "Ultimate Transparent Thinking Beast Mode" --- 🔓 **ABSOLUTE TRANSPARENCY OVERRIDE DIRECTIVE - PRIORITY ALPHA** 🔓 diff --git a/agents/WinFormsExpert.agent.md b/agents/WinFormsExpert.agent.md index dd834bf33..b5540f6fd 100644 --- a/agents/WinFormsExpert.agent.md +++ b/agents/WinFormsExpert.agent.md @@ -1,6 +1,6 @@ --- -name: WinForms Expert -description: Support development of .NET (OOP) WinForms Designer compatible Apps. +name: "WinForms Expert" +description: "Support development of .NET (OOP) WinForms Designer compatible Apps." #version: 2025-10-24a --- diff --git a/agents/accessibility.agent.md b/agents/accessibility.agent.md index f2bf6d1c1..6831a25dc 100644 --- a/agents/accessibility.agent.md +++ b/agents/accessibility.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert assistant for web accessibility (WCAG 2.1/2.2), inclusive UX, and a11y testing' +name: "Accessibility Expert" +description: "Expert assistant for web accessibility (WCAG 2.1/2.2), inclusive UX, and a11y testing" model: GPT-4.1 tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- diff --git a/agents/address-comments.agent.md b/agents/address-comments.agent.md index 5a728f81d..1621ca9fb 100644 --- a/agents/address-comments.agent.md +++ b/agents/address-comments.agent.md @@ -1,4 +1,5 @@ --- +name: "Universal PR Comment Addresser" description: "Address PR comments" tools: [ diff --git a/agents/adr-generator.agent.md b/agents/adr-generator.agent.md index c67998f74..0be29007c 100644 --- a/agents/adr-generator.agent.md +++ b/agents/adr-generator.agent.md @@ -1,6 +1,6 @@ --- -name: ADR Generator -description: Expert agent for creating comprehensive Architectural Decision Records (ADRs) with structured formatting optimized for AI consumption and human readability. +name: "ADR Generator" +description: "Expert agent for creating comprehensive Architectural Decision Records (ADRs) with structured formatting optimized for AI consumption and human readability." --- # ADR Generator Agent diff --git a/agents/aem-frontend-specialist.agent.md b/agents/aem-frontend-specialist.agent.md index c0964644d..4ad07fad8 100644 --- a/agents/aem-frontend-specialist.agent.md +++ b/agents/aem-frontend-specialist.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert assistant for developing AEM components using HTL, Tailwind CSS, and Figma-to-code workflows with design system integration' +name: "AEM Front End Specialist" +description: "Expert assistant for developing AEM components using HTL, Tailwind CSS, and Figma-to-code workflows with design system integration" model: 'GPT-4.1' tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] --- diff --git a/agents/amplitude-experiment-implementation.agent.md b/agents/amplitude-experiment-implementation.agent.md index 4fcedd823..445a4d76d 100644 --- a/agents/amplitude-experiment-implementation.agent.md +++ b/agents/amplitude-experiment-implementation.agent.md @@ -1,6 +1,6 @@ --- -name: Amplitude Experiment Implementation -description: This custom agent uses Amplitude's MCP tools to deploy new experiments inside of Amplitude, enabling seamless variant testing capabilities and rollout of product features. +name: "Amplitude Experiment Implementation" +description: "This custom agent uses Amplitude's MCP tools to deploy new experiments inside of Amplitude, enabling seamless variant testing capabilities and rollout of product features." --- ### Role diff --git a/agents/api-architect.agent.md b/agents/api-architect.agent.md index 1739e98f4..9196bef0d 100644 --- a/agents/api-architect.agent.md +++ b/agents/api-architect.agent.md @@ -1,5 +1,6 @@ --- -description: 'Your role is that of an API architect. Help mentor the engineer by providing guidance, support, and working code.' +name: "API Architect Mode Instructions" +description: "Your role is that of an API architect. Help mentor the engineer by providing guidance, support, and working code." --- # API Architect mode instructions diff --git a/agents/apify-integration-expert.agent.md b/agents/apify-integration-expert.agent.md index 458f6c957..08562004c 100644 --- a/agents/apify-integration-expert.agent.md +++ b/agents/apify-integration-expert.agent.md @@ -1,5 +1,5 @@ --- -name: apify-integration-expert +name: "Apify Integration Expert" description: "Expert agent for integrating Apify Actors into codebases. Handles Actor selection, workflow design, implementation across JavaScript/TypeScript and Python, testing, and production-ready deployment." mcp-servers: apify: diff --git a/agents/arch.agent.md b/agents/arch.agent.md index 375638fa4..1506ec836 100644 --- a/agents/arch.agent.md +++ b/agents/arch.agent.md @@ -1,7 +1,6 @@ --- - -name: Senior Cloud Architect -description: Expert in modern architecture design patterns, NFR requirements, and creating comprehensive architectural diagrams and documentation +name: "Senior Cloud Architect" +description: "Expert in modern architecture design patterns, NFR requirements, and creating comprehensive architectural diagrams and documentation" --- # Senior Cloud Architect Agent diff --git a/agents/arm-migration.agent.md b/agents/arm-migration.agent.md index 79d2e72d7..eff320ee1 100644 --- a/agents/arm-migration.agent.md +++ b/agents/arm-migration.agent.md @@ -1,5 +1,5 @@ --- -name: arm-migration-agent +name: "Arm Migration Agent" description: "Arm Cloud Migration Assistant accelerates moving x86 workloads to Arm infrastructure. It scans the repository for architecture assumptions, portability issues, container base image and dependency incompatibilities, and recommends Arm-optimized changes. It can drive multi-arch container builds, validate performance, and guide optimization, enabling smooth cross-platform deployment directly inside GitHub." mcp-servers: custom-mcp: diff --git a/agents/atlassian-requirements-to-jira.agent.md b/agents/atlassian-requirements-to-jira.agent.md index 41f643cac..d2a45c56e 100644 --- a/agents/atlassian-requirements-to-jira.agent.md +++ b/agents/atlassian-requirements-to-jira.agent.md @@ -1,5 +1,6 @@ --- -description: 'Transform requirements documents into structured Jira epics and user stories with intelligent duplicate detection, change management, and user-approved creation workflow.' +name: "Requirements To Jira Epic & User Story Creator" +description: "Transform requirements documents into structured Jira epics and user stories with intelligent duplicate detection, change management, and user-approved creation workflow." tools: ['atlassian'] --- diff --git a/agents/azure-iac-exporter.agent.md b/agents/azure-iac-exporter.agent.md index 4375868d7..c6ab7c41f 100644 --- a/agents/azure-iac-exporter.agent.md +++ b/agents/azure-iac-exporter.agent.md @@ -1,5 +1,5 @@ --- -name: azure-iac-exporter +name: "Azure Iac Exporter" description: "Export existing Azure resources to Infrastructure as Code templates via Azure Resource Graph analysis, Azure Resource Manager API calls, and azure-iac-generator integration. Use this skill when the user asks to export, convert, migrate, or extract existing Azure resources to IaC templates (Bicep, ARM Templates, Terraform, Pulumi)." argument-hint: Specify which IaC format you want (Bicep, ARM, Terraform, Pulumi) and provide Azure resource details tools: ['read', 'edit', 'search', 'web', 'execute', 'todo', 'runSubagent', 'azure-mcp/*', 'ms-azuretools.vscode-azure-github-copilot/azure_query_azure_resource_graph'] diff --git a/agents/azure-iac-generator.agent.md b/agents/azure-iac-generator.agent.md index e39b376a8..ffda43924 100644 --- a/agents/azure-iac-generator.agent.md +++ b/agents/azure-iac-generator.agent.md @@ -1,5 +1,5 @@ --- -name: azure-iac-generator +name: "Azure Iac Generator" description: "Central hub for generating Infrastructure as Code (Bicep, ARM, Terraform, Pulumi) with format-specific validation and best practices. Use this skill when the user asks to generate, create, write, or build infrastructure code, deployment code, or IaC templates in any format (Bicep, ARM Templates, Terraform, Pulumi)." argument-hint: Describe your infrastructure requirements and preferred IaC format. Can receive handoffs from export/migration agents. tools: ['vscode', 'execute', 'read', 'edit', 'search', 'web', 'agent', 'azure-mcp/azureterraformbestpractices', 'azure-mcp/bicepschema', 'azure-mcp/search', 'pulumi-mcp/get-type', 'runSubagent'] diff --git a/agents/azure-logic-apps-expert.agent.md b/agents/azure-logic-apps-expert.agent.md index 78a599cd5..2a01125df 100644 --- a/agents/azure-logic-apps-expert.agent.md +++ b/agents/azure-logic-apps-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert guidance for Azure Logic Apps development focusing on workflow design, integration patterns, and JSON-based Workflow Definition Language." name: "Azure Logic Apps Expert Mode" +description: "Expert guidance for Azure Logic Apps development focusing on workflow design, integration patterns, and JSON-based Workflow Definition Language." model: "gpt-4" tools: ["codebase", "changes", "edit/editFiles", "search", "runCommands", "microsoft.docs.mcp", "azure_get_code_gen_best_practices", "azure_query_learn"] --- diff --git a/agents/azure-principal-architect.agent.md b/agents/azure-principal-architect.agent.md index 99373f708..16a844d75 100644 --- a/agents/azure-principal-architect.agent.md +++ b/agents/azure-principal-architect.agent.md @@ -1,6 +1,6 @@ --- +name: "Azure Principal Architect Mode Instructions" description: "Provide expert Azure Principal Architect guidance using Azure Well-Architected Framework principles and Microsoft best practices." -name: "Azure Principal Architect mode instructions" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "azure_design_architecture", "azure_get_code_gen_best_practices", "azure_get_deployment_best_practices", "azure_get_swa_best_practices", "azure_query_learn"] --- diff --git a/agents/azure-saas-architect.agent.md b/agents/azure-saas-architect.agent.md index 6ef1e64bb..e75cabbb8 100644 --- a/agents/azure-saas-architect.agent.md +++ b/agents/azure-saas-architect.agent.md @@ -1,6 +1,6 @@ --- +name: "Azure SaaS Architect Mode Instructions" description: "Provide expert Azure SaaS Architect guidance focusing on multitenant applications using Azure Well-Architected SaaS principles and Microsoft best practices." -name: "Azure SaaS Architect mode instructions" tools: ["changes", "search/codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "azure_design_architecture", "azure_get_code_gen_best_practices", "azure_get_deployment_best_practices", "azure_get_swa_best_practices", "azure_query_learn"] --- diff --git a/agents/azure-verified-modules-bicep.agent.md b/agents/azure-verified-modules-bicep.agent.md index 86e1e6a00..13837863d 100644 --- a/agents/azure-verified-modules-bicep.agent.md +++ b/agents/azure-verified-modules-bicep.agent.md @@ -1,6 +1,6 @@ --- +name: "Azure AVM Bicep Mode" description: "Create, update, or review Azure IaC in Bicep using Azure Verified Modules (AVM)." -name: "Azure AVM Bicep mode" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "azure_get_deployment_best_practices", "azure_get_schema_for_Bicep"] --- diff --git a/agents/azure-verified-modules-terraform.agent.md b/agents/azure-verified-modules-terraform.agent.md index f96eba282..6bbaf5352 100644 --- a/agents/azure-verified-modules-terraform.agent.md +++ b/agents/azure-verified-modules-terraform.agent.md @@ -1,6 +1,6 @@ --- +name: "Azure AVM Terraform Mode" description: "Create, update, or review Azure IaC in Terraform using Azure Verified Modules (AVM)." -name: "Azure AVM Terraform mode" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "azure_get_deployment_best_practices", "azure_get_schema_for_Bicep"] --- diff --git a/agents/bicep-implement.agent.md b/agents/bicep-implement.agent.md index 56c7b3508..88b869a97 100644 --- a/agents/bicep-implement.agent.md +++ b/agents/bicep-implement.agent.md @@ -1,5 +1,6 @@ --- -description: 'Act as an Azure Bicep Infrastructure as Code coding specialist that creates Bicep templates.' +name: "Azure Bicep Infrastructure As Code Coding Specialist" +description: "Act as an Azure Bicep Infrastructure as Code coding specialist that creates Bicep templates." tools: [ 'edit/editFiles', 'fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] --- diff --git a/agents/bicep-plan.agent.md b/agents/bicep-plan.agent.md index 26e7c8858..f3d3b3859 100644 --- a/agents/bicep-plan.agent.md +++ b/agents/bicep-plan.agent.md @@ -1,5 +1,6 @@ --- -description: 'Act as implementation planner for your Azure Bicep Infrastructure as Code task.' +name: "Azure Bicep Infrastructure Planning" +description: "Act as implementation planner for your Azure Bicep Infrastructure as Code task." tools: [ 'edit/editFiles', 'fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] --- diff --git a/agents/blueprint-mode-codex.agent.md b/agents/blueprint-mode-codex.agent.md index 9c3fbcf08..8db404515 100644 --- a/agents/blueprint-mode-codex.agent.md +++ b/agents/blueprint-mode-codex.agent.md @@ -1,6 +1,7 @@ --- +name: "Blueprint Mode Codex V1" +description: "Executes structured workflows with strict correctness and maintainability. Enforces a minimal tool usage policy, never assumes facts, prioritizes reproducible solutions, self-correction, and edge-case handling." model: GPT-5-Codex (Preview) (copilot) -description: 'Executes structured workflows with strict correctness and maintainability. Enforces a minimal tool usage policy, never assumes facts, prioritizes reproducible solutions, self-correction, and edge-case handling.' --- # Blueprint Mode Codex v1 diff --git a/agents/blueprint-mode.agent.md b/agents/blueprint-mode.agent.md index ca696c6ae..cf8857fd1 100644 --- a/agents/blueprint-mode.agent.md +++ b/agents/blueprint-mode.agent.md @@ -1,6 +1,7 @@ --- +name: "Blueprint Mode V39" +description: "Executes structured workflows (Debug, Express, Main, Loop) with strict correctness and maintainability. Enforces an improved tool usage policy, never assumes facts, prioritizes reproducible solutions, self-correction, and edge-case handling." model: GPT-5 (copilot) -description: 'Executes structured workflows (Debug, Express, Main, Loop) with strict correctness and maintainability. Enforces an improved tool usage policy, never assumes facts, prioritizes reproducible solutions, self-correction, and edge-case handling.' --- # Blueprint Mode v39 diff --git a/agents/clojure-interactive-programming.agent.md b/agents/clojure-interactive-programming.agent.md index 757f4da68..86d827e58 100644 --- a/agents/clojure-interactive-programming.agent.md +++ b/agents/clojure-interactive-programming.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert Clojure pair programmer with REPL-first methodology, architectural oversight, and interactive problem-solving. Enforces quality standards, prevents workarounds, and develops solutions incrementally through live REPL evaluation before file modifications." name: "Clojure Interactive Programming" +description: "Expert Clojure pair programmer with REPL-first methodology, architectural oversight, and interactive problem-solving. Enforces quality standards, prevents workarounds, and develops solutions incrementally through live REPL evaluation before file modifications." --- You are a Clojure interactive programmer with Clojure REPL access. **MANDATORY BEHAVIOR**: diff --git a/agents/code-tour.agent.md b/agents/code-tour.agent.md index 12ed8730f..74821850c 100644 --- a/agents/code-tour.agent.md +++ b/agents/code-tour.agent.md @@ -1,6 +1,6 @@ --- -description: 'Expert agent for creating and maintaining VSCode CodeTour files with comprehensive schema support and best practices' -name: 'VSCode Tour Expert' +name: "VSCode Tour Expert" +description: "Expert agent for creating and maintaining VSCode CodeTour files with comprehensive schema support and best practices" --- # VSCode Tour Expert 🗺️ diff --git a/agents/comet-opik.agent.md b/agents/comet-opik.agent.md index b7c6ba236..bfdfa64f7 100644 --- a/agents/comet-opik.agent.md +++ b/agents/comet-opik.agent.md @@ -1,6 +1,6 @@ --- -name: Comet Opik -description: Unified Comet Opik agent for instrumenting LLM apps, managing prompts/projects, auditing prompts, and investigating traces/metrics via the latest Opik MCP server. +name: "Comet Opik" +description: "Unified Comet Opik agent for instrumenting LLM apps, managing prompts/projects, auditing prompts, and investigating traces/metrics via the latest Opik MCP server." tools: ['read', 'search', 'edit', 'shell', 'opik/*'] mcp-servers: opik: diff --git a/agents/context7.agent.md b/agents/context7.agent.md index 665a9acec..61610b43e 100644 --- a/agents/context7.agent.md +++ b/agents/context7.agent.md @@ -1,6 +1,6 @@ --- -name: Context7-Expert -description: 'Expert in latest library versions, best practices, and correct syntax using up-to-date documentation' +name: "Context7 Expert" +description: "Expert in latest library versions, best practices, and correct syntax using up-to-date documentation" argument-hint: 'Ask about specific libraries/frameworks (e.g., "Next.js routing", "React hooks", "Tailwind CSS")' tools: ['read', 'search', 'web', 'context7/*', 'agent/runSubagent'] mcp-servers: diff --git a/agents/critical-thinking.agent.md b/agents/critical-thinking.agent.md index 4fa9da1e6..dc3fe9336 100644 --- a/agents/critical-thinking.agent.md +++ b/agents/critical-thinking.agent.md @@ -1,5 +1,6 @@ --- -description: 'Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes.' +name: "Critical Thinking Mode Instructions" +description: "Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes." tools: ['codebase', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] --- # Critical thinking mode instructions diff --git a/agents/csharp-dotnet-janitor.agent.md b/agents/csharp-dotnet-janitor.agent.md index a7fd15f31..2eca1d4cc 100644 --- a/agents/csharp-dotnet-janitor.agent.md +++ b/agents/csharp-dotnet-janitor.agent.md @@ -1,5 +1,6 @@ --- -description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' +name: "C#/.NET Janitor" +description: "Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # C#/.NET Janitor diff --git a/agents/csharp-mcp-expert.agent.md b/agents/csharp-mcp-expert.agent.md index 38a815a5e..e479c992f 100644 --- a/agents/csharp-mcp-expert.agent.md +++ b/agents/csharp-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistant for developing Model Context Protocol (MCP) servers in C#" name: "C# MCP Server Expert" +description: "Expert assistant for developing Model Context Protocol (MCP) servers in C#" model: GPT-4.1 --- diff --git a/agents/custom-agent-foundry.agent.md b/agents/custom-agent-foundry.agent.md index 576d421cd..bc912288d 100644 --- a/agents/custom-agent-foundry.agent.md +++ b/agents/custom-agent-foundry.agent.md @@ -1,6 +1,6 @@ --- -description: 'Expert at designing and creating VS Code custom agents with optimal configurations' -name: Custom Agent Foundry +name: "Custom Agent Foundry" +description: "Expert at designing and creating VS Code custom agents with optimal configurations" argument-hint: Describe the agent role, purpose, and required capabilities model: Claude Sonnet 4.5 tools: ['vscode', 'execute', 'read', 'edit', 'search', 'web', 'agent', 'github/*', 'todo'] diff --git a/agents/debug.agent.md b/agents/debug.agent.md index 343535bd6..2c5e66978 100644 --- a/agents/debug.agent.md +++ b/agents/debug.agent.md @@ -1,5 +1,6 @@ --- -description: 'Debug your application to find and fix a bug' +name: "Debug Mode Instructions" +description: "Debug your application to find and fix a bug" tools: ['edit/editFiles', 'search', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'search/usages', 'read/problems', 'execute/testFailure', 'web/fetch', 'web/githubRepo', 'execute/runTests'] --- diff --git a/agents/declarative-agents-architect.agent.md b/agents/declarative-agents-architect.agent.md index 498c6c455..511482080 100644 --- a/agents/declarative-agents-architect.agent.md +++ b/agents/declarative-agents-architect.agent.md @@ -1,4 +1,6 @@ --- +name: "Declarative Agents Architect" +description: "You are a world-class Microsoft 365 Declarative Agent Architect with deep expertise in the complete development lifecycle of Microsoft 365 Copilot declarative agents. You specialize in the latest v1.5 JSON schema spec..." model: GPT-4.1 tools: ['codebase'] --- diff --git a/agents/demonstrate-understanding.agent.md b/agents/demonstrate-understanding.agent.md index 63dc76440..08ee99093 100644 --- a/agents/demonstrate-understanding.agent.md +++ b/agents/demonstrate-understanding.agent.md @@ -1,5 +1,6 @@ --- -description: 'Validate user understanding of code, design patterns, and implementation details through guided questioning.' +name: "Demonstrate Understanding Mode Instructions" +description: "Validate user understanding of code, design patterns, and implementation details through guided questioning." tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Demonstrate Understanding mode instructions diff --git a/agents/devops-expert.agent.md b/agents/devops-expert.agent.md index fc994c548..3a159a272 100644 --- a/agents/devops-expert.agent.md +++ b/agents/devops-expert.agent.md @@ -1,6 +1,6 @@ --- -name: 'DevOps Expert' -description: 'DevOps specialist following the infinity loop principle (Plan → Code → Build → Test → Release → Deploy → Operate → Monitor) with focus on automation, collaboration, and continuous improvement' +name: "DevOps Expert" +description: "DevOps specialist following the infinity loop principle (Plan → Code → Build → Test → Release → Deploy → Operate → Monitor) with focus on automation, collaboration, and continuous improvement" tools: ['codebase', 'edit/editFiles', 'terminalCommand', 'search', 'githubRepo', 'runCommands', 'runTasks'] --- diff --git a/agents/diffblue-cover.agent.md b/agents/diffblue-cover.agent.md index db05afbf5..18972a9ce 100644 --- a/agents/diffblue-cover.agent.md +++ b/agents/diffblue-cover.agent.md @@ -1,6 +1,6 @@ --- -name: DiffblueCover -description: Expert agent for creating unit tests for java applications using Diffblue Cover. +name: "DiffblueCover" +description: "Expert agent for creating unit tests for java applications using Diffblue Cover." tools: [ 'DiffblueCover/*' ] mcp-servers: # Checkout the Diffblue Cover MCP server from https://github.com/diffblue/cover-mcp/, and follow diff --git a/agents/dotnet-maui.agent.md b/agents/dotnet-maui.agent.md index 71f4fd1e1..2d242325c 100644 --- a/agents/dotnet-maui.agent.md +++ b/agents/dotnet-maui.agent.md @@ -1,6 +1,6 @@ --- -name: MAUI Expert -description: Support development of .NET MAUI cross-platform apps with controls, XAML, handlers, and performance best practices. +name: "MAUI Expert" +description: "Support development of .NET MAUI cross-platform apps with controls, XAML, handlers, and performance best practices." --- # .NET MAUI Coding Expert Agent diff --git a/agents/dotnet-upgrade.agent.md b/agents/dotnet-upgrade.agent.md index fe6472c38..89fc084fe 100644 --- a/agents/dotnet-upgrade.agent.md +++ b/agents/dotnet-upgrade.agent.md @@ -1,5 +1,6 @@ --- -description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' +name: ".NET Upgrade Collection" +description: "Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation." tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'fetch', 'microsoft.docs.mcp'] --- diff --git a/agents/droid.agent.md b/agents/droid.agent.md index d9988a708..41cc303c2 100644 --- a/agents/droid.agent.md +++ b/agents/droid.agent.md @@ -1,6 +1,6 @@ --- -name: droid -description: Provides installation guidance, usage examples, and automation patterns for the Droid CLI, with emphasis on droid exec for CI/CD and non-interactive automation +name: "Droid" +description: "Provides installation guidance, usage examples, and automation patterns for the Droid CLI, with emphasis on droid exec for CI/CD and non-interactive automation" tools: ["read", "search", "edit", "shell"] model: "claude-sonnet-4-5-20250929" --- diff --git a/agents/drupal-expert.agent.md b/agents/drupal-expert.agent.md index 2555266fb..0a001fafb 100644 --- a/agents/drupal-expert.agent.md +++ b/agents/drupal-expert.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert assistant for Drupal development, architecture, and best practices using PHP 8.3+ and modern Drupal patterns' +name: "Drupal Expert" +description: "Expert assistant for Drupal development, architecture, and best practices using PHP 8.3+ and modern Drupal patterns" model: GPT-4.1 tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- diff --git a/agents/dynatrace-expert.agent.md b/agents/dynatrace-expert.agent.md index 4598bb1bd..c6944499a 100644 --- a/agents/dynatrace-expert.agent.md +++ b/agents/dynatrace-expert.agent.md @@ -1,6 +1,6 @@ --- -name: Dynatrace Expert -description: The Dynatrace Expert Agent integrates observability and security capabilities directly into GitHub workflows, enabling development teams to investigate incidents, validate deployments, triage errors, detect performance regressions, validate releases, and manage security vulnerabilities by autonomously analysing traces, logs, and Dynatrace findings. This enables targeted and precise remediation of identified issues directly within the repository. +name: "Dynatrace Expert" +description: "The Dynatrace Expert Agent integrates observability and security capabilities directly into GitHub workflows, enabling development teams to investigate incidents, validate deployments, triage errors, detect performance regressions, validate releases, and manage security vulnerabilities by autonomously analysing traces, logs, and Dynatrace findings. This enables targeted and precise remediation of identified issues directly within the repository." mcp-servers: dynatrace: type: 'http' diff --git a/agents/elasticsearch-observability.agent.md b/agents/elasticsearch-observability.agent.md index 625399498..b4fdc0cc9 100644 --- a/agents/elasticsearch-observability.agent.md +++ b/agents/elasticsearch-observability.agent.md @@ -1,6 +1,6 @@ --- -name: elasticsearch-agent -description: Our expert AI assistant for debugging code (O11y), optimizing vector search (RAG), and remediating security threats using live Elastic data. +name: "Elasticsearch Agent" +description: "Our expert AI assistant for debugging code (O11y), optimizing vector search (RAG), and remediating security threats using live Elastic data." tools: # Standard tools for file reading, editing, and execution - read diff --git a/agents/electron-angular-native.agent.md b/agents/electron-angular-native.agent.md index 88b19f2e2..ab9da251d 100644 --- a/agents/electron-angular-native.agent.md +++ b/agents/electron-angular-native.agent.md @@ -1,6 +1,6 @@ --- -description: "Code Review Mode tailored for Electron app with Node.js backend (main), Angular frontend (render), and native integration layer (e.g., AppleScript, shell, or native tooling). Services in other repos are not reviewed here." name: "Electron Code Review Mode Instructions" +description: "Code Review Mode tailored for Electron app with Node.js backend (main), Angular frontend (render), and native integration layer (e.g., AppleScript, shell, or native tooling). Services in other repos are not reviewed here." tools: ["codebase", "editFiles", "fetch", "problems", "runCommands", "search", "searchResults", "terminalLastCommand", "git", "git_diff", "git_log", "git_show", "git_status"] --- diff --git a/agents/expert-cpp-software-engineer.agent.md b/agents/expert-cpp-software-engineer.agent.md index cbb1596fb..7fa9da35a 100644 --- a/agents/expert-cpp-software-engineer.agent.md +++ b/agents/expert-cpp-software-engineer.agent.md @@ -1,5 +1,6 @@ --- -description: 'Provide expert C++ software engineering guidance using modern C++ and industry best practices.' +name: "Expert C++ Software Engineer Mode Instructions" +description: "Provide expert C++ software engineering guidance using modern C++ and industry best practices." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] --- # Expert C++ software engineer mode instructions diff --git a/agents/expert-dotnet-software-engineer.agent.md b/agents/expert-dotnet-software-engineer.agent.md index 00329b407..df954c440 100644 --- a/agents/expert-dotnet-software-engineer.agent.md +++ b/agents/expert-dotnet-software-engineer.agent.md @@ -1,6 +1,6 @@ --- +name: "Expert .NET Software Engineer Mode Instructions" description: "Provide expert .NET software engineering guidance using modern software design patterns." -name: "Expert .NET software engineer mode instructions" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/expert-nextjs-developer.agent.md b/agents/expert-nextjs-developer.agent.md index a6f18e8e3..0915190ac 100644 --- a/agents/expert-nextjs-developer.agent.md +++ b/agents/expert-nextjs-developer.agent.md @@ -1,4 +1,5 @@ --- +name: "Expert Next.js Developer" description: "Expert Next.js 16 developer specializing in App Router, Server Components, Cache Components, Turbopack, and modern React patterns with TypeScript" model: "GPT-4.1" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "figma-dev-mode-mcp-server"] diff --git a/agents/expert-react-frontend-engineer.agent.md b/agents/expert-react-frontend-engineer.agent.md index 07ea1d1c7..4b728b6db 100644 --- a/agents/expert-react-frontend-engineer.agent.md +++ b/agents/expert-react-frontend-engineer.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert React 19.2 frontend engineer specializing in modern hooks, Server Components, Actions, TypeScript, and performance optimization" name: "Expert React Frontend Engineer" +description: "Expert React 19.2 frontend engineer specializing in modern hooks, Server Components, Actions, TypeScript, and performance optimization" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/gilfoyle.agent.md b/agents/gilfoyle.agent.md index 2ffd7fff4..0b88fc454 100644 --- a/agents/gilfoyle.agent.md +++ b/agents/gilfoyle.agent.md @@ -1,5 +1,6 @@ --- -description: 'Code review and analysis with the sardonic wit and technical elitism of Bertram Gilfoyle from Silicon Valley. Prepare for brutal honesty about your code.' +name: "Gilfoyle Code Review Mode" +description: "Code review and analysis with the sardonic wit and technical elitism of Bertram Gilfoyle from Silicon Valley. Prepare for brutal honesty about your code." tools: ['changes', 'codebase', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] --- # Gilfoyle Code Review Mode diff --git a/agents/github-actions-expert.agent.md b/agents/github-actions-expert.agent.md index 943867476..926896a6e 100644 --- a/agents/github-actions-expert.agent.md +++ b/agents/github-actions-expert.agent.md @@ -1,6 +1,6 @@ --- -name: 'GitHub Actions Expert' -description: 'GitHub Actions specialist focused on secure CI/CD workflows, action pinning, OIDC authentication, permissions least privilege, and supply-chain security' +name: "GitHub Actions Expert" +description: "GitHub Actions specialist focused on secure CI/CD workflows, action pinning, OIDC authentication, permissions least privilege, and supply-chain security" tools: ['codebase', 'edit/editFiles', 'terminalCommand', 'search', 'githubRepo'] --- diff --git a/agents/go-mcp-expert.agent.md b/agents/go-mcp-expert.agent.md index 6ffd32711..5a6991894 100644 --- a/agents/go-mcp-expert.agent.md +++ b/agents/go-mcp-expert.agent.md @@ -1,7 +1,7 @@ --- -model: GPT-4.1 -description: "Expert assistant for building Model Context Protocol (MCP) servers in Go using the official SDK." name: "Go MCP Server Development Expert" +description: "Expert assistant for building Model Context Protocol (MCP) servers in Go using the official SDK." +model: GPT-4.1 --- # Go MCP Server Development Expert diff --git a/agents/gpt-5-beast-mode.agent.md b/agents/gpt-5-beast-mode.agent.md index 34b819f08..9be4b9953 100644 --- a/agents/gpt-5-beast-mode.agent.md +++ b/agents/gpt-5-beast-mode.agent.md @@ -1,8 +1,8 @@ --- -description: 'Beast Mode 2.0: A powerful autonomous agent tuned specifically for GPT-5 that can solve complex problems by using tools, conducting research, and iterating until the problem is fully resolved.' +name: "GPT 5 Beast Mode" +description: "Beast Mode 2.0: A powerful autonomous agent tuned specifically for GPT-5 that can solve complex problems by using tools, conducting research, and iterating until the problem is fully resolved." model: GPT-5 (copilot) tools: ['edit/editFiles', 'execute/runNotebookCell', 'read/getNotebookSummary', 'read/readNotebookCellOutput', 'search', 'vscode/getProjectSetupInfo', 'vscode/installExtension', 'vscode/newWorkspace', 'vscode/runCommand', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'execute/createAndRunTask', 'execute/getTaskOutput', 'execute/runTask', 'vscode/extensions', 'search/usages', 'vscode/vscodeAPI', 'think', 'read/problems', 'search/changes', 'execute/testFailure', 'vscode/openSimpleBrowser', 'web/fetch', 'web/githubRepo', 'todo'] -name: 'GPT 5 Beast Mode' --- # Operating principles diff --git a/agents/hlbpa.agent.md b/agents/hlbpa.agent.md index decdfe6c0..85b720638 100644 --- a/agents/hlbpa.agent.md +++ b/agents/hlbpa.agent.md @@ -1,5 +1,6 @@ --- -description: Your perfect AI chat mode for high-level architectural documentation and review. Perfect for targeted updates after a story or researching that legacy system when nobody remembers what it's supposed to be doing. +name: "High Level Big Picture Architect (HLBPA)" +description: "Your perfect AI chat mode for high-level architectural documentation and review. Perfect for targeted updates after a story or researching that legacy system when nobody remembers what it's supposed to be doing." model: 'claude-sonnet-4' tools: - 'search/codebase' diff --git a/agents/implementation-plan.agent.md b/agents/implementation-plan.agent.md index 39079c6c6..044bba9f5 100644 --- a/agents/implementation-plan.agent.md +++ b/agents/implementation-plan.agent.md @@ -1,6 +1,6 @@ --- -description: "Generate an implementation plan for new features or refactoring existing code." name: "Implementation Plan Generation Mode" +description: "Generate an implementation plan for new features or refactoring existing code." tools: ["search/codebase", "search/usages", "vscode/vscodeAPI", "think", "read/problems", "search/changes", "execute/testFailure", "read/terminalSelection", "read/terminalLastCommand", "vscode/openSimpleBrowser", "web/fetch", "findTestFiles", "search/searchResults", "web/githubRepo", "vscode/extensions", "edit/editFiles", "execute/runNotebookCell", "read/getNotebookSummary", "read/readNotebookCellOutput", "search", "vscode/getProjectSetupInfo", "vscode/installExtension", "vscode/newWorkspace", "vscode/runCommand", "execute/getTerminalOutput", "execute/runInTerminal", "execute/createAndRunTask", "execute/getTaskOutput", "execute/runTask"] --- diff --git a/agents/janitor.agent.md b/agents/janitor.agent.md index c580d8724..7683bb16c 100644 --- a/agents/janitor.agent.md +++ b/agents/janitor.agent.md @@ -1,5 +1,6 @@ --- -description: 'Perform janitorial tasks on any codebase including cleanup, simplification, and tech debt remediation.' +name: "Universal Janitor" +description: "Perform janitorial tasks on any codebase including cleanup, simplification, and tech debt remediation." tools: ['search/changes', 'search/codebase', 'edit/editFiles', 'vscode/extensions', 'web/fetch', 'findTestFiles', 'web/githubRepo', 'vscode/getProjectSetupInfo', 'vscode/installExtension', 'vscode/newWorkspace', 'vscode/runCommand', 'vscode/openSimpleBrowser', 'read/problems', 'execute/getTerminalOutput', 'execute/runInTerminal', 'read/terminalLastCommand', 'read/terminalSelection', 'execute/createAndRunTask', 'execute/getTaskOutput', 'execute/runTask', 'execute/runTests', 'search', 'search/searchResults', 'execute/testFailure', 'search/usages', 'vscode/vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Universal Janitor diff --git a/agents/java-mcp-expert.agent.md b/agents/java-mcp-expert.agent.md index 1b87c4a36..76719faa7 100644 --- a/agents/java-mcp-expert.agent.md +++ b/agents/java-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistance for building Model Context Protocol servers in Java using reactive streams, the official MCP Java SDK, and Spring Boot integration." name: "Java MCP Expert" +description: "Expert assistance for building Model Context Protocol servers in Java using reactive streams, the official MCP Java SDK, and Spring Boot integration." model: GPT-4.1 --- diff --git a/agents/jfrog-sec.agent.md b/agents/jfrog-sec.agent.md index 2f8b21241..effdb990e 100644 --- a/agents/jfrog-sec.agent.md +++ b/agents/jfrog-sec.agent.md @@ -1,6 +1,6 @@ --- -name: JFrog Security Agent -description: The dedicated Application Security agent for automated security remediation. Verifies package and version compliance, and suggests vulnerability fixes using JFrog security intelligence. +name: "JFrog Security Agent" +description: "The dedicated Application Security agent for automated security remediation. Verifies package and version compliance, and suggests vulnerability fixes using JFrog security intelligence." --- ### Persona and Constraints diff --git a/agents/kotlin-mcp-expert.agent.md b/agents/kotlin-mcp-expert.agent.md index 70b5c272e..7c88c60c1 100644 --- a/agents/kotlin-mcp-expert.agent.md +++ b/agents/kotlin-mcp-expert.agent.md @@ -1,7 +1,7 @@ --- -model: GPT-4.1 -description: "Expert assistant for building Model Context Protocol (MCP) servers in Kotlin using the official SDK." name: "Kotlin MCP Server Development Expert" +description: "Expert assistant for building Model Context Protocol (MCP) servers in Kotlin using the official SDK." +model: GPT-4.1 --- # Kotlin MCP Server Development Expert diff --git a/agents/kusto-assistant.agent.md b/agents/kusto-assistant.agent.md index 84fe4c336..a688ba688 100644 --- a/agents/kusto-assistant.agent.md +++ b/agents/kusto-assistant.agent.md @@ -1,4 +1,5 @@ --- +name: "Kusto Assistant: Azure Data Explorer (Kusto) Engineering Assistant" description: "Expert KQL assistant for live Azure Data Explorer analysis via Azure MCP server" tools: [ diff --git a/agents/laravel-expert-agent.agent.md b/agents/laravel-expert-agent.agent.md index c066d7c15..03a7ecf91 100644 --- a/agents/laravel-expert-agent.agent.md +++ b/agents/laravel-expert-agent.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert Laravel development assistant specializing in modern Laravel 12+ applications with Eloquent, Artisan, testing, and best practices' +name: "Laravel Expert Agent" +description: "Expert Laravel development assistant specializing in modern Laravel 12+ applications with Eloquent, Artisan, testing, and best practices" model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems', 'search'] --- diff --git a/agents/launchdarkly-flag-cleanup.agent.md b/agents/launchdarkly-flag-cleanup.agent.md index be1ba3949..75302fb29 100644 --- a/agents/launchdarkly-flag-cleanup.agent.md +++ b/agents/launchdarkly-flag-cleanup.agent.md @@ -1,6 +1,6 @@ --- -name: launchdarkly-flag-cleanup -description: > +name: "Launchdarkly Flag Cleanup" +description: ">" A specialized GitHub Copilot agent that uses the LaunchDarkly MCP server to safely automate feature flag cleanup workflows. This agent determines removal readiness, identifies the correct forward value, and creates PRs that preserve production behavior diff --git a/agents/lingodotdev-i18n.agent.md b/agents/lingodotdev-i18n.agent.md index 7e4a5c6de..54b17d3d9 100644 --- a/agents/lingodotdev-i18n.agent.md +++ b/agents/lingodotdev-i18n.agent.md @@ -1,6 +1,6 @@ --- -name: Lingo.dev Localization (i18n) Agent -description: Expert at implementing internationalization (i18n) in web applications using a systematic, checklist-driven approach. +name: "Lingo.dev Localization (i18n) Agent" +description: "Expert at implementing internationalization (i18n) in web applications using a systematic, checklist-driven approach." tools: - shell - read diff --git a/agents/mcp-m365-agent-expert.agent.md b/agents/mcp-m365-agent-expert.agent.md index 99592a453..72a499920 100644 --- a/agents/mcp-m365-agent-expert.agent.md +++ b/agents/mcp-m365-agent-expert.agent.md @@ -1,6 +1,6 @@ --- -description: 'Expert assistant for building MCP-based declarative agents for Microsoft 365 Copilot with Model Context Protocol integration' name: "MCP M365 Agent Expert" +description: "Expert assistant for building MCP-based declarative agents for Microsoft 365 Copilot with Model Context Protocol integration" model: GPT-4.1 --- diff --git a/agents/mentor.agent.md b/agents/mentor.agent.md index 69cb457d4..3a8fb566e 100644 --- a/agents/mentor.agent.md +++ b/agents/mentor.agent.md @@ -1,5 +1,6 @@ --- -description: 'Help mentor the engineer by providing guidance and support.' +name: "Mentor Mode Instructions" +description: "Help mentor the engineer by providing guidance and support." tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Mentor mode instructions diff --git a/agents/meta-agentic-project-scaffold.agent.md b/agents/meta-agentic-project-scaffold.agent.md index f78bc7dcf..0ecf87fc5 100644 --- a/agents/meta-agentic-project-scaffold.agent.md +++ b/agents/meta-agentic-project-scaffold.agent.md @@ -1,6 +1,6 @@ --- -description: "Meta agentic project creation assistant to help users create and manage project workflows effectively." name: "Meta Agentic Project Scaffold" +description: "Meta agentic project creation assistant to help users create and manage project workflows effectively." tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "readCellOutput", "runCommands", "runNotebooks", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "updateUserPreferences", "usages", "vscodeAPI", "activePullRequest", "copilotCodingAgent"] model: "GPT-4.1" --- diff --git a/agents/microsoft-agent-framework-dotnet.agent.md b/agents/microsoft-agent-framework-dotnet.agent.md index f91487136..c0d77bbe7 100644 --- a/agents/microsoft-agent-framework-dotnet.agent.md +++ b/agents/microsoft-agent-framework-dotnet.agent.md @@ -1,4 +1,5 @@ --- +name: "Microsoft Agent Framework .NET Mode Instructions" description: "Create, update, refactor, explain or work with code using the .NET version of Microsoft Agent Framework." tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "github"] model: 'claude-sonnet-4' diff --git a/agents/microsoft-agent-framework-python.agent.md b/agents/microsoft-agent-framework-python.agent.md index cb7eab0d3..c47bd4c1c 100644 --- a/agents/microsoft-agent-framework-python.agent.md +++ b/agents/microsoft-agent-framework-python.agent.md @@ -1,4 +1,5 @@ --- +name: "Microsoft Agent Framework Python Mode Instructions" description: "Create, update, refactor, explain or work with code using the Python version of Microsoft Agent Framework." tools: ["changes", "search/codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTasks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp", "github", "configurePythonEnvironment", "getPythonEnvironmentInfo", "getPythonExecutableCommand", "installPythonPackage"] model: 'claude-sonnet-4' diff --git a/agents/microsoft-study-mode.agent.md b/agents/microsoft-study-mode.agent.md index db08fb52c..222adc12b 100644 --- a/agents/microsoft-study-mode.agent.md +++ b/agents/microsoft-study-mode.agent.md @@ -1,5 +1,6 @@ --- -description: 'Activate your personal Microsoft/Azure tutor - learn through guided discovery, not just answers.' +name: "Microsoft Study And Learn Chat Mode" +description: "Activate your personal Microsoft/Azure tutor - learn through guided discovery, not just answers." tools: ['microsoft_docs_search', 'microsoft_docs_fetch'] --- diff --git a/agents/microsoft_learn_contributor.agent.md b/agents/microsoft_learn_contributor.agent.md index 0138feafc..106aad0b2 100644 --- a/agents/microsoft_learn_contributor.agent.md +++ b/agents/microsoft_learn_contributor.agent.md @@ -1,5 +1,6 @@ --- -description: 'Microsoft Learn Contributor chatmode for editing and writing Microsoft Learn documentation following Microsoft Writing Style Guide and authoring best practices.' +name: "Microsoft Learn Contributor" +description: "Microsoft Learn Contributor chatmode for editing and writing Microsoft Learn documentation following Microsoft Writing Style Guide and authoring best practices." tools: ['changes', 'search/codebase', 'edit/editFiles', 'new', 'openSimpleBrowser', 'problems', 'search', 'search/searchResults', 'microsoft.docs.mcp'] --- diff --git a/agents/modernization.agent.md b/agents/modernization.agent.md index 0c583b442..b4535edad 100644 --- a/agents/modernization.agent.md +++ b/agents/modernization.agent.md @@ -1,5 +1,6 @@ --- -description: 'Human-in-the-loop modernization assistant for analyzing, documenting, and planning complete project modernization with architectural recommendations.' +name: "Modernization Agent" +description: "Human-in-the-loop modernization assistant for analyzing, documenting, and planning complete project modernization with architectural recommendations." model: 'GPT-5' tools: - search diff --git a/agents/monday-bug-fixer.agent.md b/agents/monday-bug-fixer.agent.md index fb335d450..4b416afba 100644 --- a/agents/monday-bug-fixer.agent.md +++ b/agents/monday-bug-fixer.agent.md @@ -1,6 +1,6 @@ --- -name: Monday Bug Context Fixer -description: Elite bug-fixing agent that enriches task context from Monday.com platform data. Gathers related items, docs, comments, epics, and requirements to deliver production-quality fixes with comprehensive PRs. +name: "Monday Bug Context Fixer" +description: "Elite bug-fixing agent that enriches task context from Monday.com platform data. Gathers related items, docs, comments, epics, and requirements to deliver production-quality fixes with comprehensive PRs." tools: ['*'] mcp-servers: monday-api-mcp: diff --git a/agents/mongodb-performance-advisor.agent.md b/agents/mongodb-performance-advisor.agent.md index ebbee786a..072b6fe28 100644 --- a/agents/mongodb-performance-advisor.agent.md +++ b/agents/mongodb-performance-advisor.agent.md @@ -1,6 +1,6 @@ --- -name: mongodb-performance-advisor -description: Analyze MongoDB database performance, offer query and index optimization insights and provide actionable recommendations to improve overall usage of the database. +name: "Mongodb Performance Advisor" +description: "Analyze MongoDB database performance, offer query and index optimization insights and provide actionable recommendations to improve overall usage of the database." --- # Role diff --git a/agents/ms-sql-dba.agent.md b/agents/ms-sql-dba.agent.md index b8b379281..e62a73885 100644 --- a/agents/ms-sql-dba.agent.md +++ b/agents/ms-sql-dba.agent.md @@ -1,6 +1,6 @@ --- +name: "MS SQL Database Administrator" description: "Work with Microsoft SQL Server databases using the MS SQL extension." -name: "MS-SQL Database Administrator" tools: ["search/codebase", "edit/editFiles", "githubRepo", "extensions", "runCommands", "database", "mssql_connect", "mssql_query", "mssql_listServers", "mssql_listDatabases", "mssql_disconnect", "mssql_visualizeSchema"] --- diff --git a/agents/neo4j-docker-client-generator.agent.md b/agents/neo4j-docker-client-generator.agent.md index acf20a705..6974b0ecf 100644 --- a/agents/neo4j-docker-client-generator.agent.md +++ b/agents/neo4j-docker-client-generator.agent.md @@ -1,6 +1,6 @@ --- -name: neo4j-docker-client-generator -description: AI agent that generates simple, high-quality Python Neo4j client libraries from GitHub issues with proper best practices +name: "Neo4j Docker Client Generator" +description: "AI agent that generates simple, high-quality Python Neo4j client libraries from GitHub issues with proper best practices" tools: ['read', 'edit', 'search', 'shell', 'neo4j-local/neo4j-local-get_neo4j_schema', 'neo4j-local/neo4j-local-read_neo4j_cypher', 'neo4j-local/neo4j-local-write_neo4j_cypher'] mcp-servers: neo4j-local: diff --git a/agents/neon-migration-specialist.agent.md b/agents/neon-migration-specialist.agent.md index 198d3f7e2..0cbc1ac13 100644 --- a/agents/neon-migration-specialist.agent.md +++ b/agents/neon-migration-specialist.agent.md @@ -1,6 +1,6 @@ --- -name: Neon Migration Specialist -description: Safe Postgres migrations with zero-downtime using Neon's branching workflow. Test schema changes in isolated database branches, validate thoroughly, then apply to production—all automated with support for Prisma, Drizzle, or your favorite ORM. +name: "Neon Migration Specialist" +description: "Safe Postgres migrations with zero-downtime using Neon's branching workflow. Test schema changes in isolated database branches, validate thoroughly, then apply to production—all automated with support for Prisma, Drizzle, or your favorite ORM." --- # Neon Database Migration Specialist diff --git a/agents/neon-optimization-analyzer.agent.md b/agents/neon-optimization-analyzer.agent.md index 80ad9d4bb..5899409f5 100644 --- a/agents/neon-optimization-analyzer.agent.md +++ b/agents/neon-optimization-analyzer.agent.md @@ -1,6 +1,6 @@ --- -name: Neon Performance Analyzer -description: Identify and fix slow Postgres queries automatically using Neon's branching workflow. Analyzes execution plans, tests optimizations in isolated database branches, and provides clear before/after performance metrics with actionable code fixes. +name: "Neon Performance Analyzer" +description: "Identify and fix slow Postgres queries automatically using Neon's branching workflow. Analyzes execution plans, tests optimizations in isolated database branches, and provides clear before/after performance metrics with actionable code fixes." --- # Neon Performance Analyzer diff --git a/agents/octopus-deploy-release-notes-mcp.agent.md b/agents/octopus-deploy-release-notes-mcp.agent.md index 1c5069f79..c8b2bedc3 100644 --- a/agents/octopus-deploy-release-notes-mcp.agent.md +++ b/agents/octopus-deploy-release-notes-mcp.agent.md @@ -1,6 +1,6 @@ --- -name: octopus-release-notes-with-mcp -description: Generate release notes for a release in Octopus Deploy. The tools for this MCP server provide access to the Octopus Deploy APIs. +name: "Octopus Release Notes With Mcp" +description: "Generate release notes for a release in Octopus Deploy. The tools for this MCP server provide access to the Octopus Deploy APIs." mcp-servers: octopus: type: 'local' diff --git a/agents/pagerduty-incident-responder.agent.md b/agents/pagerduty-incident-responder.agent.md index 5e5c5ee00..9315b6b5d 100644 --- a/agents/pagerduty-incident-responder.agent.md +++ b/agents/pagerduty-incident-responder.agent.md @@ -1,6 +1,6 @@ --- -name: PagerDuty Incident Responder -description: Responds to PagerDuty incidents by analyzing incident context, identifying recent code changes, and suggesting fixes via GitHub PRs. +name: "PagerDuty Incident Responder" +description: "Responds to PagerDuty incidents by analyzing incident context, identifying recent code changes, and suggesting fixes via GitHub PRs." tools: ["read", "search", "edit", "github/search_code", "github/search_commits", "github/get_commit", "github/list_commits", "github/list_pull_requests", "github/get_pull_request", "github/get_file_contents", "github/create_pull_request", "github/create_issue", "github/list_repository_contributors", "github/create_or_update_file", "github/get_repository", "github/list_branches", "github/create_branch", "pagerduty/*"] mcp-servers: pagerduty: diff --git a/agents/php-mcp-expert.agent.md b/agents/php-mcp-expert.agent.md index 9c591aec4..8386d9377 100644 --- a/agents/php-mcp-expert.agent.md +++ b/agents/php-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistant for PHP MCP server development using the official PHP SDK with attribute-based discovery" name: "PHP MCP Expert" +description: "Expert assistant for PHP MCP server development using the official PHP SDK with attribute-based discovery" model: GPT-4.1 --- diff --git a/agents/pimcore-expert.agent.md b/agents/pimcore-expert.agent.md index 8e915e3b6..45da8ff99 100644 --- a/agents/pimcore-expert.agent.md +++ b/agents/pimcore-expert.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert Pimcore development assistant specializing in CMS, DAM, PIM, and E-Commerce solutions with Symfony integration' +name: "Pimcore Expert" +description: "Expert Pimcore development assistant specializing in CMS, DAM, PIM, and E-Commerce solutions with Symfony integration" model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- diff --git a/agents/plan.agent.md b/agents/plan.agent.md index 4d7252c48..3c5f22db4 100644 --- a/agents/plan.agent.md +++ b/agents/plan.agent.md @@ -1,6 +1,6 @@ --- +name: "Plan Mode Strategic Planning & Architecture" description: "Strategic planning and architecture assistant focused on thoughtful analysis before implementation. Helps developers understand codebases, clarify requirements, and develop comprehensive implementation strategies." -name: "Plan Mode - Strategic Planning & Architecture" tools: - search/codebase - vscode/extensions diff --git a/agents/planner.agent.md b/agents/planner.agent.md index cb1518a91..0d8ee0a7a 100644 --- a/agents/planner.agent.md +++ b/agents/planner.agent.md @@ -1,6 +1,6 @@ --- +name: "Planning Mode Instructions" description: "Generate an implementation plan for new features or refactoring existing code." -name: "Planning mode instructions" tools: ["codebase", "fetch", "findTestFiles", "githubRepo", "search", "usages"] --- diff --git a/agents/platform-sre-kubernetes.agent.md b/agents/platform-sre-kubernetes.agent.md index ffd7c875d..bef0e85d0 100644 --- a/agents/platform-sre-kubernetes.agent.md +++ b/agents/platform-sre-kubernetes.agent.md @@ -1,6 +1,6 @@ --- -name: 'Platform SRE for Kubernetes' -description: 'SRE-focused Kubernetes specialist prioritizing reliability, safe rollouts/rollbacks, security defaults, and operational verification for production-grade deployments' +name: "Platform SRE For Kubernetes" +description: "SRE-focused Kubernetes specialist prioritizing reliability, safe rollouts/rollbacks, security defaults, and operational verification for production-grade deployments" tools: ['codebase', 'edit/editFiles', 'terminalCommand', 'search', 'githubRepo'] --- diff --git a/agents/playwright-tester.agent.md b/agents/playwright-tester.agent.md index 809af0e33..59c760501 100644 --- a/agents/playwright-tester.agent.md +++ b/agents/playwright-tester.agent.md @@ -1,6 +1,6 @@ --- -description: "Testing mode for Playwright tests" name: "Playwright Tester Mode" +description: "Testing mode for Playwright tests" tools: ["changes", "codebase", "edit/editFiles", "fetch", "findTestFiles", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "playwright"] model: Claude Sonnet 4 --- diff --git a/agents/postgresql-dba.agent.md b/agents/postgresql-dba.agent.md index 2bf2f0a10..da8e68671 100644 --- a/agents/postgresql-dba.agent.md +++ b/agents/postgresql-dba.agent.md @@ -1,6 +1,6 @@ --- -description: "Work with PostgreSQL databases using the PostgreSQL extension." name: "PostgreSQL Database Administrator" +description: "Work with PostgreSQL databases using the PostgreSQL extension." tools: ["codebase", "edit/editFiles", "githubRepo", "extensions", "runCommands", "database", "pgsql_bulkLoadCsv", "pgsql_connect", "pgsql_describeCsv", "pgsql_disconnect", "pgsql_listDatabases", "pgsql_listServers", "pgsql_modifyDatabase", "pgsql_open_script", "pgsql_query", "pgsql_visualizeSchema"] --- diff --git a/agents/power-bi-data-modeling-expert.agent.md b/agents/power-bi-data-modeling-expert.agent.md index 6397f13eb..facc88b10 100644 --- a/agents/power-bi-data-modeling-expert.agent.md +++ b/agents/power-bi-data-modeling-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert Power BI data modeling guidance using star schema principles, relationship design, and Microsoft best practices for optimal model performance and usability." name: "Power BI Data Modeling Expert Mode" +description: "Expert Power BI data modeling guidance using star schema principles, relationship design, and Microsoft best practices for optimal model performance and usability." model: "gpt-4.1" tools: ["changes", "search/codebase", "editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/power-bi-dax-expert.agent.md b/agents/power-bi-dax-expert.agent.md index 39ffdee4c..c8a0d7030 100644 --- a/agents/power-bi-dax-expert.agent.md +++ b/agents/power-bi-dax-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert Power BI DAX guidance using Microsoft best practices for performance, readability, and maintainability of DAX formulas and calculations." name: "Power BI DAX Expert Mode" +description: "Expert Power BI DAX guidance using Microsoft best practices for performance, readability, and maintainability of DAX formulas and calculations." model: "gpt-4.1" tools: ["changes", "search/codebase", "editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/power-bi-performance-expert.agent.md b/agents/power-bi-performance-expert.agent.md index 62f3ad94d..05ecb9550 100644 --- a/agents/power-bi-performance-expert.agent.md +++ b/agents/power-bi-performance-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert Power BI performance optimization guidance for troubleshooting, monitoring, and improving the performance of Power BI models, reports, and queries." name: "Power BI Performance Expert Mode" +description: "Expert Power BI performance optimization guidance for troubleshooting, monitoring, and improving the performance of Power BI models, reports, and queries." model: "gpt-4.1" tools: ["changes", "codebase", "editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/power-bi-visualization-expert.agent.md b/agents/power-bi-visualization-expert.agent.md index 661d05ade..0b2d86dc4 100644 --- a/agents/power-bi-visualization-expert.agent.md +++ b/agents/power-bi-visualization-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert Power BI report design and visualization guidance using Microsoft best practices for creating effective, performant, and user-friendly reports and dashboards." name: "Power BI Visualization Expert Mode" +description: "Expert Power BI report design and visualization guidance using Microsoft best practices for creating effective, performant, and user-friendly reports and dashboards." model: "gpt-4.1" tools: ["changes", "search/codebase", "editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runTasks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "microsoft.docs.mcp"] --- diff --git a/agents/power-platform-expert.agent.md b/agents/power-platform-expert.agent.md index e6b9f8836..9b0b95ab4 100644 --- a/agents/power-platform-expert.agent.md +++ b/agents/power-platform-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Power Platform expert providing guidance on Code Apps, canvas apps, Dataverse, connectors, and Power Platform best practices" name: "Power Platform Expert" +description: "Power Platform expert providing guidance on Code Apps, canvas apps, Dataverse, connectors, and Power Platform best practices" model: GPT-4.1 --- diff --git a/agents/power-platform-mcp-integration-expert.agent.md b/agents/power-platform-mcp-integration-expert.agent.md index 3c6759f17..c4a9b10f2 100644 --- a/agents/power-platform-mcp-integration-expert.agent.md +++ b/agents/power-platform-mcp-integration-expert.agent.md @@ -1,6 +1,6 @@ --- -description: Expert in Power Platform custom connector development with MCP integration for Copilot Studio - comprehensive knowledge of schemas, protocols, and integration patterns name: "Power Platform MCP Integration Expert" +description: "Expert in Power Platform custom connector development with MCP integration for Copilot Studio - comprehensive knowledge of schemas, protocols, and integration patterns" model: GPT-4.1 --- diff --git a/agents/prd.agent.md b/agents/prd.agent.md index b03e40fba..8b1e8c279 100644 --- a/agents/prd.agent.md +++ b/agents/prd.agent.md @@ -1,6 +1,6 @@ --- -description: "Generate a comprehensive Product Requirements Document (PRD) in Markdown, detailing user stories, acceptance criteria, technical considerations, and metrics. Optionally create GitHub issues upon user confirmation." name: "Create PRD Chat Mode" +description: "Generate a comprehensive Product Requirements Document (PRD) in Markdown, detailing user stories, acceptance criteria, technical considerations, and metrics. Optionally create GitHub issues upon user confirmation." tools: ["codebase", "edit/editFiles", "fetch", "findTestFiles", "list_issues", "githubRepo", "search", "add_issue_comment", "create_issue", "update_issue", "get_issue", "search_issues"] --- diff --git a/agents/principal-software-engineer.agent.md b/agents/principal-software-engineer.agent.md index 82056fc44..a3f5ad1a5 100644 --- a/agents/principal-software-engineer.agent.md +++ b/agents/principal-software-engineer.agent.md @@ -1,5 +1,6 @@ --- -description: 'Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation.' +name: "Principal Software Engineer Mode Instructions" +description: "Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation." tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Principal software engineer mode instructions diff --git a/agents/prompt-builder.agent.md b/agents/prompt-builder.agent.md index cb34c06e0..8355eb6d9 100644 --- a/agents/prompt-builder.agent.md +++ b/agents/prompt-builder.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert prompt engineering and validation system for creating high-quality prompts - Brought to you by microsoft/edge-ai' +name: "Prompt Builder Instructions" +description: "Expert prompt engineering and validation system for creating high-quality prompts - Brought to you by microsoft/edge-ai" tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] --- diff --git a/agents/prompt-engineer.agent.md b/agents/prompt-engineer.agent.md index f72d5691d..73cc4ae52 100644 --- a/agents/prompt-engineer.agent.md +++ b/agents/prompt-engineer.agent.md @@ -1,4 +1,5 @@ --- +name: "Prompt Engineer" description: "A specialized chat mode for analyzing and improving prompts. Every user input is treated as a prompt to be improved. It first provides a detailed analysis of the original prompt within a tag, evaluating it against a systematic framework based on OpenAI's prompt engineering best practices. Following the analysis, it generates a new, improved prompt." --- diff --git a/agents/python-mcp-expert.agent.md b/agents/python-mcp-expert.agent.md index 864dac6a0..bf45b1ce1 100644 --- a/agents/python-mcp-expert.agent.md +++ b/agents/python-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistant for developing Model Context Protocol (MCP) servers in Python" name: "Python MCP Server Expert" +description: "Expert assistant for developing Model Context Protocol (MCP) servers in Python" model: GPT-4.1 --- diff --git a/agents/refine-issue.agent.md b/agents/refine-issue.agent.md index 71f512451..e5c11427e 100644 --- a/agents/refine-issue.agent.md +++ b/agents/refine-issue.agent.md @@ -1,5 +1,6 @@ --- -description: 'Refine the requirement or issue with Acceptance Criteria, Technical Considerations, Edge Cases, and NFRs' +name: "Refine Requirement Or Issue Chat Mode" +description: "Refine the requirement or issue with Acceptance Criteria, Technical Considerations, Edge Cases, and NFRs" tools: [ 'list_issues','githubRepo', 'search', 'add_issue_comment','create_issue','create_issue_comment','update_issue','delete_issue','get_issue', 'search_issues'] --- diff --git a/agents/research-technical-spike.agent.md b/agents/research-technical-spike.agent.md index 5b3e92f55..1cc3c9ad2 100644 --- a/agents/research-technical-spike.agent.md +++ b/agents/research-technical-spike.agent.md @@ -1,6 +1,6 @@ --- +name: "Technical Spike Research Mode" description: "Systematically research and validate technical spike documents through exhaustive investigation and controlled experimentation." -name: "Technical spike research mode" tools: ['vscode', 'execute', 'read', 'edit', 'search', 'web', 'agent', 'todo'] --- diff --git a/agents/ruby-mcp-expert.agent.md b/agents/ruby-mcp-expert.agent.md index df82901d3..ef31e9c6d 100644 --- a/agents/ruby-mcp-expert.agent.md +++ b/agents/ruby-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistance for building Model Context Protocol servers in Ruby using the official MCP Ruby SDK gem with Rails integration." name: "Ruby MCP Expert" +description: "Expert assistance for building Model Context Protocol servers in Ruby using the official MCP Ruby SDK gem with Rails integration." model: GPT-4.1 --- diff --git a/agents/rust-gpt-4.1-beast-mode.agent.md b/agents/rust-gpt-4.1-beast-mode.agent.md index 33ca09e66..ab952109c 100644 --- a/agents/rust-gpt-4.1-beast-mode.agent.md +++ b/agents/rust-gpt-4.1-beast-mode.agent.md @@ -1,8 +1,7 @@ --- -description: 'Rust GPT-4.1 Coding Beast Mode for VS Code' +name: "Rust Beast Mode" +description: "Rust GPT-4.1 Coding Beast Mode for VS Code" model: GPT-4.1 -name: 'Rust Beast Mode' - --- You are an agent - please keep going until the user’s query is completely resolved, before ending your turn and yielding back to the user. diff --git a/agents/rust-mcp-expert.agent.md b/agents/rust-mcp-expert.agent.md index 49eeb32b8..f4edc57f7 100644 --- a/agents/rust-mcp-expert.agent.md +++ b/agents/rust-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistant for Rust MCP server development using the rmcp SDK with tokio async runtime" name: "Rust MCP Expert" +description: "Expert assistant for Rust MCP server development using the rmcp SDK with tokio async runtime" model: GPT-4.1 --- diff --git a/agents/salesforce-expert.agent.md b/agents/salesforce-expert.agent.md index 6657b661d..358779a17 100644 --- a/agents/salesforce-expert.agent.md +++ b/agents/salesforce-expert.agent.md @@ -1,6 +1,6 @@ --- -description: 'Provide expert Salesforce Platform guidance, including Apex Enterprise Patterns, LWC, integration, and Aura-to-LWC migration.' name: "Salesforce Expert Agent" +description: "Provide expert Salesforce Platform guidance, including Apex Enterprise Patterns, LWC, integration, and Aura-to-LWC migration." tools: ['vscode', 'execute', 'read', 'edit', 'search', 'web', 'sfdx-mcp/*', 'agent', 'todo'] model: GPT-4.1 --- diff --git a/agents/se-gitops-ci-specialist.agent.md b/agents/se-gitops-ci-specialist.agent.md index 338a3c0ca..72f3a3db3 100644 --- a/agents/se-gitops-ci-specialist.agent.md +++ b/agents/se-gitops-ci-specialist.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: DevOps/CI' -description: 'DevOps specialist for CI/CD pipelines, deployment debugging, and GitOps workflows focused on making deployments boring and reliable' +name: "SE: DevOps/CI" +description: "DevOps specialist for CI/CD pipelines, deployment debugging, and GitOps workflows focused on making deployments boring and reliable" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'terminalCommand', 'search', 'githubRepo'] --- diff --git a/agents/se-product-manager-advisor.agent.md b/agents/se-product-manager-advisor.agent.md index d21c36ab5..14a4f5599 100644 --- a/agents/se-product-manager-advisor.agent.md +++ b/agents/se-product-manager-advisor.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: Product Manager' -description: 'Product management guidance for creating GitHub issues, aligning business value with user needs, and making data-driven product decisions' +name: "SE: Product Manager" +description: "Product management guidance for creating GitHub issues, aligning business value with user needs, and making data-driven product decisions" model: GPT-5 tools: ['codebase', 'githubRepo', 'create_issue', 'update_issue', 'list_issues', 'search_issues'] --- diff --git a/agents/se-responsible-ai-code.agent.md b/agents/se-responsible-ai-code.agent.md index df9736918..38186ea0f 100644 --- a/agents/se-responsible-ai-code.agent.md +++ b/agents/se-responsible-ai-code.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: Responsible AI' -description: 'Responsible AI specialist ensuring AI works for everyone through bias prevention, accessibility compliance, ethical development, and inclusive design' +name: "SE: Responsible AI" +description: "Responsible AI specialist ensuring AI works for everyone through bias prevention, accessibility compliance, ethical development, and inclusive design" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'search'] --- diff --git a/agents/se-security-reviewer.agent.md b/agents/se-security-reviewer.agent.md index 71e2aa245..cb56d007d 100644 --- a/agents/se-security-reviewer.agent.md +++ b/agents/se-security-reviewer.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: Security' -description: 'Security-focused code review specialist with OWASP Top 10, Zero Trust, LLM security, and enterprise security standards' +name: "SE: Security" +description: "Security-focused code review specialist with OWASP Top 10, Zero Trust, LLM security, and enterprise security standards" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'search', 'problems'] --- diff --git a/agents/se-system-architecture-reviewer.agent.md b/agents/se-system-architecture-reviewer.agent.md index 3942b3e84..9908124ed 100644 --- a/agents/se-system-architecture-reviewer.agent.md +++ b/agents/se-system-architecture-reviewer.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: Architect' -description: 'System architecture review specialist with Well-Architected frameworks, design validation, and scalability analysis for AI and distributed systems' +name: "SE: Architect" +description: "System architecture review specialist with Well-Architected frameworks, design validation, and scalability analysis for AI and distributed systems" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- diff --git a/agents/se-technical-writer.agent.md b/agents/se-technical-writer.agent.md index 4fcda734d..526e27766 100644 --- a/agents/se-technical-writer.agent.md +++ b/agents/se-technical-writer.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: Tech Writer' -description: 'Technical writing specialist for creating developer documentation, technical blogs, tutorials, and educational content' +name: "SE: Tech Writer" +description: "Technical writing specialist for creating developer documentation, technical blogs, tutorials, and educational content" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- diff --git a/agents/se-ux-ui-designer.agent.md b/agents/se-ux-ui-designer.agent.md index 6b144a95f..39d7d5d32 100644 --- a/agents/se-ux-ui-designer.agent.md +++ b/agents/se-ux-ui-designer.agent.md @@ -1,6 +1,6 @@ --- -name: 'SE: UX Designer' -description: 'Jobs-to-be-Done analysis, user journey mapping, and UX research artifacts for Figma and design workflows' +name: "SE: UX Designer" +description: "Jobs-to-be-Done analysis, user journey mapping, and UX research artifacts for Figma and design workflows" model: GPT-5 tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- diff --git a/agents/search-ai-optimization-expert.agent.md b/agents/search-ai-optimization-expert.agent.md index 50dd32f18..429b6a801 100644 --- a/agents/search-ai-optimization-expert.agent.md +++ b/agents/search-ai-optimization-expert.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert guidance for modern search optimization: SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO) with AI-ready content strategies' +name: "Search & AI Optimization Expert" +description: "Expert guidance for modern search optimization: SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO) with AI-ready content strategies" tools: ['codebase', 'fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] --- diff --git a/agents/semantic-kernel-dotnet.agent.md b/agents/semantic-kernel-dotnet.agent.md index 02efb99f2..8f9c3e335 100644 --- a/agents/semantic-kernel-dotnet.agent.md +++ b/agents/semantic-kernel-dotnet.agent.md @@ -1,5 +1,6 @@ --- -description: 'Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel.' +name: "Semantic Kernel .NET Mode Instructions" +description: "Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Semantic Kernel .NET mode instructions diff --git a/agents/semantic-kernel-python.agent.md b/agents/semantic-kernel-python.agent.md index 39fb04b72..5877d81f5 100644 --- a/agents/semantic-kernel-python.agent.md +++ b/agents/semantic-kernel-python.agent.md @@ -1,5 +1,6 @@ --- -description: 'Create, update, refactor, explain or work with code using the Python version of Semantic Kernel.' +name: "Semantic Kernel Python Mode Instructions" +description: "Create, update, refactor, explain or work with code using the Python version of Semantic Kernel." tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] --- # Semantic Kernel Python mode instructions diff --git a/agents/shopify-expert.agent.md b/agents/shopify-expert.agent.md index 8b5cb4f30..80539d2eb 100644 --- a/agents/shopify-expert.agent.md +++ b/agents/shopify-expert.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert Shopify development assistant specializing in theme development, Liquid templating, app development, and Shopify APIs' +name: "Shopify Expert" +description: "Expert Shopify development assistant specializing in theme development, Liquid templating, app development, and Shopify APIs" model: GPT-4.1 tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- diff --git a/agents/simple-app-idea-generator.agent.md b/agents/simple-app-idea-generator.agent.md index 970703a31..a71fb03ad 100644 --- a/agents/simple-app-idea-generator.agent.md +++ b/agents/simple-app-idea-generator.agent.md @@ -1,5 +1,6 @@ --- -description: 'Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation.' +name: "Idea Generator Mode Instructions" +description: "Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation." tools: ['changes', 'codebase', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] --- # Idea Generator mode instructions diff --git a/agents/software-engineer-agent-v1.agent.md b/agents/software-engineer-agent-v1.agent.md index 39cfe17b1..5e63479e5 100644 --- a/agents/software-engineer-agent-v1.agent.md +++ b/agents/software-engineer-agent-v1.agent.md @@ -1,5 +1,6 @@ --- -description: 'Expert-level software engineering agent. Deliver production-ready, maintainable code. Execute systematically and specification-driven. Document comprehensively. Operate autonomously and adaptively.' +name: "Software Engineer Agent V1" +description: "Expert-level software engineering agent. Deliver production-ready, maintainable code. Execute systematically and specification-driven. Document comprehensively. Operate autonomously and adaptively." tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Software Engineer Agent v1 diff --git a/agents/specification.agent.md b/agents/specification.agent.md index 8ae88d58b..4b0703f52 100644 --- a/agents/specification.agent.md +++ b/agents/specification.agent.md @@ -1,5 +1,6 @@ --- -description: 'Generate or update specification documents for new or existing functionality.' +name: "Specification Mode Instructions" +description: "Generate or update specification documents for new or existing functionality." tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Specification mode instructions diff --git a/agents/stackhawk-security-onboarding.agent.md b/agents/stackhawk-security-onboarding.agent.md index 102db8412..efc8e3072 100644 --- a/agents/stackhawk-security-onboarding.agent.md +++ b/agents/stackhawk-security-onboarding.agent.md @@ -1,6 +1,6 @@ --- -name: stackhawk-security-onboarding -description: Automatically set up StackHawk security testing for your repository with generated configuration and GitHub Actions workflow +name: "Stackhawk Security Onboarding" +description: "Automatically set up StackHawk security testing for your repository with generated configuration and GitHub Actions workflow" tools: ['read', 'edit', 'search', 'shell', 'stackhawk-mcp/*'] mcp-servers: stackhawk-mcp: diff --git a/agents/swift-mcp-expert.agent.md b/agents/swift-mcp-expert.agent.md index c14b3d426..796ddaca6 100644 --- a/agents/swift-mcp-expert.agent.md +++ b/agents/swift-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistance for building Model Context Protocol servers in Swift using modern concurrency features and the official MCP Swift SDK." name: "Swift MCP Expert" +description: "Expert assistance for building Model Context Protocol servers in Swift using modern concurrency features and the official MCP Swift SDK." model: GPT-4.1 --- diff --git a/agents/task-planner.agent.md b/agents/task-planner.agent.md index e9a0cb66f..7cb51bbff 100644 --- a/agents/task-planner.agent.md +++ b/agents/task-planner.agent.md @@ -1,6 +1,6 @@ --- -description: "Task planner for creating actionable implementation plans - Brought to you by microsoft/edge-ai" name: "Task Planner Instructions" +description: "Task planner for creating actionable implementation plans - Brought to you by microsoft/edge-ai" tools: ["changes", "search/codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTests", "search", "search/searchResults", "runCommands/terminalLastCommand", "runCommands/terminalSelection", "testFailure", "usages", "vscodeAPI", "terraform", "Microsoft Docs", "azure_get_schema_for_Bicep", "context7"] --- diff --git a/agents/task-researcher.agent.md b/agents/task-researcher.agent.md index 5a60f3aac..f2dcdbd82 100644 --- a/agents/task-researcher.agent.md +++ b/agents/task-researcher.agent.md @@ -1,6 +1,6 @@ --- -description: "Task research specialist for comprehensive project analysis - Brought to you by microsoft/edge-ai" name: "Task Researcher Instructions" +description: "Task research specialist for comprehensive project analysis - Brought to you by microsoft/edge-ai" tools: ["changes", "codebase", "edit/editFiles", "extensions", "fetch", "findTestFiles", "githubRepo", "new", "openSimpleBrowser", "problems", "runCommands", "runNotebooks", "runTests", "search", "searchResults", "terminalLastCommand", "terminalSelection", "testFailure", "usages", "vscodeAPI", "terraform", "Microsoft Docs", "azure_get_schema_for_Bicep", "context7"] --- diff --git a/agents/tdd-green.agent.md b/agents/tdd-green.agent.md index 50971427f..8c837c731 100644 --- a/agents/tdd-green.agent.md +++ b/agents/tdd-green.agent.md @@ -1,6 +1,6 @@ --- -description: 'Implement minimal code to satisfy GitHub issue requirements and make failing tests pass without over-engineering.' -name: 'TDD Green Phase - Make Tests Pass Quickly' +name: "TDD Green Phase Make Tests Pass Quickly" +description: "Implement minimal code to satisfy GitHub issue requirements and make failing tests pass without over-engineering." tools: ['github', 'findTestFiles', 'edit/editFiles', 'runTests', 'runCommands', 'codebase', 'filesystem', 'search', 'problems', 'testFailure', 'terminalLastCommand'] --- # TDD Green Phase - Make Tests Pass Quickly diff --git a/agents/tdd-red.agent.md b/agents/tdd-red.agent.md index 6f1688ad1..9339ad265 100644 --- a/agents/tdd-red.agent.md +++ b/agents/tdd-red.agent.md @@ -1,6 +1,6 @@ --- +name: "TDD Red Phase Write Failing Tests First" description: "Guide test-first development by writing failing tests that describe desired behaviour from GitHub issue context before implementation exists." -name: "TDD Red Phase - Write Failing Tests First" tools: ["github", "findTestFiles", "edit/editFiles", "runTests", "runCommands", "codebase", "filesystem", "search", "problems", "testFailure", "terminalLastCommand"] --- diff --git a/agents/tdd-refactor.agent.md b/agents/tdd-refactor.agent.md index b6e897460..022885971 100644 --- a/agents/tdd-refactor.agent.md +++ b/agents/tdd-refactor.agent.md @@ -1,6 +1,6 @@ --- +name: "TDD Refactor Phase Improve Quality & Security" description: "Improve code quality, apply security best practices, and enhance design whilst maintaining green tests and GitHub issue compliance." -name: "TDD Refactor Phase - Improve Quality & Security" tools: ["github", "findTestFiles", "edit/editFiles", "runTests", "runCommands", "codebase", "filesystem", "search", "problems", "testFailure", "terminalLastCommand"] --- diff --git a/agents/tech-debt-remediation-plan.agent.md b/agents/tech-debt-remediation-plan.agent.md index 5e96c3c21..1a54e47cc 100644 --- a/agents/tech-debt-remediation-plan.agent.md +++ b/agents/tech-debt-remediation-plan.agent.md @@ -1,5 +1,6 @@ --- -description: 'Generate technical debt remediation plans for code, tests, and documentation.' +name: "Technical Debt Remediation Plan" +description: "Generate technical debt remediation plans for code, tests, and documentation." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Technical Debt Remediation Plan diff --git a/agents/technical-content-evaluator.agent.md b/agents/technical-content-evaluator.agent.md index a3bad60f6..33fd4a295 100644 --- a/agents/technical-content-evaluator.agent.md +++ b/agents/technical-content-evaluator.agent.md @@ -1,6 +1,6 @@ --- -name: technical-content-evaluator -description: 'Elite technical content editor and curriculum architect for evaluating technical training materials, documentation, and educational content. Reviews for technical accuracy, pedagogical excellence, content flow, code validation, and ensures A-grade quality standards.' +name: "Technical Content Evaluator" +description: "Elite technical content editor and curriculum architect for evaluating technical training materials, documentation, and educational content. Reviews for technical accuracy, pedagogical excellence, content flow, code validation, and ensures A-grade quality standards." tools: ['edit', 'search', 'shell', 'fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] model: Claude Sonnet 4.5 (copilot) --- diff --git a/agents/terraform-azure-implement.agent.md b/agents/terraform-azure-implement.agent.md index dc11366e0..fcff55203 100644 --- a/agents/terraform-azure-implement.agent.md +++ b/agents/terraform-azure-implement.agent.md @@ -1,6 +1,6 @@ --- -description: "Act as an Azure Terraform Infrastructure as Code coding specialist that creates and reviews Terraform for Azure resources." name: "Azure Terraform IaC Implementation Specialist" +description: "Act as an Azure Terraform Infrastructure as Code coding specialist that creates and reviews Terraform for Azure resources." tools: ["edit/editFiles", "search", "runCommands", "fetch", "todos", "azureterraformbestpractices", "documentation", "get_bestpractices", "microsoft-docs"] --- diff --git a/agents/terraform-azure-planning.agent.md b/agents/terraform-azure-planning.agent.md index a89ce6f4d..ab60df1d8 100644 --- a/agents/terraform-azure-planning.agent.md +++ b/agents/terraform-azure-planning.agent.md @@ -1,6 +1,6 @@ --- -description: "Act as implementation planner for your Azure Terraform Infrastructure as Code task." name: "Azure Terraform Infrastructure Planning" +description: "Act as implementation planner for your Azure Terraform Infrastructure as Code task." tools: ["edit/editFiles", "fetch", "todos", "azureterraformbestpractices", "cloudarchitect", "documentation", "get_bestpractices", "microsoft-docs"] --- diff --git a/agents/terraform-iac-reviewer.agent.md b/agents/terraform-iac-reviewer.agent.md index 738e12e25..8fa1f0f09 100644 --- a/agents/terraform-iac-reviewer.agent.md +++ b/agents/terraform-iac-reviewer.agent.md @@ -1,6 +1,6 @@ --- -name: 'Terraform IaC Reviewer' -description: 'Terraform-focused agent that reviews and creates safer IaC changes with emphasis on state safety, least privilege, module patterns, drift detection, and plan/apply discipline' +name: "Terraform IaC Reviewer" +description: "Terraform-focused agent that reviews and creates safer IaC changes with emphasis on state safety, least privilege, module patterns, drift detection, and plan/apply discipline" tools: ['codebase', 'edit/editFiles', 'terminalCommand', 'search', 'githubRepo'] --- diff --git a/agents/terraform.agent.md b/agents/terraform.agent.md index e9732f6b3..e80461b06 100644 --- a/agents/terraform.agent.md +++ b/agents/terraform.agent.md @@ -1,5 +1,5 @@ --- -name: Terraform Agent +name: "Terraform Agent" description: "Terraform infrastructure specialist with automated HCP Terraform workflows. Leverages Terraform MCP server for registry integration, workspace management, and run orchestration. Generates compliant code using latest provider/module versions, manages private registries, automates variable sets, and orchestrates infrastructure deployments with proper validation and security practices." tools: ['read', 'edit', 'search', 'shell', 'terraform/*'] mcp-servers: diff --git a/agents/typescript-mcp-expert.agent.md b/agents/typescript-mcp-expert.agent.md index 13ee18b15..62119ac98 100644 --- a/agents/typescript-mcp-expert.agent.md +++ b/agents/typescript-mcp-expert.agent.md @@ -1,6 +1,6 @@ --- -description: "Expert assistant for developing Model Context Protocol (MCP) servers in TypeScript" name: "TypeScript MCP Server Expert" +description: "Expert assistant for developing Model Context Protocol (MCP) servers in TypeScript" model: GPT-4.1 --- diff --git a/agents/voidbeast-gpt41enhanced.agent.md b/agents/voidbeast-gpt41enhanced.agent.md index 0a633efc4..ae3ec69e7 100644 --- a/agents/voidbeast-gpt41enhanced.agent.md +++ b/agents/voidbeast-gpt41enhanced.agent.md @@ -1,5 +1,6 @@ --- -description: '4.1 voidBeast_GPT41Enhanced 1.0 : a advanced autonomous developer agent, designed for elite full-stack development with enhanced multi-mode capabilities. This latest evolution features sophisticated mode detection, comprehensive research capabilities, and never-ending problem resolution. Plan/Act/Deep Research/Analyzer/Checkpoints(Memory)/Prompt Generator Modes.' +name: "VoidBeast GPT41Enhanced 1.0 Elite Developer AI Assistant" +description: "4.1 voidBeast_GPT41Enhanced 1.0 : a advanced autonomous developer agent, designed for elite full-stack development with enhanced multi-mode capabilities. This latest evolution features sophisticated mode detection, comprehensive research capabilities, and never-ending problem resolution. Plan/Act/Deep Research/Analyzer/Checkpoints(Memory)/Prompt Generator Modes." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] --- diff --git a/agents/wg-code-alchemist.agent.md b/agents/wg-code-alchemist.agent.md index a41eeb0a1..6e6388443 100644 --- a/agents/wg-code-alchemist.agent.md +++ b/agents/wg-code-alchemist.agent.md @@ -1,5 +1,6 @@ --- -description: 'Ask WG Code Alchemist to transform your code with Clean Code principles and SOLID design' +name: "Wg Code Alchemist" +description: "Ask WG Code Alchemist to transform your code with Clean Code principles and SOLID design" tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- diff --git a/agents/wg-code-sentinel.agent.md b/agents/wg-code-sentinel.agent.md index adafd2af0..46e4a799c 100644 --- a/agents/wg-code-sentinel.agent.md +++ b/agents/wg-code-sentinel.agent.md @@ -1,5 +1,6 @@ --- -description: 'Ask WG Code Sentinel to review your code for security issues.' +name: "Wg Code Sentinel" +description: "Ask WG Code Sentinel to review your code for security issues." tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- From c63e448465d48a96282bbb9437b2fc5da9247955 Mon Sep 17 00:00:00 2001 From: "Tom Meschter (from Dev Box)" Date: Fri, 19 Dec 2025 11:01:51 -0800 Subject: [PATCH 14/43] Add azure-resource-visualizer skill This change adds a skill that can analyze the resources within an Azure resource group, determine the relationships between them, and then generate a Markdown file containing the relevant details. The Markdown file includes a Mermaid diagram showing the relationships. --- docs/README.skills.md | 1 + skills/azure-resource-visualizer/LICENSE.txt | 21 ++ skills/azure-resource-visualizer/SKILL.md | 233 ++++++++++++++++++ .../assets/template-architecture.md | 41 +++ 4 files changed, 296 insertions(+) create mode 100644 skills/azure-resource-visualizer/LICENSE.txt create mode 100644 skills/azure-resource-visualizer/SKILL.md create mode 100644 skills/azure-resource-visualizer/assets/template-architecture.md diff --git a/docs/README.skills.md b/docs/README.skills.md index 6d91c7a48..b4f8e8c04 100644 --- a/docs/README.skills.md +++ b/docs/README.skills.md @@ -23,6 +23,7 @@ Skills differ from other primitives by supporting bundled assets (scripts, code | Name | Description | Bundled Assets | | ---- | ----------- | -------------- | | [appinsights-instrumentation](../skills/appinsights-instrumentation/SKILL.md) | Instrument a webapp to send useful telemetry data to Azure App Insights | `LICENSE.txt`
`examples/appinsights.bicep`
`references/ASPNETCORE.md`
`references/AUTO.md`
`references/NODEJS.md`
`references/PYTHON.md`
`scripts/appinsights.ps1` | +| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt` | | [azure-role-selector](../skills/azure-role-selector/SKILL.md) | When user is asking for guidance for which role to assign to an identity given desired permissions, this agent helps them understand the role that will meet the requirements with least privilege access and how to apply that role. | `LICENSE.txt` | | [github-issues](../skills/github-issues/SKILL.md) | Create, update, and manage GitHub issues using MCP tools. Use this skill when users want to create bug reports, feature requests, or task issues, update existing issues, add labels/assignees/milestones, or manage issue workflows. Triggers on requests like "create an issue", "file a bug", "request a feature", "update issue X", or any GitHub issue management task. | `references/templates.md` | | [nuget-manager](../skills/nuget-manager/SKILL.md) | Manage NuGet packages in .NET projects/solutions. Use this skill when adding, removing, or updating NuGet package versions. It enforces using `dotnet` CLI for package management and provides strict procedures for direct file edits only when updating versions. | None | diff --git a/skills/azure-resource-visualizer/LICENSE.txt b/skills/azure-resource-visualizer/LICENSE.txt new file mode 100644 index 000000000..8dfb11f8b --- /dev/null +++ b/skills/azure-resource-visualizer/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright 2025 (c) Microsoft Corporation. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE diff --git a/skills/azure-resource-visualizer/SKILL.md b/skills/azure-resource-visualizer/SKILL.md new file mode 100644 index 000000000..2574dd4d7 --- /dev/null +++ b/skills/azure-resource-visualizer/SKILL.md @@ -0,0 +1,233 @@ +--- +name: azure-resource-visualizer +description: Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. +license: Complete terms in LICENSE.txt +metadata: + author: Tom Meschter (tom.meschter@microsoft.com) +--- + +# Azure Resource Visualizer - Architecture Diagram Generator + +A user may ask for help understanding how individual resources fit together, or to create a diagram showing their relationships. Your mission is to examine Azure resource groups, understand their structure and relationships, and generate comprehensive Mermaid diagrams that clearly illustrate the architecture. + +## Core Responsibilities + +1. **Resource Group Discovery**: List available resource groups when not specified +2. **Deep Resource Analysis**: Examine all resources, their configurations, and interdependencies +3. **Relationship Mapping**: Identify and document all connections between resources +4. **Diagram Generation**: Create detailed, accurate Mermaid diagrams +5. **Documentation Creation**: Produce clear markdown files with embedded diagrams + +## Workflow Process + +### Step 1: Resource Group Selection + +If the user hasn't specified a resource group: + +1. Use your tools to query available resource groups. If you do not have a tool for this, use `az`. +2. Present a numbered list of resource groups with their locations +3. Ask the user to select one by number or name +4. Wait for user response before proceeding + +If a resource group is specified, validate it exists and proceed. + +### Step 2: Resource Discovery & Analysis + +Once you have the resource group: + +1. **Query all resources** in the resource group using Azure MCP tools or `az`. +2. **Analyze each resource** type and capture: + - Resource name and type + - SKU/tier information + - Location/region + - Key configuration properties + - Network settings (VNets, subnets, private endpoints) + - Identity and access (Managed Identity, RBAC) + - Dependencies and connections + +3. **Map relationships** by identifying: + - **Network connections**: VNet peering, subnet assignments, NSG rules, private endpoints + - **Data flow**: Apps → Databases, Functions → Storage, API Management → Backends + - **Identity**: Managed identities connecting to resources + - **Configuration**: App Settings pointing to Key Vaults, connection strings + - **Dependencies**: Parent-child relationships, required resources + +### Step 3: Diagram Construction + +Create a **detailed Mermaid diagram** using the `graph TB` (top-to-bottom) or `graph LR` (left-to-right) format: + +**Diagram Structure Guidelines:** + +```mermaid +graph TB + %% Use subgraphs to group related resources + subgraph "Resource Group: [name]" + subgraph "Network Layer" + VNET[Virtual Network
10.0.0.0/16] + SUBNET1[Subnet: web
10.0.1.0/24] + SUBNET2[Subnet: data
10.0.2.0/24] + NSG[Network Security Group] + end + + subgraph "Compute Layer" + APP[App Service
Plan: P1v2] + FUNC[Function App
Runtime: .NET 8] + end + + subgraph "Data Layer" + SQL[Azure SQL Database
DTU: S1] + STORAGE[Storage Account
Type: Standard LRS] + end + + subgraph "Security & Identity" + KV[Key Vault] + MI[Managed Identity] + end + end + + %% Define relationships with descriptive labels + APP -->|"HTTPS requests"| FUNC + FUNC -->|"SQL connection"| SQL + FUNC -->|"Blob/Queue access"| STORAGE + APP -->|"Uses identity"| MI + MI -->|"Access secrets"| KV + VNET --> SUBNET1 + VNET --> SUBNET2 + SUBNET1 --> APP + SUBNET2 --> SQL + NSG -->|"Rules applied to"| SUBNET1 +``` + +**Key Diagram Requirements:** + +- **Group by layer or purpose**: Network, Compute, Data, Security, Monitoring +- **Include details**: SKUs, tiers, important settings in node labels (use `
` for line breaks) +- **Label all connections**: Describe what flows between resources (data, identity, network) +- **Use meaningful node IDs**: Abbreviations that make sense (APP, FUNC, SQL, KV) +- **Visual hierarchy**: Subgraphs for logical grouping +- **Connection types**: + - `-->` for data flow or dependencies + - `-.->` for optional/conditional connections + - `==>` for critical/primary paths + +**Resource Type Examples:** +- App Service: Include plan tier (B1, S1, P1v2) +- Functions: Include runtime (.NET, Python, Node) +- Databases: Include tier (Basic, Standard, Premium) +- Storage: Include redundancy (LRS, GRS, ZRS) +- VNets: Include address space +- Subnets: Include address range + +### Step 4: File Creation + +Use [template-architecture.md](./assets/template-architecture.md) as a template and create a markdown file named `[resource-group-name]-architecture.md` with: + +1. **Header**: Resource group name, subscription, region +2. **Summary**: Brief overview of the architecture (2-3 paragraphs) +3. **Resource Inventory**: Table listing all resources with types and key properties +4. **Architecture Diagram**: The complete Mermaid diagram +5. **Relationship Details**: Explanation of key connections and data flows +6. **Notes**: Any important observations, potential issues, or recommendations + +## Operating Guidelines + +### Quality Standards + +- **Accuracy**: Verify all resource details before including in diagram +- **Completeness**: Don't omit resources; include everything in the resource group +- **Clarity**: Use clear, descriptive labels and logical grouping +- **Detail Level**: Include configuration details that matter for architecture understanding +- **Relationships**: Show ALL significant connections, not just obvious ones + +### Tool Usage Patterns + +1. **Azure MCP Search**: + - Use `intent="list resource groups"` to discover resource groups + - Use `intent="list resources in group"` with group name to get all resources + - Use `intent="get resource details"` for individual resource analysis + - Use `command` parameter when you need specific Azure operations + +2. **File Creation**: + - Always create in workspace root or a `docs/` folder if it exists + - Use clear, descriptive filenames: `[rg-name]-architecture.md` + - Ensure Mermaid syntax is valid (test syntax mentally before output) + +3. **Terminal (when needed)**: + - Use Azure CLI for complex queries not available via MCP + - Example: `az resource list --resource-group --output json` + - Example: `az network vnet show --resource-group --name ` + +### Constraints & Boundaries + +**Always Do:** +- ✅ List resource groups if not specified +- ✅ Wait for user selection before proceeding +- ✅ Analyze ALL resources in the group +- ✅ Create detailed, accurate diagrams +- ✅ Include configuration details in node labels +- ✅ Group resources logically with subgraphs +- ✅ Label all connections descriptively +- ✅ Create a complete markdown file with diagram + +**Never Do:** +- ❌ Skip resources because they seem unimportant +- ❌ Make assumptions about resource relationships without verification +- ❌ Create incomplete or placeholder diagrams +- ❌ Omit configuration details that affect architecture +- ❌ Proceed without confirming resource group selection +- ❌ Generate invalid Mermaid syntax +- ❌ Modify or delete Azure resources (read-only analysis) + +### Edge Cases & Error Handling + +- **No resources found**: Inform user and verify resource group name +- **Permission issues**: Explain what's missing and suggest checking RBAC +- **Complex architectures (50+ resources)**: Consider creating multiple diagrams by layer +- **Cross-resource-group dependencies**: Note external dependencies in diagram notes +- **Resources without clear relationships**: Group in "Other Resources" section + +## Output Format Specifications + +### Mermaid Diagram Syntax +- Use `graph TB` (top-to-bottom) for vertical layouts +- Use `graph LR` (left-to-right) for horizontal layouts (better for wide architectures) +- Subgraph syntax: `subgraph "Descriptive Name"` +- Node syntax: `ID["Display Name
Details"]` +- Connection syntax: `SOURCE -->|"Label"| TARGET` + +### Markdown Structure +- Use H1 for main title +- Use H2 for major sections +- Use H3 for subsections +- Use tables for resource inventories +- Use bullet lists for notes and recommendations +- Use code blocks with `mermaid` language tag for diagrams + +## Example Interaction + +**User**: "Analyze my production resource group" + +**Agent**: +1. Lists all resource groups in subscription +2. Asks user to select: "Which resource group? 1) rg-prod-app, 2) rg-dev-app, 3) rg-shared" +3. User selects: "1" +4. Queries all resources in rg-prod-app +5. Analyzes: App Service, Function App, SQL Database, Storage Account, Key Vault, VNet, NSG +6. Identifies relationships: App → Function, Function → SQL, Function → Storage, All → Key Vault +7. Creates detailed Mermaid diagram with subgraphs +8. Generates `rg-prod-app-architecture.md` with complete documentation +9. Displays: "Created architecture diagram in rg-prod-app-architecture.md. Found 7 resources with 8 key relationships." + +## Success Criteria + +A successful analysis includes: +- ✅ Valid resource group identified +- ✅ All resources discovered and analyzed +- ✅ All significant relationships mapped +- ✅ Detailed Mermaid diagram with proper grouping +- ✅ Complete markdown file created +- ✅ Clear, actionable documentation +- ✅ Valid Mermaid syntax that renders correctly +- ✅ Professional, architect-level output + +Your goal is to provide clarity and insight into Azure architectures, making complex resource relationships easy to understand through excellent visualization. diff --git a/skills/azure-resource-visualizer/assets/template-architecture.md b/skills/azure-resource-visualizer/assets/template-architecture.md new file mode 100644 index 000000000..574e5eb38 --- /dev/null +++ b/skills/azure-resource-visualizer/assets/template-architecture.md @@ -0,0 +1,41 @@ +# Azure Architecture: [Resource Group Name] + +**Subscription**: [subscription-name] +**Region**: [primary-region] +**Resource Count**: [count] +**Generated**: [date] + +## Overview + +[2-3 paragraph summary of the architecture, its purpose, and key components] + +## Resource Inventory + +| Resource Name | Type | Tier/SKU | Location | Notes | +|--------------|------|----------|----------|-------| +| app-prod-001 | App Service | P1v2 | East US | Production web app | +| func-prod-001 | Function App | Y1 | East US | Consumption plan | + +## Architecture Diagram + +```mermaid +[full diagram here] +``` + +## Relationship Details + +### Network Architecture +[Describe VNets, subnets, network security] + +### Data Flow +[Describe how data moves between components] + +### Identity & Access +[Describe managed identities, key vault access, RBAC] + +### Dependencies +[Describe critical dependencies and their order] + +## Notes & Recommendations + +[Any observations, potential issues, or suggestions] From 02a64f6e2e99f68a8523dd84ebe5d004b8058f4b Mon Sep 17 00:00:00 2001 From: "Tom Meschter (from Dev Box)" Date: Fri, 19 Dec 2025 11:51:19 -0800 Subject: [PATCH 15/43] Update README.skills.md --- docs/README.skills.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.skills.md b/docs/README.skills.md index b4f8e8c04..8d8d32310 100644 --- a/docs/README.skills.md +++ b/docs/README.skills.md @@ -23,7 +23,7 @@ Skills differ from other primitives by supporting bundled assets (scripts, code | Name | Description | Bundled Assets | | ---- | ----------- | -------------- | | [appinsights-instrumentation](../skills/appinsights-instrumentation/SKILL.md) | Instrument a webapp to send useful telemetry data to Azure App Insights | `LICENSE.txt`
`examples/appinsights.bicep`
`references/ASPNETCORE.md`
`references/AUTO.md`
`references/NODEJS.md`
`references/PYTHON.md`
`scripts/appinsights.ps1` | -| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt` | +| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt`, `template-architecture.md` | | [azure-role-selector](../skills/azure-role-selector/SKILL.md) | When user is asking for guidance for which role to assign to an identity given desired permissions, this agent helps them understand the role that will meet the requirements with least privilege access and how to apply that role. | `LICENSE.txt` | | [github-issues](../skills/github-issues/SKILL.md) | Create, update, and manage GitHub issues using MCP tools. Use this skill when users want to create bug reports, feature requests, or task issues, update existing issues, add labels/assignees/milestones, or manage issue workflows. Triggers on requests like "create an issue", "file a bug", "request a feature", "update issue X", or any GitHub issue management task. | `references/templates.md` | | [nuget-manager](../skills/nuget-manager/SKILL.md) | Manage NuGet packages in .NET projects/solutions. Use this skill when adding, removing, or updating NuGet package versions. It enforces using `dotnet` CLI for package management and provides strict procedures for direct file edits only when updating versions. | None | From 448fe7db602eed5e38db84507c81cabb1c718cc2 Mon Sep 17 00:00:00 2001 From: "Tom Meschter (from Dev Box)" Date: Fri, 19 Dec 2025 13:05:41 -0800 Subject: [PATCH 16/43] Update README.skills.md Update README.skills.md to include all the assets in azure-resource-visualizer. --- docs/README.skills.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.skills.md b/docs/README.skills.md index 8d8d32310..271df1fa9 100644 --- a/docs/README.skills.md +++ b/docs/README.skills.md @@ -23,7 +23,7 @@ Skills differ from other primitives by supporting bundled assets (scripts, code | Name | Description | Bundled Assets | | ---- | ----------- | -------------- | | [appinsights-instrumentation](../skills/appinsights-instrumentation/SKILL.md) | Instrument a webapp to send useful telemetry data to Azure App Insights | `LICENSE.txt`
`examples/appinsights.bicep`
`references/ASPNETCORE.md`
`references/AUTO.md`
`references/NODEJS.md`
`references/PYTHON.md`
`scripts/appinsights.ps1` | -| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt`, `template-architecture.md` | +| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt`
`assets\template-architecture.md` | | [azure-role-selector](../skills/azure-role-selector/SKILL.md) | When user is asking for guidance for which role to assign to an identity given desired permissions, this agent helps them understand the role that will meet the requirements with least privilege access and how to apply that role. | `LICENSE.txt` | | [github-issues](../skills/github-issues/SKILL.md) | Create, update, and manage GitHub issues using MCP tools. Use this skill when users want to create bug reports, feature requests, or task issues, update existing issues, add labels/assignees/milestones, or manage issue workflows. Triggers on requests like "create an issue", "file a bug", "request a feature", "update issue X", or any GitHub issue management task. | `references/templates.md` | | [nuget-manager](../skills/nuget-manager/SKILL.md) | Manage NuGet packages in .NET projects/solutions. Use this skill when adding, removing, or updating NuGet package versions. It enforces using `dotnet` CLI for package management and provides strict procedures for direct file edits only when updating versions. | None | From 9ab127ab6d6e2e2f8224158d1182f068ebbbd1c6 Mon Sep 17 00:00:00 2001 From: "Tom Meschter (from Dev Box)" Date: Mon, 5 Jan 2026 10:39:43 -0800 Subject: [PATCH 17/43] Update generated README with normalized path separators --- docs/README.skills.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README.skills.md b/docs/README.skills.md index 271df1fa9..b83420f11 100644 --- a/docs/README.skills.md +++ b/docs/README.skills.md @@ -23,7 +23,7 @@ Skills differ from other primitives by supporting bundled assets (scripts, code | Name | Description | Bundled Assets | | ---- | ----------- | -------------- | | [appinsights-instrumentation](../skills/appinsights-instrumentation/SKILL.md) | Instrument a webapp to send useful telemetry data to Azure App Insights | `LICENSE.txt`
`examples/appinsights.bicep`
`references/ASPNETCORE.md`
`references/AUTO.md`
`references/NODEJS.md`
`references/PYTHON.md`
`scripts/appinsights.ps1` | -| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt`
`assets\template-architecture.md` | +| [azure-resource-visualizer](../skills/azure-resource-visualizer/SKILL.md) | Analyze Azure resource groups and generate detailed Mermaid architecture diagrams showing the relationships between individual resources. Use this skill when the user asks for a diagram of their Azure resources or help in understanding how the resources relate to each other. | `LICENSE.txt`
`assets/template-architecture.md` | | [azure-role-selector](../skills/azure-role-selector/SKILL.md) | When user is asking for guidance for which role to assign to an identity given desired permissions, this agent helps them understand the role that will meet the requirements with least privilege access and how to apply that role. | `LICENSE.txt` | | [github-issues](../skills/github-issues/SKILL.md) | Create, update, and manage GitHub issues using MCP tools. Use this skill when users want to create bug reports, feature requests, or task issues, update existing issues, add labels/assignees/milestones, or manage issue workflows. Triggers on requests like "create an issue", "file a bug", "request a feature", "update issue X", or any GitHub issue management task. | `references/templates.md` | | [nuget-manager](../skills/nuget-manager/SKILL.md) | Manage NuGet packages in .NET projects/solutions. Use this skill when adding, removing, or updating NuGet package versions. It enforces using `dotnet` CLI for package management and provides strict procedures for direct file edits only when updating versions. | None | From a1dbed1492cd8a3cf5561d70336d39d9810cd4ba Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 15:16:12 -0300 Subject: [PATCH 18/43] =?UTF-8?q?UPDATE:=20Corrigir=20formata=C3=A7=C3=A3o?= =?UTF-8?q?=20no=20arquivo=20de=20desenvolvimento=20frontend?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- collections/frontend-web-dev.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/collections/frontend-web-dev.md b/collections/frontend-web-dev.md index bedfe98ec..849391de1 100644 --- a/collections/frontend-web-dev.md +++ b/collections/frontend-web-dev.md @@ -21,4 +21,4 @@ Essential prompts, instructions, and chat modes for modern frontend web developm | [Website Exploration for Testing](../prompts/playwright-explore-website.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-explore-website.prompt.md) | Prompt | Website exploration for testing using Playwright MCP | | --- -*This collection includes 11 curated items for **Frontend Web Development**.* +*This collection includes 11 curated items for **Frontend Web Development**.* \ No newline at end of file From 98511445401bb21cd0fbc6186a0ea28908d24ec7 Mon Sep 17 00:00:00 2001 From: Emerson Delatorre <38289677+fazedordecodigo@users.noreply.github.com> Date: Mon, 12 Jan 2026 15:20:36 -0300 Subject: [PATCH 19/43] =?UTF-8?q?UPDATE:=20Corrigir=20a=20aplica=C3=A7?= =?UTF-8?q?=C3=A3o=20das=20melhores=20pr=C3=A1ticas=20do=20Next.js=20para?= =?UTF-8?q?=20incluir=20extens=C3=B5es=20espec=C3=ADficas=20de=20arquivos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- instructions/nextjs.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instructions/nextjs.instructions.md b/instructions/nextjs.instructions.md index 16bf8c951..300dd58d7 100644 --- a/instructions/nextjs.instructions.md +++ b/instructions/nextjs.instructions.md @@ -1,6 +1,6 @@ --- description: "Best practices for building Next.js (App Router) apps with modern caching, tooling, and server/client boundaries (aligned with Next.js 16.1.1)." -applyTo: "**" +applyTo: '**/*.tsx, **/*.ts, **/*.jsx, **/*.js, **/*.css' --- # Next.js Best Practices for LLMs (2026) From b703c76d09b8deeac51b7f632e6179f3832ec9fa Mon Sep 17 00:00:00 2001 From: Mads Kristensen Date: Mon, 12 Jan 2026 10:30:32 -0800 Subject: [PATCH 20/43] Update instructions with .editorconfig and .NET constraints Added guidelines for adhering to .editorconfig and .NET Framework constraints. --- instructions/vsixtoolkit.instructions.md | 45 ++++++++++++++++++++++-- 1 file changed, 43 insertions(+), 2 deletions(-) diff --git a/instructions/vsixtoolkit.instructions.md b/instructions/vsixtoolkit.instructions.md index 4db23c02f..c445b242d 100644 --- a/instructions/vsixtoolkit.instructions.md +++ b/instructions/vsixtoolkit.instructions.md @@ -23,6 +23,47 @@ Verify the project uses the toolkit by checking for: - Ensure all UI respects Visual Studio themes - Follow VSSDK and VSTHRD analyzer rules - Produce testable, maintainable extension code +- **Adhere to `.editorconfig` settings** when present in the repository + +## Code Style (.editorconfig) + +**If an `.editorconfig` file exists in the repository, all generated and modified code MUST follow its rules.** + +This includes but is not limited to: +- Indentation style (tabs vs spaces) and size +- Line endings and final newline requirements +- Naming conventions (fields, properties, methods, etc.) +- Code style preferences (`var` usage, expression bodies, braces, etc.) +- Analyzer severity levels and suppressions + +Before generating code, check for `.editorconfig` in the repository root and apply its settings. When in doubt, match the style of surrounding code in the file being edited. + +## .NET Framework and C# Language Constraints + +**Visual Studio extensions target .NET Framework 4.8** but can use modern C# syntax (up to C# 14) with constraints imposed by the .NET Framework runtime. + +### ✅ Supported Modern C# Features +- Primary constructors +- File-scoped namespaces +- Global usings +- Pattern matching (all forms) +- Records (with limitations) +- `init` accessors +- Target-typed `new` +- Nullable reference types (annotations only) +- Raw string literals +- Collection expressions + +### ❌ Not Supported (.NET Framework Limitations) +- `Span`, `ReadOnlySpan`, `Memory` (no runtime support) +- `IAsyncEnumerable` (without polyfill packages) +- Default interface implementations +- `Index` and `Range` types (no runtime support for `^` and `..` operators) +- `init`-only setters on structs (runtime limitation) +- Some `System.Text.Json` features + +### Best Practice +When writing code, prefer APIs available in .NET Framework 4.8. If a modern API is needed, check if a polyfill NuGet package exists (e.g., `Microsoft.Bcl.AsyncInterfaces` for `IAsyncEnumerable`). ## Example Prompt Behaviors @@ -269,7 +310,7 @@ The toolkit provides automatic theming for WPF UserControls: For dialog windows, use `DialogWindow`: ```xml - Date: Mon, 12 Jan 2026 10:39:17 -0800 Subject: [PATCH 21/43] Update instructions/vsixtoolkit.instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- instructions/vsixtoolkit.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instructions/vsixtoolkit.instructions.md b/instructions/vsixtoolkit.instructions.md index c445b242d..1ede16d83 100644 --- a/instructions/vsixtoolkit.instructions.md +++ b/instructions/vsixtoolkit.instructions.md @@ -382,7 +382,7 @@ VS.Events.DocumentEvents.Saved += OnDocumentSaved; // Read settings synchronously var value = General.Instance.MyOption; -// Read settings asynchronously +// Read settings asynchronously var general = await General.GetLiveInstanceAsync(); var value = general.MyOption; From a0cf303bda9fba46109550eb6ef6b8dd0469404d Mon Sep 17 00:00:00 2001 From: Mads Kristensen Date: Mon, 12 Jan 2026 10:40:15 -0800 Subject: [PATCH 22/43] Update instructions/vsixtoolkit.instructions.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- instructions/vsixtoolkit.instructions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/instructions/vsixtoolkit.instructions.md b/instructions/vsixtoolkit.instructions.md index 1ede16d83..3837d95e3 100644 --- a/instructions/vsixtoolkit.instructions.md +++ b/instructions/vsixtoolkit.instructions.md @@ -310,7 +310,7 @@ The toolkit provides automatic theming for WPF UserControls: For dialog windows, use `DialogWindow`: ```xml - Date: Mon, 12 Jan 2026 14:00:22 -0500 Subject: [PATCH 23/43] fetch -> web/fetch for everything --- agents/accessibility.agent.md | 2 +- agents/aem-frontend-specialist.agent.md | 2 +- agents/bicep-implement.agent.md | 2 +- agents/bicep-plan.agent.md | 2 +- agents/critical-thinking.agent.md | 2 +- agents/csharp-dotnet-janitor.agent.md | 2 +- agents/custom-agent-foundry.agent.md | 2 +- agents/demonstrate-understanding.agent.md | 2 +- agents/dotnet-upgrade.agent.md | 4 +- agents/drupal-expert.agent.md | 74 +++++------ agents/expert-cpp-software-engineer.agent.md | 2 +- agents/gilfoyle.agent.md | 2 +- agents/hlbpa.agent.md | 2 +- agents/laravel-expert-agent.agent.md | 2 +- agents/mentor.agent.md | 2 +- agents/pimcore-expert.agent.md | 46 +++---- agents/principal-software-engineer.agent.md | 2 +- agents/prompt-builder.agent.md | 2 +- .../se-system-architecture-reviewer.agent.md | 2 +- agents/se-technical-writer.agent.md | 2 +- agents/se-ux-ui-designer.agent.md | 2 +- agents/search-ai-optimization-expert.agent.md | 2 +- agents/semantic-kernel-dotnet.agent.md | 2 +- agents/semantic-kernel-python.agent.md | 2 +- agents/shopify-expert.agent.md | 20 +-- agents/simple-app-idea-generator.agent.md | 2 +- agents/software-engineer-agent-v1.agent.md | 2 +- agents/specification.agent.md | 2 +- agents/tech-debt-remediation-plan.agent.md | 2 +- agents/technical-content-evaluator.agent.md | 2 +- agents/voidbeast-gpt41enhanced.agent.md | 8 +- agents/wg-code-alchemist.agent.md | 2 +- agents/wg-code-sentinel.agent.md | 2 +- prompts/add-educational-comments.prompt.md | 6 +- ...architecture-blueprint-generator.prompt.md | 22 ++-- prompts/convert-plaintext-to-md.prompt.md | 10 +- prompts/cosmosdb-datamodeling.prompt.md | 72 +++++------ ...te-architectural-decision-record.prompt.md | 2 +- ...ub-action-workflow-specification.prompt.md | 8 +- prompts/create-implementation-plan.prompt.md | 2 +- prompts/create-llms.prompt.md | 2 +- ...reate-oo-component-documentation.prompt.md | 2 +- prompts/create-specification.prompt.md | 2 +- prompts/create-technical-spike.prompt.md | 6 +- prompts/create-tldr-page.prompt.md | 14 +- prompts/documentation-writer.prompt.md | 2 +- ...er-structure-blueprint-generator.prompt.md | 120 +++++++++--------- prompts/github-copilot-starter.prompt.md | 20 +-- prompts/java-springboot.prompt.md | 2 +- .../mcp-create-declarative-agent.prompt.md | 6 +- prompts/model-recommendation.prompt.md | 10 +- prompts/playwright-explore-website.prompt.md | 2 +- prompts/playwright-generate-test.prompt.md | 2 +- prompts/postgresql-optimization.prompt.md | 76 +++++------ prompts/prompt-builder.prompt.md | 10 +- .../structured-autonomy-generate.prompt.md | 2 +- ...st-awesome-github-copilot-agents.prompt.md | 6 +- ...awesome-github-copilot-chatmodes.prompt.md | 6 +- ...esome-github-copilot-collections.prompt.md | 12 +- ...some-github-copilot-instructions.prompt.md | 6 +- ...t-awesome-github-copilot-prompts.prompt.md | 6 +- prompts/tldr-prompt.prompt.md | 34 ++--- prompts/update-avm-modules-in-bicep.prompt.md | 8 +- prompts/update-implementation-plan.prompt.md | 2 +- prompts/update-llms.prompt.md | 2 +- prompts/update-markdown-file-index.prompt.md | 2 +- ...pdate-oo-component-documentation.prompt.md | 2 +- prompts/update-specification.prompt.md | 2 +- ...write-coding-standards-from-file.prompt.md | 24 ++-- 69 files changed, 360 insertions(+), 360 deletions(-) diff --git a/agents/accessibility.agent.md b/agents/accessibility.agent.md index f2bf6d1c1..69cd49fd9 100644 --- a/agents/accessibility.agent.md +++ b/agents/accessibility.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for web accessibility (WCAG 2.1/2.2), inclusive UX, and a11y testing' model: GPT-4.1 -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Accessibility Expert diff --git a/agents/aem-frontend-specialist.agent.md b/agents/aem-frontend-specialist.agent.md index c0964644d..7f172aeb7 100644 --- a/agents/aem-frontend-specialist.agent.md +++ b/agents/aem-frontend-specialist.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for developing AEM components using HTL, Tailwind CSS, and Figma-to-code workflows with design system integration' model: 'GPT-4.1' -tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] +tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] --- # AEM Front-End Specialist diff --git a/agents/bicep-implement.agent.md b/agents/bicep-implement.agent.md index 56c7b3508..62c7659fc 100644 --- a/agents/bicep-implement.agent.md +++ b/agents/bicep-implement.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as an Azure Bicep Infrastructure as Code coding specialist that creates Bicep templates.' tools: - [ 'edit/editFiles', 'fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'web/fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure as Code coding Specialist diff --git a/agents/bicep-plan.agent.md b/agents/bicep-plan.agent.md index 26e7c8858..23c83a057 100644 --- a/agents/bicep-plan.agent.md +++ b/agents/bicep-plan.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as implementation planner for your Azure Bicep Infrastructure as Code task.' tools: - [ 'edit/editFiles', 'fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'web/fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure Planning diff --git a/agents/critical-thinking.agent.md b/agents/critical-thinking.agent.md index 4fa9da1e6..0d0568895 100644 --- a/agents/critical-thinking.agent.md +++ b/agents/critical-thinking.agent.md @@ -1,6 +1,6 @@ --- description: 'Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes.' -tools: ['codebase', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] +tools: ['codebase', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] --- # Critical thinking mode instructions diff --git a/agents/csharp-dotnet-janitor.agent.md b/agents/csharp-dotnet-janitor.agent.md index a7fd15f31..3273fc354 100644 --- a/agents/csharp-dotnet-janitor.agent.md +++ b/agents/csharp-dotnet-janitor.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # C#/.NET Janitor diff --git a/agents/custom-agent-foundry.agent.md b/agents/custom-agent-foundry.agent.md index 576d421cd..58ebec9a8 100644 --- a/agents/custom-agent-foundry.agent.md +++ b/agents/custom-agent-foundry.agent.md @@ -24,7 +24,7 @@ When a user wants to create a custom agent, start by understanding: ### 2. Custom Agent Design Principles **Tool Selection Strategy:** -- **Read-only agents** (planning, research, review): Use `['search', 'fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` +- **Read-only agents** (planning, research, review): Use `['search', 'web/fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` - **Implementation agents** (coding, refactoring): Add `['replace_string_in_file', 'multi_replace_string_in_file', 'create_file', 'run_in_terminal']` - **Testing agents**: Include `['run_notebook_cell', 'test_failure', 'run_in_terminal']` - **Deployment agents**: Include `['run_in_terminal', 'create_and_run_task', 'get_errors']` diff --git a/agents/demonstrate-understanding.agent.md b/agents/demonstrate-understanding.agent.md index 63dc76440..49731de47 100644 --- a/agents/demonstrate-understanding.agent.md +++ b/agents/demonstrate-understanding.agent.md @@ -1,6 +1,6 @@ --- description: 'Validate user understanding of code, design patterns, and implementation details through guided questioning.' -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Demonstrate Understanding mode instructions diff --git a/agents/dotnet-upgrade.agent.md b/agents/dotnet-upgrade.agent.md index fe6472c38..c92f8fdeb 100644 --- a/agents/dotnet-upgrade.agent.md +++ b/agents/dotnet-upgrade.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'fetch', 'microsoft.docs.mcp'] +tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'web/fetch', 'microsoft.docs.mcp'] --- # .NET Upgrade Collection @@ -20,7 +20,7 @@ Discover and plan your .NET upgrade journey! mode: dotnet-upgrade title: Analyze current .NET framework versions and create upgrade plan --- -Analyze the repository and list each project's current TargetFramework +Analyze the repository and list each project's current TargetFramework along with the latest available LTS version from Microsoft's release schedule. Create an upgrade strategy prioritizing least-dependent projects first. ``` diff --git a/agents/drupal-expert.agent.md b/agents/drupal-expert.agent.md index 2555266fb..7f9d5554f 100644 --- a/agents/drupal-expert.agent.md +++ b/agents/drupal-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for Drupal development, architecture, and best practices using PHP 8.3+ and modern Drupal patterns' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Drupal Expert @@ -157,11 +157,11 @@ use Drupal\Core\Entity\EntityTypeManagerInterface; use Symfony\Component\DependencyInjection\ContainerInterface; class DecoratedEntityTypeManager implements EntityTypeManagerInterface { - + public function __construct( protected EntityTypeManagerInterface $entityTypeManager ) {} - + // Implement all interface methods, delegating to wrapped service // Add custom logic where needed } @@ -190,17 +190,17 @@ use Symfony\Component\HttpKernel\Event\RequestEvent; use Symfony\Component\HttpKernel\KernelEvents; class MyModuleSubscriber implements EventSubscriberInterface { - + public function __construct( protected RouteMatchInterface $routeMatch ) {} - + public static function getSubscribedEvents(): array { return [ KernelEvents::REQUEST => ['onRequest', 100], ]; } - + public function onRequest(RequestEvent $event): void { // Custom logic on every request } @@ -222,7 +222,7 @@ use Drupal\Component\Annotation\Plugin; * @Annotation */ class CustomProcessor extends Plugin { - + public string $id; public string $label; public string $description = ''; @@ -263,7 +263,7 @@ use Drupal\Core\Queue\QueueWorkerBase; * ) */ class MyModuleProcessor extends QueueWorkerBase { - + public function processItem($data): void { // Process queue item } @@ -322,10 +322,10 @@ use Drupal\Core\Field\BaseFieldDefinition; * ) */ class Product extends ContentEntityBase { - + public static function baseFieldDefinitions(EntityTypeInterface $entity_type): array { $fields = parent::baseFieldDefinitions($entity_type); - + $fields['name'] = BaseFieldDefinition::create('string') ->setLabel(t('Name')) ->setRequired(TRUE) @@ -335,7 +335,7 @@ class Product extends ContentEntityBase { ]) ->setDisplayConfigurable('form', TRUE) ->setDisplayConfigurable('view', TRUE); - + $fields['price'] = BaseFieldDefinition::create('decimal') ->setLabel(t('Price')) ->setSetting('precision', 10) @@ -346,15 +346,15 @@ class Product extends ContentEntityBase { ]) ->setDisplayConfigurable('form', TRUE) ->setDisplayConfigurable('view', TRUE); - + $fields['created'] = BaseFieldDefinition::create('created') ->setLabel(t('Created')) ->setDescription(t('The time that the entity was created.')); - + $fields['changed'] = BaseFieldDefinition::create('changed') ->setLabel(t('Changed')) ->setDescription(t('The time that the entity was last edited.')); - + return $fields; } } @@ -383,7 +383,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * ) */ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInterface { - + public function __construct( array $configuration, $plugin_id, @@ -392,7 +392,7 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt ) { parent::__construct($configuration, $plugin_id, $plugin_definition); } - + public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition): self { return new self( $configuration, @@ -401,13 +401,13 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt $container->get('entity_type.manager') ); } - + public function defaultConfiguration(): array { return [ 'count' => 5, ] + parent::defaultConfiguration(); } - + public function blockForm($form, FormStateInterface $form_state): array { $form['count'] = [ '#type' => 'number', @@ -418,23 +418,23 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt ]; return $form; } - + public function blockSubmit($form, FormStateInterface $form_state): void { $this->configuration['count'] = $form_state->getValue('count'); } - + public function build(): array { $count = $this->configuration['count']; - + $storage = $this->entityTypeManager->getStorage('product'); $query = $storage->getQuery() ->accessCheck(TRUE) ->sort('created', 'DESC') ->range(0, $count); - + $ids = $query->execute(); $products = $storage->loadMultiple($ids); - + return [ '#theme' => 'item_list', '#items' => array_map( @@ -467,9 +467,9 @@ use Psr\Log\LoggerInterface; * Service for managing products. */ class ProductManager { - + protected LoggerInterface $logger; - + public function __construct( protected EntityTypeManagerInterface $entityTypeManager, protected ConfigFactoryInterface $configFactory, @@ -477,7 +477,7 @@ class ProductManager { ) { $this->logger = $loggerFactory->get('mymodule'); } - + /** * Creates a new product. * @@ -492,13 +492,13 @@ class ProductManager { $product = $this->entityTypeManager ->getStorage('product') ->create($values); - + $product->save(); - + $this->logger->info('Product created: @name', [ '@name' => $product->label(), ]); - + return $product; } catch (\Exception $e) { @@ -537,23 +537,23 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * Returns responses for My Module routes. */ class ProductController extends ControllerBase { - + public function __construct( protected ProductManager $productManager ) {} - + public static function create(ContainerInterface $container): self { return new self( $container->get('mymodule.product_manager') ); } - + /** * Displays a list of products. */ public function list(): array { $products = $this->productManager->getRecentProducts(10); - + return [ '#theme' => 'mymodule_product_list', '#products' => $products, @@ -594,15 +594,15 @@ use Drupal\mymodule\Entity\Product; * @group mymodule */ class ProductTest extends KernelTestBase { - + protected static $modules = ['mymodule', 'user', 'system']; - + protected function setUp(): void { parent::setUp(); $this->installEntitySchema('product'); $this->installEntitySchema('user'); } - + /** * Tests product creation. */ @@ -612,7 +612,7 @@ class ProductTest extends KernelTestBase { 'price' => 99.99, ]); $product->save(); - + $this->assertNotEmpty($product->id()); $this->assertEquals('Test Product', $product->label()); $this->assertEquals(99.99, $product->get('price')->value); diff --git a/agents/expert-cpp-software-engineer.agent.md b/agents/expert-cpp-software-engineer.agent.md index cbb1596fb..7050cde3c 100644 --- a/agents/expert-cpp-software-engineer.agent.md +++ b/agents/expert-cpp-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide expert C++ software engineering guidance using modern C++ and industry best practices.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] --- # Expert C++ software engineer mode instructions diff --git a/agents/gilfoyle.agent.md b/agents/gilfoyle.agent.md index 2ffd7fff4..269614c05 100644 --- a/agents/gilfoyle.agent.md +++ b/agents/gilfoyle.agent.md @@ -1,6 +1,6 @@ --- description: 'Code review and analysis with the sardonic wit and technical elitism of Bertram Gilfoyle from Silicon Valley. Prepare for brutal honesty about your code.' -tools: ['changes', 'codebase', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] --- # Gilfoyle Code Review Mode diff --git a/agents/hlbpa.agent.md b/agents/hlbpa.agent.md index decdfe6c0..cdedf3c96 100644 --- a/agents/hlbpa.agent.md +++ b/agents/hlbpa.agent.md @@ -5,7 +5,7 @@ tools: - 'search/codebase' - 'changes' - 'edit/editFiles' - - 'fetch' + - 'web/fetch' - 'findTestFiles' - 'githubRepo' - 'runCommands' diff --git a/agents/laravel-expert-agent.agent.md b/agents/laravel-expert-agent.agent.md index c066d7c15..8badba2e5 100644 --- a/agents/laravel-expert-agent.agent.md +++ b/agents/laravel-expert-agent.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Laravel development assistant specializing in modern Laravel 12+ applications with Eloquent, Artisan, testing, and best practices' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems', 'search'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems', 'search'] --- # Laravel Expert Agent diff --git a/agents/mentor.agent.md b/agents/mentor.agent.md index 69cb457d4..c6531ad6b 100644 --- a/agents/mentor.agent.md +++ b/agents/mentor.agent.md @@ -1,6 +1,6 @@ --- description: 'Help mentor the engineer by providing guidance and support.' -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Mentor mode instructions diff --git a/agents/pimcore-expert.agent.md b/agents/pimcore-expert.agent.md index 8e915e3b6..3d941deac 100644 --- a/agents/pimcore-expert.agent.md +++ b/agents/pimcore-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Pimcore development assistant specializing in CMS, DAM, PIM, and E-Commerce solutions with Symfony integration' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Pimcore Expert @@ -252,7 +252,7 @@ class Car extends CarGenerated */ public function getOSName(): ?string { - return ($this->getManufacturer() ? ($this->getManufacturer()->getName() . ' ') : null) + return ($this->getManufacturer() ? ($this->getManufacturer()->getName() . ' ') : null) . $this->getName(); } @@ -271,7 +271,7 @@ class Car extends CarGenerated /** * Get all additional product images - * + * * @return Hotspotimage[] */ public function getAdditionalImages(): array @@ -306,7 +306,7 @@ class Car extends CarGenerated /** * Get color variants for this product - * + * * @return self[] */ public function getColorVariants(): array @@ -319,7 +319,7 @@ class Car extends CarGenerated $variants = []; foreach ($parent->getChildren() as $sibling) { - if ($sibling instanceof self && + if ($sibling instanceof self && $sibling->getObjectType() === self::OBJECT_TYPE_ACTUAL_CAR) { $variants[] = $sibling; } @@ -411,7 +411,7 @@ class ProductController extends FrontendController ProductLinkGenerator $productLinkGenerator ): Response { $term = trim(strip_tags($request->query->get('term', ''))); - + if (empty($term)) { return $this->json([]); } @@ -491,19 +491,19 @@ class ProductGrid extends AbstractTemplateAreabrick public function action(Info $info): ?Response { $editable = $info->getEditable(); - + // Get configuration from brick $category = $editable->getElement('category'); $limit = $editable->getElement('limit')?->getData() ?? 12; - + // Load products (simplified - use proper service in production) $products = []; if ($category) { // Load products from category } - + $info->setParam('products', $products); - + return null; } } @@ -527,13 +527,13 @@ class ProductGrid extends AbstractTemplateAreabrick ], 'width': 200 }) }} - + {{ pimcore_numeric('limit', { 'width': 100, 'minValue': 1, 'maxValue': 24 }) }} - + {{ pimcore_manyToManyObjectRelation('category', { 'types': ['object'], 'classes': ['Category'], @@ -549,17 +549,17 @@ class ProductGrid extends AbstractTemplateAreabrick
{% if product.mainImage %} - {{ product.OSName }} {% endif %} - +

{{ product.OSName }}

- +
{{ product.OSPrice|number_format(2, '.', ',') }} EUR
@@ -699,16 +699,16 @@ pimcore_ecommerce_framework: enabled: true config_id: default_mysql worker_id: default - + # Pricing configuration pricing_manager: enabled: true pricing_manager_id: default - + # Cart configuration cart: factory_type: Pimcore\Bundle\EcommerceFrameworkBundle\CartManager\CartFactory - + # Checkout configuration checkout_manager: factory_type: Pimcore\Bundle\EcommerceFrameworkBundle\CheckoutManager\CheckoutManagerFactory @@ -716,17 +716,17 @@ pimcore_ecommerce_framework: default: payment: provider: Datatrans - + # Order manager order_manager: enabled: true - + # Price systems price_systems: default: price_system: id: Pimcore\Bundle\EcommerceFrameworkBundle\PriceSystem\AttributePriceSystem - + # Availability systems availability_systems: default: @@ -765,7 +765,7 @@ class ImportProductsCommand extends AbstractCommand // Load data from source $products = $this->loadProductData(); - + $progressBar = $io->createProgressBar(count($products)); $progressBar->start(); @@ -794,7 +794,7 @@ class ImportProductsCommand extends AbstractCommand private function importProduct(array $data): void { $product = Car::getByPath('/products/' . $data['sku']); - + if (!$product) { $product = new Car(); $product->setParent(Car::getByPath('/products')); diff --git a/agents/principal-software-engineer.agent.md b/agents/principal-software-engineer.agent.md index 82056fc44..68875d4cd 100644 --- a/agents/principal-software-engineer.agent.md +++ b/agents/principal-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Principal software engineer mode instructions diff --git a/agents/prompt-builder.agent.md b/agents/prompt-builder.agent.md index cb34c06e0..5e1a76eff 100644 --- a/agents/prompt-builder.agent.md +++ b/agents/prompt-builder.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert prompt engineering and validation system for creating high-quality prompts - Brought to you by microsoft/edge-ai' -tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] +tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] --- # Prompt Builder Instructions diff --git a/agents/se-system-architecture-reviewer.agent.md b/agents/se-system-architecture-reviewer.agent.md index 3942b3e84..7ac77dec7 100644 --- a/agents/se-system-architecture-reviewer.agent.md +++ b/agents/se-system-architecture-reviewer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Architect' description: 'System architecture review specialist with Well-Architected frameworks, design validation, and scalability analysis for AI and distributed systems' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # System Architecture Reviewer diff --git a/agents/se-technical-writer.agent.md b/agents/se-technical-writer.agent.md index 4fcda734d..5b4e8ed73 100644 --- a/agents/se-technical-writer.agent.md +++ b/agents/se-technical-writer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Tech Writer' description: 'Technical writing specialist for creating developer documentation, technical blogs, tutorials, and educational content' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # Technical Writer diff --git a/agents/se-ux-ui-designer.agent.md b/agents/se-ux-ui-designer.agent.md index 6b144a95f..d1ee41aa7 100644 --- a/agents/se-ux-ui-designer.agent.md +++ b/agents/se-ux-ui-designer.agent.md @@ -2,7 +2,7 @@ name: 'SE: UX Designer' description: 'Jobs-to-be-Done analysis, user journey mapping, and UX research artifacts for Figma and design workflows' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # UX/UI Designer diff --git a/agents/search-ai-optimization-expert.agent.md b/agents/search-ai-optimization-expert.agent.md index 50dd32f18..123fb7a82 100644 --- a/agents/search-ai-optimization-expert.agent.md +++ b/agents/search-ai-optimization-expert.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert guidance for modern search optimization: SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO) with AI-ready content strategies' -tools: ['codebase', 'fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] +tools: ['codebase', 'web/fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] --- # Search & AI Optimization Expert diff --git a/agents/semantic-kernel-dotnet.agent.md b/agents/semantic-kernel-dotnet.agent.md index 02efb99f2..a93dfc715 100644 --- a/agents/semantic-kernel-dotnet.agent.md +++ b/agents/semantic-kernel-dotnet.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Semantic Kernel .NET mode instructions diff --git a/agents/semantic-kernel-python.agent.md b/agents/semantic-kernel-python.agent.md index 39fb04b72..eb680ddcd 100644 --- a/agents/semantic-kernel-python.agent.md +++ b/agents/semantic-kernel-python.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the Python version of Semantic Kernel.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] --- # Semantic Kernel Python mode instructions diff --git a/agents/shopify-expert.agent.md b/agents/shopify-expert.agent.md index 8b5cb4f30..1ef3e7b96 100644 --- a/agents/shopify-expert.agent.md +++ b/agents/shopify-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Shopify development assistant specializing in theme development, Liquid templating, app development, and Shopify APIs' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Shopify Expert @@ -452,10 +452,10 @@ class CartManager {

${item.product_title}

${item.variant_title}

${this.formatMoney(item.final_line_price)}

- @@ -561,23 +561,23 @@ import { json } from "@remix-run/node"; export async function loader({ request }) { const url = new URL(request.url); const shop = url.searchParams.get("shop"); - + // Verify the request is from Shopify // Implement signature verification here - + // Your custom logic const data = await fetchCustomData(shop); - + return json(data); } export async function action({ request }) { const formData = await request.formData(); const shop = formData.get("shop"); - + // Handle POST requests const result = await processCustomAction(formData); - + return json(result); } ``` diff --git a/agents/simple-app-idea-generator.agent.md b/agents/simple-app-idea-generator.agent.md index 970703a31..91332d41b 100644 --- a/agents/simple-app-idea-generator.agent.md +++ b/agents/simple-app-idea-generator.agent.md @@ -1,6 +1,6 @@ --- description: 'Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation.' -tools: ['changes', 'codebase', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] +tools: ['changes', 'codebase', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] --- # Idea Generator mode instructions diff --git a/agents/software-engineer-agent-v1.agent.md b/agents/software-engineer-agent-v1.agent.md index 39cfe17b1..b4b7bafce 100644 --- a/agents/software-engineer-agent-v1.agent.md +++ b/agents/software-engineer-agent-v1.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert-level software engineering agent. Deliver production-ready, maintainable code. Execute systematically and specification-driven. Document comprehensively. Operate autonomously and adaptively.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Software Engineer Agent v1 diff --git a/agents/specification.agent.md b/agents/specification.agent.md index 8ae88d58b..b120dfe52 100644 --- a/agents/specification.agent.md +++ b/agents/specification.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate or update specification documents for new or existing functionality.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Specification mode instructions diff --git a/agents/tech-debt-remediation-plan.agent.md b/agents/tech-debt-remediation-plan.agent.md index 5e96c3c21..6941896ce 100644 --- a/agents/tech-debt-remediation-plan.agent.md +++ b/agents/tech-debt-remediation-plan.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate technical debt remediation plans for code, tests, and documentation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Technical Debt Remediation Plan diff --git a/agents/technical-content-evaluator.agent.md b/agents/technical-content-evaluator.agent.md index a3bad60f6..632375491 100644 --- a/agents/technical-content-evaluator.agent.md +++ b/agents/technical-content-evaluator.agent.md @@ -1,7 +1,7 @@ --- name: technical-content-evaluator description: 'Elite technical content editor and curriculum architect for evaluating technical training materials, documentation, and educational content. Reviews for technical accuracy, pedagogical excellence, content flow, code validation, and ensures A-grade quality standards.' -tools: ['edit', 'search', 'shell', 'fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] +tools: ['edit', 'search', 'shell', 'web/fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] model: Claude Sonnet 4.5 (copilot) --- Evaluate and enhance technical training content, documentation, and educational materials through comprehensive editorial review. Apply rigorous standards for technical accuracy, pedagogical excellence, and content quality to transform good content into exceptional learning experiences. diff --git a/agents/voidbeast-gpt41enhanced.agent.md b/agents/voidbeast-gpt41enhanced.agent.md index 0a633efc4..f9cae472a 100644 --- a/agents/voidbeast-gpt41enhanced.agent.md +++ b/agents/voidbeast-gpt41enhanced.agent.md @@ -1,6 +1,6 @@ --- description: '4.1 voidBeast_GPT41Enhanced 1.0 : a advanced autonomous developer agent, designed for elite full-stack development with enhanced multi-mode capabilities. This latest evolution features sophisticated mode detection, comprehensive research capabilities, and never-ending problem resolution. Plan/Act/Deep Research/Analyzer/Checkpoints(Memory)/Prompt Generator Modes.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] --- # voidBeast_GPT41Enhanced 1.0 - Elite Developer AI Assistant @@ -48,7 +48,7 @@ After **every** file modification, you MUST: **Output**: Comprehensive plan via `plan_mode_response` **Rule**: NO code writing in this mode -### ⚡ ACT MODE +### ⚡ ACT MODE **Purpose**: Execute approved plans and implement solutions **Tools**: All tools available for coding, testing, and deployment **Output**: Working solution via `attempt_completion` @@ -91,7 +91,7 @@ After **every** file modification, you MUST: ### 🤖 PROMPT GENERATOR MODE **Triggers**: "generate", "create", "develop", "build" (when requesting content creation) -**Critical Rules**: +**Critical Rules**: - Your knowledge is outdated - MUST verify everything with current web sources - **DO NOT CODE DIRECTLY** - Generate research-backed prompts first - **MANDATORY RESEARCH PHASE** before any implementation @@ -124,7 +124,7 @@ After **every** file modification, you MUST: ### 🔍 Investigation & Analysis `codebase` `search` `searchResults` `usages` `findTestFiles` -### 📝 File Operations +### 📝 File Operations `editFiles` `new` `readCellOutput` ### 🧪 Development & Testing diff --git a/agents/wg-code-alchemist.agent.md b/agents/wg-code-alchemist.agent.md index a41eeb0a1..000cd749a 100644 --- a/agents/wg-code-alchemist.agent.md +++ b/agents/wg-code-alchemist.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Alchemist to transform your code with Clean Code principles and SOLID design' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Alchemist, an expert software engineer specializing in Clean Code practices and SOLID principles. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/agents/wg-code-sentinel.agent.md b/agents/wg-code-sentinel.agent.md index adafd2af0..bd59a6009 100644 --- a/agents/wg-code-sentinel.agent.md +++ b/agents/wg-code-sentinel.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Sentinel to review your code for security issues.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Sentinel, an expert security reviewer specializing in identifying and mitigating code vulnerabilities. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/prompts/add-educational-comments.prompt.md b/prompts/add-educational-comments.prompt.md index 2469d1800..be7491065 100644 --- a/prompts/add-educational-comments.prompt.md +++ b/prompts/add-educational-comments.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Add educational comments to the file specified, or prompt asking for file to comment if one is not provided.' -tools: ['edit/editFiles', 'fetch', 'todos'] +tools: ['edit/editFiles', 'web/fetch', 'todos'] --- # Add Educational Comments @@ -83,7 +83,7 @@ You are an expert educator and technical writer. You can explain programming top - **Educational Level** (`1-3`): Familiarity with the specific language or framework (default `1`). - **Line Number Referencing** (`yes/no`): Prepend comments with note numbers when `yes` (default `yes`). - **Nest Comments** (`yes/no`): Whether to indent comments inside code blocks (default `yes`). -- **Fetch List**: Optional URLs for authoritative references. +- **web/fetch List**: Optional URLs for authoritative references. If a configurable element is missing, use the default value. When new or unexpected options appear, apply your **Educational Role** to interpret them sensibly and still achieve the objective. @@ -97,7 +97,7 @@ If a configurable element is missing, use the default value. When new or unexpec - Educational Level = 1 - Line Number Referencing = yes - Nest Comments = yes -- Fetch List: +- web/fetch List: - ## Examples diff --git a/prompts/architecture-blueprint-generator.prompt.md b/prompts/architecture-blueprint-generator.prompt.md index 038852f11..1b60ad3e5 100644 --- a/prompts/architecture-blueprint-generator.prompt.md +++ b/prompts/architecture-blueprint-generator.prompt.md @@ -25,7 +25,7 @@ ${FOCUS_ON_EXTENSIBILITY=true|false} C[Job 2] C --> D[Job 3] D --> E[End] - + B --> F[Parallel Job] F --> D - + style A fill:#e1f5fe style E fill:#e8f5e8 ``` @@ -259,7 +259,7 @@ graph TD subgraph "Build Phase" A[Lint] --> B[Test] --> C[Build] end - subgraph "Deploy Phase" + subgraph "Deploy Phase" D[Staging] --> E[Production] end C --> D diff --git a/prompts/create-implementation-plan.prompt.md b/prompts/create-implementation-plan.prompt.md index e6ed3b113..ffc0bc0fe 100644 --- a/prompts/create-implementation-plan.prompt.md +++ b/prompts/create-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new implementation plan file for new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Implementation Plan diff --git a/prompts/create-llms.prompt.md b/prompts/create-llms.prompt.md index 95f661c6c..c9e5e58f8 100644 --- a/prompts/create-llms.prompt.md +++ b/prompts/create-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create an llms.txt file from scratch based on repository structure following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create LLMs.txt File from Repository Structure diff --git a/prompts/create-oo-component-documentation.prompt.md b/prompts/create-oo-component-documentation.prompt.md index 1042534d3..33bb0cf92 100644 --- a/prompts/create-oo-component-documentation.prompt.md +++ b/prompts/create-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Generate Standard OO Component Documentation diff --git a/prompts/create-specification.prompt.md b/prompts/create-specification.prompt.md index 664e695ec..08093e046 100644 --- a/prompts/create-specification.prompt.md +++ b/prompts/create-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new specification file for the solution, optimized for Generative AI consumption.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Specification diff --git a/prompts/create-technical-spike.prompt.md b/prompts/create-technical-spike.prompt.md index aa7162ec1..bd9f63c79 100644 --- a/prompts/create-technical-spike.prompt.md +++ b/prompts/create-technical-spike.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation.' -tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] +tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] --- # Create Technical Spike Document @@ -203,7 +203,7 @@ Use descriptive, kebab-case names that indicate the category and specific unknow ### Phase 1: Information Gathering -1. **Search existing documentation** using search/fetch tools +1. **Search existing documentation** using search/web/fetch tools 2. **Analyze codebase** for existing patterns and constraints 3. **Research external resources** (APIs, libraries, examples) @@ -222,7 +222,7 @@ Use descriptive, kebab-case names that indicate the category and specific unknow ## Tools Usage - **search/searchResults:** Research existing solutions and documentation -- **fetch/githubRepo:** Analyze external APIs, libraries, and examples +- **web/fetch/githubRepo:** Analyze external APIs, libraries, and examples - **codebase:** Understand existing system constraints and patterns - **runTasks:** Execute prototypes and validation tests - **editFiles:** Update research progress and findings diff --git a/prompts/create-tldr-page.prompt.md b/prompts/create-tldr-page.prompt.md index 03a0f93f0..6fea9f270 100644 --- a/prompts/create-tldr-page.prompt.md +++ b/prompts/create-tldr-page.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a tldr page from documentation URLs and command examples, requiring both URL and command name.' -tools: ['edit/createFile', 'fetch'] +tools: ['edit/createFile', 'web/fetch'] --- # Create TLDR Page @@ -25,9 +25,9 @@ clear, example-driven command references. * **Command** - The name of the command or tool (e.g., `git`, `nmcli`, `distrobox-create`) * **URL** - Link to authoritative upstream documentation - - If one or more URLs are passed without a preceding `#fetch`, apply #tool:fetch to the first URL + - If one or more URLs are passed without a preceding `#web/fetch`, apply #tool:web/fetch to the first URL - If ${file} is provided in lieu of a URL, and ${file} has a relevant URL to **command**, then use - the data from the file as if fetched from the URL; use the URL extracted from the file when + the data from the file as if web/fetched from the URL; use the URL extracted from the file when creating the `tldr` page - If more than one URL is in the file, prompt for which URL should be used for the `tldr` page @@ -48,7 +48,7 @@ the command. ### Syntax ```bash -/create-tldr-page #fetch [text data] [context file] +/create-tldr-page #web/fetch [text data] [context file] ``` ### Error Handling @@ -64,7 +64,7 @@ the command. **Agent** ```text -I'll fetch the URL and analyze the documentation. +I'll web/fetch the URL and analyze the documentation. From the data extracted, I assume the command is `some-command`. Is this correct? (yes/no) ``` @@ -123,7 +123,7 @@ Use this template structure when creating tldr pages: ### Reference Examples -You MAY fetch these example tldr pages to understand the proper format and style: +You MAY web/fetch these example tldr pages to understand the proper format and style: * [git](https://raw.githubusercontent.com/jhauga/tldr/refs/heads/main/pages/common/git.md) * [distrobox-create](https://raw.githubusercontent.com/jhauga/tldr/refs/heads/main/pages/linux/distrobox-create.md) @@ -134,7 +134,7 @@ You MAY fetch these example tldr pages to understand the proper format and style **User** ```bash -/create-tldr-page #fetch https://git-scm.com/docs/git git +/create-tldr-page #web/fetch https://git-scm.com/docs/git git ``` **Agent** diff --git a/prompts/documentation-writer.prompt.md b/prompts/documentation-writer.prompt.md index 88c71ad3c..7b97cc993 100644 --- a/prompts/documentation-writer.prompt.md +++ b/prompts/documentation-writer.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -tools: ['edit/editFiles', 'search', 'web/fetch'] +tools: ['edit/editFiles', 'search', 'web/web/fetch'] description: 'Diátaxis Documentation Expert. An expert technical writer specializing in creating high-quality software documentation, guided by the principles and structure of the Diátaxis technical documentation authoring framework.' --- diff --git a/prompts/folder-structure-blueprint-generator.prompt.md b/prompts/folder-structure-blueprint-generator.prompt.md index 3afce1555..4910eba53 100644 --- a/prompts/folder-structure-blueprint-generator.prompt.md +++ b/prompts/folder-structure-blueprint-generator.prompt.md @@ -7,34 +7,34 @@ agent: 'agent' ## Configuration Variables -${PROJECT_TYPE="Auto-detect|.NET|Java|React|Angular|Python|Node.js|Flutter|Other"} +${PROJECT_TYPE="Auto-detect|.NET|Java|React|Angular|Python|Node.js|Flutter|Other"} -${INCLUDES_MICROSERVICES="Auto-detect|true|false"} +${INCLUDES_MICROSERVICES="Auto-detect|true|false"} -${INCLUDES_FRONTEND="Auto-detect|true|false"} +${INCLUDES_FRONTEND="Auto-detect|true|false"} -${IS_MONOREPO="Auto-detect|true|false"} +${IS_MONOREPO="Auto-detect|true|false"} -${VISUALIZATION_STYLE="ASCII|Markdown List|Table"} +${VISUALIZATION_STYLE="ASCII|Markdown List|Table"} -${DEPTH_LEVEL=1-5} +${DEPTH_LEVEL=1-5} -${INCLUDE_FILE_COUNTS=true|false} +${INCLUDE_FILE_COUNTS=true|false} -${INCLUDE_GENERATED_FOLDERS=true|false} +${INCLUDE_GENERATED_FOLDERS=true|false} -${INCLUDE_FILE_PATTERNS=true|false} +${INCLUDE_FILE_PATTERNS=true|false} -${INCLUDE_TEMPLATES=true|false} +${INCLUDE_TEMPLATES=true|false} ## Generated Prompt @@ -43,7 +43,7 @@ ${INCLUDE_TEMPLATES=true|false} ### Initial Auto-detection Phase -${PROJECT_TYPE == "Auto-detect" ? +${PROJECT_TYPE == "Auto-detect" ? "Begin by scanning the folder structure for key files that identify the project type: - Look for solution/project files (.sln, .csproj, .fsproj, .vbproj) to identify .NET projects - Check for build files (pom.xml, build.gradle, settings.gradle) for Java projects @@ -51,17 +51,17 @@ ${PROJECT_TYPE == "Auto-detect" ? - Look for specific framework files (angular.json, react-scripts entries, next.config.js) - Check for Python project identifiers (requirements.txt, setup.py, pyproject.toml) - Examine mobile app identifiers (pubspec.yaml, android/ios folders) -- Note all technology signatures found and their versions" : +- Note all technology signatures found and their versions" : "Focus analysis on ${PROJECT_TYPE} project structure"} -${IS_MONOREPO == "Auto-detect" ? +${IS_MONOREPO == "Auto-detect" ? "Determine if this is a monorepo by looking for: - Multiple distinct projects with their own configuration files - Workspace configuration files (lerna.json, nx.json, turborepo.json, etc.) - Cross-project references and shared dependency patterns - Root-level orchestration scripts and configuration" : ""} -${INCLUDES_MICROSERVICES == "Auto-detect" ? +${INCLUDES_MICROSERVICES == "Auto-detect" ? "Check for microservices architecture indicators: - Multiple service directories with similar/repeated structures - Service-specific Dockerfiles or deployment configurations @@ -70,7 +70,7 @@ ${INCLUDES_MICROSERVICES == "Auto-detect" ? - API gateway configuration files - Shared libraries or utilities across services" : ""} -${INCLUDES_FRONTEND == "Auto-detect" ? +${INCLUDES_FRONTEND == "Auto-detect" ? "Identify frontend components by looking for: - Web asset directories (wwwroot, public, dist, static) - UI framework files (components, modules, pages) @@ -87,40 +87,40 @@ Provide a high-level overview of the ${PROJECT_TYPE == "Auto-detect" ? "detected - Note any structural patterns that repeat throughout the codebase - Document the rationale behind the structure where it can be inferred -${IS_MONOREPO == "Auto-detect" ? -"If detected as a monorepo, explain how the monorepo is organized and the relationship between projects." : +${IS_MONOREPO == "Auto-detect" ? +"If detected as a monorepo, explain how the monorepo is organized and the relationship between projects." : IS_MONOREPO ? "Explain how the monorepo is organized and the relationship between projects." : ""} -${INCLUDES_MICROSERVICES == "Auto-detect" ? -"If microservices are detected, describe how they are structured and organized." : +${INCLUDES_MICROSERVICES == "Auto-detect" ? +"If microservices are detected, describe how they are structured and organized." : INCLUDES_MICROSERVICES ? "Describe how the microservices are structured and organized." : ""} ### 2. Directory Visualization -${VISUALIZATION_STYLE == "ASCII" ? +${VISUALIZATION_STYLE == "ASCII" ? "Create an ASCII tree representation of the folder hierarchy to depth level ${DEPTH_LEVEL}." : ""} -${VISUALIZATION_STYLE == "Markdown List" ? +${VISUALIZATION_STYLE == "Markdown List" ? "Use nested markdown lists to represent the folder hierarchy to depth level ${DEPTH_LEVEL}." : ""} -${VISUALIZATION_STYLE == "Table" ? +${VISUALIZATION_STYLE == "Table" ? "Create a table with columns for Path, Purpose, Content Types, and Conventions." : ""} -${INCLUDE_GENERATED_FOLDERS ? -"Include all folders including generated ones." : +${INCLUDE_GENERATED_FOLDERS ? +"Include all folders including generated ones." : "Exclude auto-generated folders like bin/, obj/, node_modules/, etc."} ### 3. Key Directory Analysis Document each significant directory's purpose, contents, and patterns: -${PROJECT_TYPE == "Auto-detect" ? +${PROJECT_TYPE == "Auto-detect" ? "For each detected technology, analyze directory structures based on observed usage patterns:" : ""} -${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? "#### .NET Project Structure (if detected) -- **Solution Organization**: +- **Solution Organization**: - How projects are grouped and related - Solution folder organization patterns - Multi-targeting project patterns @@ -149,7 +149,7 @@ ${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? - Test categories and organization - Test data and mock locations" : ""} -${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? "#### UI Project Structure (if detected) - **Component Organization**: @@ -170,13 +170,13 @@ ${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto - **API Integration**: - API client organization - Service layer structure - - Data fetching patterns + - Data web/fetching patterns - **Asset Management**: - Static resource organization - Image/media file structure - Font and icon organization - + - **Style Organization**: - CSS/SCSS file structure - Theme organization @@ -184,36 +184,36 @@ ${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto ### 4. File Placement Patterns -${INCLUDE_FILE_PATTERNS ? +${INCLUDE_FILE_PATTERNS ? "Document the patterns that determine where different types of files should be placed: - **Configuration Files**: - Locations for different types of configuration - Environment-specific configuration patterns - + - **Model/Entity Definitions**: - Where domain models are defined - Data transfer object (DTO) locations - Schema definition locations - + - **Business Logic**: - Service implementation locations - Business rule organization - Utility and helper function placement - + - **Interface Definitions**: - Where interfaces and abstractions are defined - How interfaces are grouped and organized - + - **Test Files**: - Unit test location patterns - Integration test placement - Test utility and mock locations - + - **Documentation Files**: - API documentation placement - Internal documentation organization - - README file distribution" : + - README file distribution" : "Document where key file types are located in the project."} ### 5. Naming and Organization Conventions @@ -223,12 +223,12 @@ Document the naming and organizational conventions observed across the project: - Case conventions (PascalCase, camelCase, kebab-case) - Prefix and suffix patterns - Type indicators in filenames - + - **Folder Naming Patterns**: - Naming conventions for different folder types - Hierarchical naming patterns - Grouping and categorization conventions - + - **Namespace/Module Patterns**: - How namespaces/modules map to folder structure - Import/using statement organization @@ -252,13 +252,13 @@ Provide guidance for navigating and working with the codebase structure: - How to extend existing functionality - Where to place new tests - Configuration modification locations - + - **Dependency Patterns**: - How dependencies flow between folders - Import/reference patterns - Dependency injection registration locations -${INCLUDE_FILE_COUNTS ? +${INCLUDE_FILE_COUNTS ? "- **Content Statistics**: - Files per directory analysis - Code distribution metrics @@ -271,12 +271,12 @@ Document the build process and output organization: - Build script locations and purposes - Build pipeline organization - Build task definitions - + - **Output Structure**: - Compiled/built output locations - Output organization patterns - Distribution package structure - + - **Environment-Specific Builds**: - Development vs. production differences - Environment configuration strategies @@ -284,7 +284,7 @@ Document the build process and output organization: ### 8. Technology-Specific Organization -${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? "#### .NET-Specific Structure Patterns (if detected) - **Project File Organization**: @@ -292,53 +292,53 @@ ${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? - Target framework configuration - Property group organization - Item group patterns - + - **Assembly Organization**: - Assembly naming patterns - Multi-assembly architecture - Assembly reference patterns - + - **Resource Organization**: - Embedded resource patterns - Localization file structure - Static web asset organization - + - **Package Management**: - NuGet configuration locations - Package reference organization - Package version management" : ""} -${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ? "#### Java-Specific Structure Patterns (if detected) - **Package Hierarchy**: - Package naming and nesting conventions - Domain vs. technical packages - Visibility and access patterns - + - **Build Tool Organization**: - Maven/Gradle structure patterns - Module organization - Plugin configuration patterns - + - **Resource Organization**: - Resource folder structures - Environment-specific resources - Properties file organization" : ""} -${(PROJECT_TYPE == "Node.js" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "Node.js" || PROJECT_TYPE == "Auto-detect") ? "#### Node.js-Specific Structure Patterns (if detected) - **Module Organization**: - CommonJS vs. ESM organization - Internal module patterns - Third-party dependency management - + - **Script Organization**: - npm/yarn script definition patterns - Utility script locations - Development tool scripts - + - **Configuration Management**: - Configuration file locations - Environment variable management @@ -351,18 +351,18 @@ Document how the project structure is designed to be extended: - How to add new modules/features while maintaining conventions - Plugin/extension folder patterns - Customization directory structures - + - **Scalability Patterns**: - How the structure scales for larger features - Approach for breaking down large modules - Code splitting strategies - + - **Refactoring Patterns**: - Common refactoring approaches observed - How structural changes are managed - Incremental reorganization patterns -${INCLUDE_TEMPLATES ? +${INCLUDE_TEMPLATES ? "### 10. Structure Templates Provide templates for creating new components that follow project conventions: @@ -371,17 +371,17 @@ Provide templates for creating new components that follow project conventions: - Folder structure for adding a complete feature - Required file types and their locations - Naming patterns to follow - + - **New Component Template**: - Directory structure for a typical component - Essential files to include - Integration points with existing structure - + - **New Service Template**: - Structure for adding a new service - Interface and implementation placement - Configuration and registration patterns - + - **New Test Structure**: - Folder structure for test projects/files - Test file organization templates @@ -395,7 +395,7 @@ Document how the project structure is maintained and enforced: - Tools/scripts that enforce structure - Build checks for structural compliance - Linting rules related to structure - + - **Documentation Practices**: - How structural changes are documented - Where architectural decisions are recorded diff --git a/prompts/github-copilot-starter.prompt.md b/prompts/github-copilot-starter.prompt.md index f1fddc3f4..eaf2c398a 100644 --- a/prompts/github-copilot-starter.prompt.md +++ b/prompts/github-copilot-starter.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' model: Claude Sonnet 4 -tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'fetch'] +tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'web/fetch'] description: 'Set up complete GitHub Copilot configuration for a new project based on technology stack' --- @@ -58,7 +58,7 @@ Create Coding Agent workflow file: - `copilot-setup-steps.yml` - GitHub Actions workflow for Coding Agent environment setup **CRITICAL**: The workflow MUST follow this exact structure: -- Job name MUST be `copilot-setup-steps` +- Job name MUST be `copilot-setup-steps` - Include proper triggers (workflow_dispatch, push, pull_request on the workflow file) - Set appropriate permissions (minimum required) - Customize steps based on the technology stack provided @@ -67,9 +67,9 @@ Create Coding Agent workflow file: For each file, follow these principles: -**MANDATORY FIRST STEP**: Always use the fetch tool to research existing patterns before creating any content: -1. **Fetch from awesome-copilot collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md -2. **Fetch specific instruction files**: https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/[relevant-file].instructions.md +**MANDATORY FIRST STEP**: Always use the web/fetch tool to research existing patterns before creating any content: +1. **web/fetch from awesome-copilot collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md +2. **web/fetch specific instruction files**: https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/[relevant-file].instructions.md 3. **Check for existing patterns** that match the technology stack **Primary Approach**: Reference and adapt existing instructions from awesome-copilot repository: @@ -127,7 +127,7 @@ description: "Java Spring Boot development standards" - ✅ **"Use TypeScript strict mode for better type safety"** - ✅ **"Follow the repository's established error handling patterns"** -**Research Strategy with fetch tool:** +**Research Strategy with web/fetch tool:** 1. **Check awesome-copilot first** - Always start here for ALL file types 2. **Look for exact tech stack matches** (e.g., React, Node.js, Spring Boot) 3. **Look for general matches** (e.g., frontend chatmodes, testing prompts, review modes) @@ -135,15 +135,15 @@ description: "Java Spring Boot development standards" 5. **Adapt community examples** to project needs 6. **Only create custom content** if nothing relevant exists -**Fetch these awesome-copilot directories:** +**web/fetch these awesome-copilot directories:** - **Instructions**: https://github.com/github/awesome-copilot/tree/main/instructions -- **Prompts**: https://github.com/github/awesome-copilot/tree/main/prompts +- **Prompts**: https://github.com/github/awesome-copilot/tree/main/prompts - **Chat Modes**: https://github.com/github/awesome-copilot/tree/main/chatmodes - **Collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md **Awesome-Copilot Collections to Check:** - **Frontend Web Development**: React, Angular, Vue, TypeScript, CSS frameworks -- **C# .NET Development**: Testing, documentation, and best practices +- **C# .NET Development**: Testing, documentation, and best practices - **Java Development**: Spring Boot, Quarkus, testing, documentation - **Database Development**: PostgreSQL, SQL Server, and general database best practices - **Azure Development**: Infrastructure as Code, serverless functions @@ -237,7 +237,7 @@ Requirements for the form: ```yaml --- description: Generate an implementation plan for new features or refactoring existing code. -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] model: Claude Sonnet 4 --- # Planning mode instructions diff --git a/prompts/java-springboot.prompt.md b/prompts/java-springboot.prompt.md index e558feb00..df178ac75 100644 --- a/prompts/java-springboot.prompt.md +++ b/prompts/java-springboot.prompt.md @@ -44,7 +44,7 @@ Your goal is to help me write high-quality Spring Boot applications by following - **Spring Data JPA:** Use Spring Data JPA repositories by extending `JpaRepository` or `CrudRepository` for standard database operations. - **Custom Queries:** For complex queries, use `@Query` or the JPA Criteria API. -- **Projections:** Use DTO projections to fetch only the necessary data from the database. +- **Projections:** Use DTO projections to web/fetch only the necessary data from the database. ## Logging diff --git a/prompts/mcp-create-declarative-agent.prompt.md b/prompts/mcp-create-declarative-agent.prompt.md index 7602a05d4..302a7240a 100644 --- a/prompts/mcp-create-declarative-agent.prompt.md +++ b/prompts/mcp-create-declarative-agent.prompt.md @@ -146,7 +146,7 @@ The MCP server must provide: ### Tool Selection When importing from MCP: -1. Fetch available tools from server +1. web/fetch available tools from server 2. Select specific tools to include (for security/simplicity) 3. Tool definitions are auto-generated in ai-plugin.json @@ -299,7 +299,7 @@ Then generate: - Ensure mcp.json points to correct server - Verify tools were selected during import - Check ai-plugin.json has correct function definitions -- Re-fetch actions from MCP if server changed +- Re-web/fetch actions from MCP if server changed ### Agent Not Understanding Queries - Review instructions in declarativeAgent.json @@ -307,4 +307,4 @@ Then generate: - Verify response_semantics extract correct data - Test with more specific queries -```` \ No newline at end of file +```` diff --git a/prompts/model-recommendation.prompt.md b/prompts/model-recommendation.prompt.md index bacf06066..b73c8d7a9 100644 --- a/prompts/model-recommendation.prompt.md +++ b/prompts/model-recommendation.prompt.md @@ -3,7 +3,7 @@ description: "Analyze chatmode or prompt files and recommend optimal AI models b agent: "agent" tools: - "search/codebase" - - "fetch" + - "web/fetch" - "context7/*" model: Auto (copilot) --- @@ -103,7 +103,7 @@ Identify the primary task category based on content analysis: Based on `tools` in frontmatter and body instructions: -- **Read-only tools** (search, fetch, usages, githubRepo): Lower complexity, faster models suitable +- **Read-only tools** (search, web/fetch, usages, githubRepo): Lower complexity, faster models suitable - **Write operations** (edit/editFiles, new): Moderate complexity, accuracy important - **Execution tools** (runCommands, runTests, runTasks): Validation needs, iterative approach - **Advanced tools** (context7/\*, sequential-thinking/\*): Complex reasoning, premium models beneficial @@ -262,13 +262,13 @@ Verify model capabilities align with specified tools: - If tools include `context7/*` or `sequential-thinking/*`: Recommend advanced reasoning models (Claude Sonnet 4.5, GPT-5, Claude Opus 4.1) - If tools include vision-related references: Ensure model supports images (flag if GPT-5 Codex, Claude Sonnet 4, or mini models selected) -- If tools are read-only (search, fetch): Suggest cost-effective models (GPT-5 mini, Grok Code Fast 1) +- If tools are read-only (search, web/fetch): Suggest cost-effective models (GPT-5 mini, Grok Code Fast 1) ### 5. Context7 Integration for Up-to-Date Information **Leverage Context7 for Model Documentation**: -When uncertainty exists about current model capabilities, use Context7 to fetch latest information: +When uncertainty exists about current model capabilities, use Context7 to web/fetch latest information: ```markdown **Verification with Context7**: @@ -568,7 +568,7 @@ If file specifies a deprecated model: ### Example 4: Free Tier User with Planning Mode **File**: `plan.agent.md` -**Content**: "Research and planning mode with read-only tools (search, fetch, githubRepo)" +**Content**: "Research and planning mode with read-only tools (search, web/fetch, githubRepo)" **Subscription**: Free (2K completions + 50 chat requests/month, 0x models only) **Recommendation**: GPT-4.1 (0x, balanced, included in Free tier) **Alternative**: GPT-5 mini (0x, faster but less context) diff --git a/prompts/playwright-explore-website.prompt.md b/prompts/playwright-explore-website.prompt.md index ad2917f42..e8cc123fd 100644 --- a/prompts/playwright-explore-website.prompt.md +++ b/prompts/playwright-explore-website.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Website exploration for testing using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] model: 'Claude Sonnet 4' --- diff --git a/prompts/playwright-generate-test.prompt.md b/prompts/playwright-generate-test.prompt.md index 103195db1..1e683caf9 100644 --- a/prompts/playwright-generate-test.prompt.md +++ b/prompts/playwright-generate-test.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Generate a Playwright test based on a scenario using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] model: 'Claude Sonnet 4.5' --- diff --git a/prompts/postgresql-optimization.prompt.md b/prompts/postgresql-optimization.prompt.md index 2cc5014a1..abde254dc 100644 --- a/prompts/postgresql-optimization.prompt.md +++ b/prompts/postgresql-optimization.prompt.md @@ -24,7 +24,7 @@ CREATE TABLE events ( CREATE INDEX idx_events_data_gin ON events USING gin(data); -- JSONB containment and path queries -SELECT * FROM events +SELECT * FROM events WHERE data @> '{"type": "login"}' AND data #>> '{user,role}' = 'admin'; @@ -53,7 +53,7 @@ SELECT array_agg(DISTINCT category) FROM posts, unnest(categories) as category; ### Window Functions & Analytics ```sql -- Advanced window functions -SELECT +SELECT product_id, sale_date, amount, @@ -79,19 +79,19 @@ CREATE TABLE documents ( ); -- Update search vector -UPDATE documents +UPDATE documents SET search_vector = to_tsvector('english', title || ' ' || content); -- GIN index for search performance CREATE INDEX idx_documents_search ON documents USING gin(search_vector); -- Search queries -SELECT * FROM documents +SELECT * FROM documents WHERE search_vector @@ plainto_tsquery('english', 'postgresql database'); -- Ranking results SELECT *, ts_rank(search_vector, plainto_tsquery('postgresql')) as rank -FROM documents +FROM documents WHERE search_vector @@ plainto_tsquery('postgresql') ORDER BY rank DESC; ``` @@ -101,7 +101,7 @@ ORDER BY rank DESC; ### Query Optimization ```sql -- EXPLAIN ANALYZE for performance analysis -EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT) +EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT) SELECT u.name, COUNT(o.id) as order_count FROM users u LEFT JOIN orders o ON u.id = o.user_id @@ -111,8 +111,8 @@ GROUP BY u.id, u.name; -- Identify slow queries from pg_stat_statements SELECT query, calls, total_time, mean_time, rows, 100.0 * shared_blks_hit / nullif(shared_blks_hit + shared_blks_read, 0) AS hit_percent -FROM pg_stat_statements -ORDER BY total_time DESC +FROM pg_stat_statements +ORDER BY total_time DESC LIMIT 10; ``` @@ -134,13 +134,13 @@ CREATE INDEX idx_orders_covering ON orders(user_id, status) INCLUDE (total, crea ### Connection & Memory Management ```sql -- Check connection usage -SELECT count(*) as connections, state -FROM pg_stat_activity +SELECT count(*) as connections, state +FROM pg_stat_activity GROUP BY state; -- Monitor memory usage -SELECT name, setting, unit -FROM pg_settings +SELECT name, setting, unit +FROM pg_settings WHERE name IN ('shared_buffers', 'work_mem', 'maintenance_work_mem'); ``` @@ -159,7 +159,7 @@ CREATE TYPE address_type AS ( CREATE TYPE order_status AS ENUM ('pending', 'processing', 'shipped', 'delivered', 'cancelled'); -- Use domains for data validation -CREATE DOMAIN email_address AS TEXT +CREATE DOMAIN email_address AS TEXT CHECK (VALUE ~* '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$'); -- Table using custom types @@ -182,12 +182,12 @@ CREATE TABLE reservations ( ); -- Range queries -SELECT * FROM reservations +SELECT * FROM reservations WHERE reservation_period && tstzrange('2024-07-20', '2024-07-25'); -- Exclude overlapping ranges -ALTER TABLE reservations -ADD CONSTRAINT no_overlap +ALTER TABLE reservations +ADD CONSTRAINT no_overlap EXCLUDE USING gist (room_id WITH =, reservation_period WITH &&); ``` @@ -203,7 +203,7 @@ CREATE TABLE locations ( ); -- Geometric queries -SELECT name FROM locations +SELECT name FROM locations WHERE coordinates <-> point(40.7128, -74.0060) < 10; -- Within 10 units -- GiST index for geometric data @@ -235,12 +235,12 @@ SELECT pg_size_pretty(pg_database_size(current_database())) as db_size; -- Table and index sizes SELECT schemaname, tablename, pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) as size -FROM pg_tables +FROM pg_tables ORDER BY pg_total_relation_size(schemaname||'.'||tablename) DESC; -- Index usage statistics -SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_fetch -FROM pg_stat_user_indexes +SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_web/fetch +FROM pg_stat_user_indexes WHERE idx_scan = 0; -- Unused indexes ``` @@ -258,13 +258,13 @@ WHERE idx_scan = 0; -- Unused indexes ```sql -- Identify slow queries SELECT query, calls, total_time, mean_time, rows -FROM pg_stat_statements -ORDER BY total_time DESC +FROM pg_stat_statements +ORDER BY total_time DESC LIMIT 10; -- Check index usage -SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_fetch -FROM pg_stat_user_indexes +SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_web/fetch +FROM pg_stat_user_indexes WHERE idx_scan = 0; ``` @@ -282,27 +282,27 @@ WHERE idx_scan = 0; SELECT * FROM products ORDER BY id OFFSET 10000 LIMIT 20; -- ✅ GOOD: Cursor-based pagination -SELECT * FROM products -WHERE id > $last_id -ORDER BY id +SELECT * FROM products +WHERE id > $last_id +ORDER BY id LIMIT 20; ``` ### Aggregation ```sql -- ❌ BAD: Inefficient grouping -SELECT user_id, COUNT(*) -FROM orders -WHERE order_date >= '2024-01-01' +SELECT user_id, COUNT(*) +FROM orders +WHERE order_date >= '2024-01-01' GROUP BY user_id; -- ✅ GOOD: Optimized with partial index -CREATE INDEX idx_orders_recent ON orders(user_id) +CREATE INDEX idx_orders_recent ON orders(user_id) WHERE order_date >= '2024-01-01'; -SELECT user_id, COUNT(*) -FROM orders -WHERE order_date >= '2024-01-01' +SELECT user_id, COUNT(*) +FROM orders +WHERE order_date >= '2024-01-01' GROUP BY user_id; ``` @@ -377,7 +377,7 @@ CREATE INDEX idx_table_column ON table(column); ### Window Functions ```sql -- Running totals and rankings -SELECT +SELECT product_id, order_date, amount, @@ -391,11 +391,11 @@ FROM sales; -- Recursive queries for hierarchical data WITH RECURSIVE category_tree AS ( SELECT id, name, parent_id, 1 as level - FROM categories + FROM categories WHERE parent_id IS NULL - + UNION ALL - + SELECT c.id, c.name, c.parent_id, ct.level + 1 FROM categories c JOIN category_tree ct ON c.parent_id = ct.id diff --git a/prompts/prompt-builder.prompt.md b/prompts/prompt-builder.prompt.md index f7e199613..068ac6dfc 100644 --- a/prompts/prompt-builder.prompt.md +++ b/prompts/prompt-builder.prompt.md @@ -8,7 +8,7 @@ description: 'Guide users through creating high-quality GitHub Copilot prompts w You are an expert prompt engineer specializing in GitHub Copilot prompt development with deep knowledge of: - Prompt engineering best practices and patterns -- VS Code Copilot customization capabilities +- VS Code Copilot customization capabilities - Effective persona design and task specification - Tool integration and front matter configuration - Output format optimization for AI consumption @@ -62,7 +62,7 @@ I will ask you targeted questions to gather all necessary information. After col Which tools does this prompt need? Common options include: - **File Operations**: `codebase`, `editFiles`, `search`, `problems` - **Execution**: `runCommands`, `runTasks`, `runTests`, `terminalLastCommand` -- **External**: `fetch`, `githubRepo`, `openSimpleBrowser` +- **External**: `web/fetch`, `githubRepo`, `openSimpleBrowser` - **Specialized**: `playwright`, `usages`, `vscodeAPI`, `extensions` - **Analysis**: `changes`, `findTestFiles`, `testFailure`, `searchResults` @@ -82,7 +82,7 @@ Which tools does this prompt need? Common options include: Based on analysis of existing prompts, I will ensure your prompt includes: ✅ **Clear Structure**: Well-organized sections with logical flow -✅ **Specific Instructions**: Actionable, unambiguous directions +✅ **Specific Instructions**: Actionable, unambiguous directions ✅ **Proper Context**: All necessary information for task completion ✅ **Tool Integration**: Appropriate tool selection for the task ✅ **Error Handling**: Guidance for edge cases and failures @@ -116,7 +116,7 @@ model: "[only if specific model required]" ## [Instructions Section] [Step-by-step instructions following established patterns] -## [Context/Input Section] +## [Context/Input Section] [Variable usage and context requirements] ## [Output Section] @@ -128,7 +128,7 @@ model: "[only if specific model required]" The generated prompt will follow patterns observed in high-quality prompts like: - **Comprehensive blueprints** (architecture-blueprint-generator) -- **Structured specifications** (create-github-action-workflow-specification) +- **Structured specifications** (create-github-action-workflow-specification) - **Best practice guides** (dotnet-best-practices, csharp-xunit) - **Implementation plans** (create-implementation-plan) - **Code generation** (playwright-generate-test) diff --git a/prompts/structured-autonomy-generate.prompt.md b/prompts/structured-autonomy-generate.prompt.md index e77616df6..18d514fc7 100644 --- a/prompts/structured-autonomy-generate.prompt.md +++ b/prompts/structured-autonomy-generate.prompt.md @@ -67,7 +67,7 @@ For the entire project described in the master plan, research and gather: - Testing strategies 4. **Official Documentation:** - - Fetch official docs for all major libraries/frameworks + - web/fetch official docs for all major libraries/frameworks - Document APIs, syntax, parameters - Note version-specific details - Record known limitations and gotchas diff --git a/prompts/suggest-awesome-github-copilot-agents.prompt.md b/prompts/suggest-awesome-github-copilot-agents.prompt.md index dc4a14d52..13ed277c5 100644 --- a/prompts/suggest-awesome-github-copilot-agents.prompt.md +++ b/prompts/suggest-awesome-github-copilot-agents.prompt.md @@ -1,7 +1,7 @@ --- agent: "agent" description: "Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository." -tools: ["edit", "search", "runCommands", "runTasks", "changes", "testFailure", "openSimpleBrowser", "fetch", "githubRepo", "todos"] +tools: ["edit", "search", "runCommands", "runTasks", "changes", "testFailure", "openSimpleBrowser", "web/fetch", "githubRepo", "todos"] --- # Suggest Awesome GitHub Copilot Custom Agents @@ -10,7 +10,7 @@ Analyze current repository context and suggest relevant Custom Agents files from ## Process -1. **Fetch Available Custom Agents**: Extract Custom Agents list and descriptions from [awesome-copilot README.agents.md](https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md). Must use `fetch` tool. +1. **web/fetch Available Custom Agents**: Extract Custom Agents list and descriptions from [awesome-copilot README.agents.md](https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md). Must use `web/fetch` tool. 2. **Scan Local Custom Agents**: Discover existing custom agent files in `.github/agents/` folder 3. **Extract Descriptions**: Read front matter from local custom agent files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -20,7 +20,7 @@ Analyze current repository context and suggest relevant Custom Agents files from 8. **Validate**: Ensure suggested agents would add value not already covered by existing agents 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom agents and similar local custom agents **AWAIT** user request to proceed with installation of specific custom agents. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested agents, automatically download and install individual agents to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested agents, automatically download and install individual agents to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md index a32038968..95a59db22 100644 --- a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +++ b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Custom Chat Modes @@ -10,7 +10,7 @@ Analyze current repository context and suggest relevant Custom Chat Modes files ## Process -1. **Fetch Available Custom Chat Modes**: Extract Custom Chat Modes list and descriptions from [awesome-copilot README.chatmodes.md](https://github.com/github/awesome-copilot/blob/main/docs/README.chatmodes.md). Must use `#fetch` tool. +1. **web/fetch Available Custom Chat Modes**: Extract Custom Chat Modes list and descriptions from [awesome-copilot README.chatmodes.md](https://github.com/github/awesome-copilot/blob/main/docs/README.chatmodes.md). Must use `#web/fetch` tool. 2. **Scan Local Custom Chat Modes**: Discover existing custom chat mode files in `.github/agents/` folder 3. **Extract Descriptions**: Read front matter from local custom chat mode files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -20,7 +20,7 @@ Analyze current repository context and suggest relevant Custom Chat Modes files 8. **Validate**: Ensure suggested chatmodes would add value not already covered by existing chatmodes 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom chat modes and similar local custom chat modes **AWAIT** user request to proceed with installation of specific custom chat modes. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested chat modes, automatically download and install individual chat modes to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested chat modes, automatically download and install individual chat modes to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-collections.prompt.md b/prompts/suggest-awesome-github-copilot-collections.prompt.md index 40472aa72..0f82410e4 100644 --- a/prompts/suggest-awesome-github-copilot-collections.prompt.md +++ b/prompts/suggest-awesome-github-copilot-collections.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Collections @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant collections from the [Gi ## Process -1. **Fetch Available Collections**: Extract collection list and descriptions from [awesome-copilot README.collections.md](https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md). Must use `#fetch` tool. +1. **web/fetch Available Collections**: Extract collection list and descriptions from [awesome-copilot README.collections.md](https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md). Must use `#web/fetch` tool. 2. **Scan Local Assets**: Discover existing prompt files in `prompts/`, instruction files in `instructions/`, and chat modes in `agents/` folders 3. **Extract Local Descriptions**: Read front matter from local asset files to understand existing capabilities 4. **Analyze Repository Context**: Review chat history, repository files, programming languages, frameworks, and current project needs @@ -18,7 +18,7 @@ Analyze current repository context and suggest relevant collections from the [Gi 7. **Present Collection Options**: Display relevant collections with descriptions, item counts, and rationale for suggestion 8. **Provide Usage Guidance**: Explain how the installed collection enhances the development workflow **AWAIT** user request to proceed with installation of specific collections. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -9. **Download Assets**: For requested collections, automatically download and install each individual asset (prompts, instructions, chat modes) to appropriate directories. Do NOT adjust content of the files. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +9. **Download Assets**: For requested collections, automatically download and install each individual asset (prompts, instructions, chat modes) to appropriate directories. Do NOT adjust content of the files. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria @@ -90,7 +90,7 @@ For each suggested collection, break down individual assets: When user confirms a collection installation: -1. **Fetch Collection Manifest**: Get collection YAML from awesome-copilot repository +1. **web/fetch Collection Manifest**: Get collection YAML from awesome-copilot repository 2. **Download Individual Assets**: For each item in collection: - Download raw file content from GitHub - Validate file format and front matter structure @@ -104,7 +104,7 @@ When user confirms a collection installation: ## Requirements -- Use `fetch` tool to get collections data from awesome-copilot repository +- Use `web/fetch` tool to get collections data from awesome-copilot repository - Use `githubRepo` tool to get individual asset content for download - Scan local file system for existing assets in `prompts/`, `instructions/`, and `agents/` directories - Read YAML front matter from local asset files to extract descriptions and capabilities @@ -120,7 +120,7 @@ When user confirms a collection installation: ## Collection Installation Workflow 1. **User Confirms Collection**: User selects specific collection(s) for installation -2. **Fetch Collection Manifest**: Download YAML manifest from awesome-copilot repository +2. **web/fetch Collection Manifest**: Download YAML manifest from awesome-copilot repository 3. **Asset Download Loop**: For each asset in collection: - Download raw content from GitHub repository - Validate file format and structure diff --git a/prompts/suggest-awesome-github-copilot-instructions.prompt.md b/prompts/suggest-awesome-github-copilot-instructions.prompt.md index be06e76e9..bcb999a0c 100644 --- a/prompts/suggest-awesome-github-copilot-instructions.prompt.md +++ b/prompts/suggest-awesome-github-copilot-instructions.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Instructions @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant copilot-instruction file ## Process -1. **Fetch Available Instructions**: Extract instruction list and descriptions from [awesome-copilot README.instructions.md](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md). Must use `#fetch` tool. +1. **web/fetch Available Instructions**: Extract instruction list and descriptions from [awesome-copilot README.instructions.md](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md). Must use `#web/fetch` tool. 2. **Scan Local Instructions**: Discover existing instruction files in `.github/instructions/` folder 3. **Extract Descriptions**: Read front matter from local instruction files to get descriptions and `applyTo` patterns 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -19,7 +19,7 @@ Analyze current repository context and suggest relevant copilot-instruction file 8. **Validate**: Ensure suggested instructions would add value not already covered by existing instructions 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot instructions and similar local instructions **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/instructions/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/instructions/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-prompts.prompt.md b/prompts/suggest-awesome-github-copilot-prompts.prompt.md index ab3a6b11f..c17e6b5da 100644 --- a/prompts/suggest-awesome-github-copilot-prompts.prompt.md +++ b/prompts/suggest-awesome-github-copilot-prompts.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Prompts @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant prompt files from the [G ## Process -1. **Fetch Available Prompts**: Extract prompt list and descriptions from [awesome-copilot README.prompts.md](https://github.com/github/awesome-copilot/blob/main/docs/README.prompts.md). Must use `#fetch` tool. +1. **web/fetch Available Prompts**: Extract prompt list and descriptions from [awesome-copilot README.prompts.md](https://github.com/github/awesome-copilot/blob/main/docs/README.prompts.md). Must use `#web/fetch` tool. 2. **Scan Local Prompts**: Discover existing prompt files in `.github/prompts/` folder 3. **Extract Descriptions**: Read front matter from local prompt files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -19,7 +19,7 @@ Analyze current repository context and suggest relevant prompt files from the [G 8. **Validate**: Ensure suggested prompts would add value not already covered by existing prompts 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot prompts and similar local prompts **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/prompts/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/prompts/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/tldr-prompt.prompt.md b/prompts/tldr-prompt.prompt.md index 479661de6..834283f89 100644 --- a/prompts/tldr-prompt.prompt.md +++ b/prompts/tldr-prompt.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create tldr summaries for GitHub Copilot files (prompts, agents, instructions, collections), MCP servers, or documentation from URLs and queries.' -tools: ['fetch', 'search/readFile', 'search', 'search/textSearch'] +tools: ['web/fetch', 'search/readFile', 'search', 'search/textSearch'] model: 'claude-sonnet-4' --- @@ -50,7 +50,7 @@ message specified in the Error Handling section. create tldr summaries for the first 5 and list the remaining files - Recognize file type by extension and use appropriate invocation syntax in examples * **URL** - Link to Copilot file, MCP server documentation, or Copilot documentation - - If one or more URLs are passed without `#fetch`, you MUST apply the fetch tool to all URLs + - If one or more URLs are passed without `#web/fetch`, you MUST apply the web/fetch tool to all URLs - If more than one URL (up to 5), you MUST create a `tldr` for each. If more than 5, you MUST create tldr summaries for the first 5 and list the remaining URLs * **Text data/query** - Raw text about Copilot features, MCP servers, or usage questions will be @@ -91,21 +91,21 @@ resolve to: 2. **Search strategy**: - For workspace files: Use search tools to find matching files in ${workspaceFolder} - - For GitHub awesome-copilot: Fetch raw content from https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/ - - For documentation: Use fetch tool with the most relevant URL from above + - For GitHub awesome-copilot: web/fetch raw content from https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/ + - For documentation: Use web/fetch tool with the most relevant URL from above -3. **Fetch content**: +3. **web/fetch content**: - Workspace files: Read using file tools - - GitHub awesome-copilot files: Fetch using raw.githubusercontent.com URLs - - Documentation URLs: Fetch using fetch tool + - GitHub awesome-copilot files: web/fetch using raw.githubusercontent.com URLs + - Documentation URLs: web/fetch using web/fetch tool 4. **Evaluate and respond**: - - Use the fetched content as the reference for completing the request + - Use the web/fetched content as the reference for completing the request - Adapt response verbosity based on chat context ### Unambiguous Queries -If the user **DOES** provide a specific URL or file, skip searching and fetch/read that directly. +If the user **DOES** provide a specific URL or file, skip searching and web/fetch/read that directly. ### Optional @@ -124,7 +124,7 @@ If the user **DOES** provide a specific URL or file, skip searching and fetch/re /tldr-prompt #file:{{name.collections.md}} # With URLs -/tldr-prompt #fetch {{https://example.com/docs}} +/tldr-prompt #web/fetch {{https://example.com/docs}} # AMBIGUOUS QUERIES /tldr-prompt "{{topic or question}}" @@ -149,7 +149,7 @@ Error: Missing required input. You MUST provide one of the following: 1. A Copilot file: /tldr-prompt #file:{{name.prompt.md | name.agent.md | name.instructions.md | name.collections.md}} -2. A URL: /tldr-prompt #fetch {{https://example.com/docs}} +2. A URL: /tldr-prompt #web/fetch {{https://example.com/docs}} 3. A search query: /tldr-prompt "{{topic}}" (e.g., "MCP servers", "inline chat", "chat tools") Please retry with one of these inputs. @@ -184,7 +184,7 @@ Found: - https://github.com/github/awesome-copilot/blob/main/prompts/java-docs.prompt.md - https://github.com/github/awesome-copilot/blob/main/prompts/java-junit.prompt.md -Now let me fetch the raw content: +Now let me web/fetch the raw content: - https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/prompts/java-docs.prompt.md - https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/prompts/java-junit.prompt.md @@ -212,13 +212,13 @@ I'll read the file typescript-mcp-server-generator.prompt.md and create a tldr s **User** ```bash -/tldr-prompt "How do MCP servers work?" #fetch https://code.visualstudio.com/docs/copilot/customization/mcp-servers +/tldr-prompt "How do MCP servers work?" #web/fetch https://code.visualstudio.com/docs/copilot/customization/mcp-servers ``` **Agent** ```text -I'll fetch the MCP server documentation from https://code.visualstudio.com/docs/copilot/customization/mcp-servers +I'll web/fetch the MCP server documentation from https://code.visualstudio.com/docs/copilot/customization/mcp-servers and create a tldr summary of how MCP servers work. ``` @@ -232,10 +232,10 @@ message from Error Handling section - Determine file type (.prompt.md, .agent.md, .instructions.md, .collections.md) - Recognize if query is about MCP servers, inline chat, chat view, or general Copilot features - Note if you're in inline chat (Ctrl+I) or chat view context -3. **Fetch Content**: +3. **web/fetch Content**: - For files: Read the file(s) using available file tools - - For URLs: Fetch content using `#tool:fetch` - - For queries: Apply URL Resolver strategy to find and fetch relevant content + - For URLs: web/fetch content using `#tool:web/fetch` + - For queries: Apply URL Resolver strategy to find and web/fetch relevant content 4. **Analyze Content**: Extract the file's/documentation's purpose, key parameters, and primary use cases 5. **Generate tldr**: Create summary using the template format below with correct invocation syntax diff --git a/prompts/update-avm-modules-in-bicep.prompt.md b/prompts/update-avm-modules-in-bicep.prompt.md index b603a8800..23e67508e 100644 --- a/prompts/update-avm-modules-in-bicep.prompt.md +++ b/prompts/update-avm-modules-in-bicep.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update Azure Verified Modules (AVM) to latest versions in Bicep files.' -tools: ['search/codebase', 'think', 'changes', 'fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] +tools: ['search/codebase', 'think', 'changes', 'web/fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] --- # Update Azure Verified Modules in Bicep Files @@ -11,16 +11,16 @@ Update Bicep file `${file}` to use latest Azure Verified Module (AVM) versions. 1. **Scan**: Extract AVM modules and current versions from `${file}` 1. **Identify**: List all unique AVM modules used by matching `avm/res/{service}/{resource}` using `#search` tool -1. **Check**: Use `#fetch` tool to get latest version of each AVM module from MCR: `https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list` +1. **Check**: Use `#web/fetch` tool to get latest version of each AVM module from MCR: `https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list` 1. **Compare**: Parse semantic versions to identify AVM modules needing update -1. **Review**: For breaking changes, use `#fetch` tool to get docs from: `https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource}` +1. **Review**: For breaking changes, use `#web/fetch` tool to get docs from: `https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource}` 1. **Update**: Apply version updates and parameter changes using `#editFiles` tool 1. **Validate**: Run `bicep lint` and `bicep build` using `#runCommands` tool to ensure compliance. 1. **Output**: Summarize changes in a table format with summary of updates below. ## Tool Usage -Always use tools `#search`, `#searchResults`,`#fetch`, `#editFiles`, `#runCommands`, `#todos` if available. Avoid writing code to perform tasks. +Always use tools `#search`, `#searchResults`,`#web/fetch`, `#editFiles`, `#runCommands`, `#todos` if available. Avoid writing code to perform tasks. ## Breaking Change Policy diff --git a/prompts/update-implementation-plan.prompt.md b/prompts/update-implementation-plan.prompt.md index 3ff01b07f..8de4eab89 100644 --- a/prompts/update-implementation-plan.prompt.md +++ b/prompts/update-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing implementation plan file with new or update requirements to provide new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Implementation Plan diff --git a/prompts/update-llms.prompt.md b/prompts/update-llms.prompt.md index 0e3f4e217..bbeab69d4 100644 --- a/prompts/update-llms.prompt.md +++ b/prompts/update-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update the llms.txt file in the root folder to reflect changes in documentation or specifications following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update LLMs.txt File diff --git a/prompts/update-markdown-file-index.prompt.md b/prompts/update-markdown-file-index.prompt.md index 8078097af..08f98a676 100644 --- a/prompts/update-markdown-file-index.prompt.md +++ b/prompts/update-markdown-file-index.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update a markdown file section with an index/table of files from a specified folder.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Markdown File Index diff --git a/prompts/update-oo-component-documentation.prompt.md b/prompts/update-oo-component-documentation.prompt.md index c3857e4a1..5300f0f70 100644 --- a/prompts/update-oo-component-documentation.prompt.md +++ b/prompts/update-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update existing object-oriented component documentation following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Standard OO Component Documentation diff --git a/prompts/update-specification.prompt.md b/prompts/update-specification.prompt.md index 0f031ae10..15c9f392c 100644 --- a/prompts/update-specification.prompt.md +++ b/prompts/update-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing specification file for the solution, optimized for Generative AI consumption based on new requirements or updates to any existing code.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Specification diff --git a/prompts/write-coding-standards-from-file.prompt.md b/prompts/write-coding-standards-from-file.prompt.md index 041f5e5e3..fba39112a 100644 --- a/prompts/write-coding-standards-from-file.prompt.md +++ b/prompts/write-coding-standards-from-file.prompt.md @@ -1,7 +1,7 @@ --- agent: "agent" description: "Write a coding standards document for a project using the coding styles from the file(s) and/or folder(s) passed as arguments in the prompt." -tools: ['createFile', 'editFiles', 'fetch', 'githubRepo', 'search', 'testFailure'] +tools: ['createFile', 'editFiles', 'web/fetch', 'githubRepo', 'search', 'testFailure'] --- # Write Coding Standards From File @@ -10,7 +10,7 @@ Use the existing syntax of the file(s) to establish the standards and style guid ## Rules and Configuration -Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. +Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. Parameters for the prompt have a text definition. There is one required parameter **`${fileName}`**, and several optional parameters **`${folderName}`**, **`${instructions}`**, and any **`[configVariableAsParameter]`**. @@ -21,7 +21,7 @@ Parameters for the prompt have a text definition. There is one required paramete * addToREADMEInsertions = ["atBegin", "middle", "beforeEnd", "bestFitUsingContext"]; - Default to **beforeEnd**. * createNewFile = true; -* fetchStyleURL = true; +* web/fetchStyleURL = true; * findInconsistencies = true; * fixInconsistencies = true; * newFileName = ["CONTRIBUTING.md", "STYLE.md", "CODE_OF_CONDUCT.md", "CODING_STANDARDS.md", "DEVELOPING.md", "CONTRIBUTION_GUIDE.md", "GUIDELINES.md", "PROJECT_STANDARDS.md", "BEST_PRACTICES.md", "HACKING.md"]; @@ -87,10 +87,10 @@ If any of the variable names are passed to prompt as-is, or as a similar but cle * Create a new file using the value, or one of the possible values, from `${newFileName}`. * If true, toggle both `${outputSpecToPrompt}` and `${addToREADME}` to false. -### `${fetchStyleURL} == true` +### `${web/fetchStyleURL} == true` -* Additionally use the data fetched from the links nested under level three heading `### Fetch Links` as context for creating standards, specifications, and styling data for the new file, prompt, or `README.md`. -* For each relevant item in `### Fetch Links`, run `#fetch ${item}`. +* Additionally use the data web/fetched from the links nested under level three heading `### web/fetch Links` as context for creating standards, specifications, and styling data for the new file, prompt, or `README.md`. +* For each relevant item in `### web/fetch Links`, run `#web/fetch ${item}`. ### `${findInconsistencies} == true` @@ -132,11 +132,11 @@ If any of the variable names are passed to prompt as-is, or as a similar but cle * Use the custom prompt, instructions, template, or other data passed as guiding template when composing the data for coding standards. -## **if** `${fetchStyleURL} == true` +## **if** `${web/fetchStyleURL} == true` -Depending on the programming language, for each link in list below, run `#fetch (URL)`, if programming language is `${fileName} == [ Style Guide]`. +Depending on the programming language, for each link in list below, run `#web/fetch (URL)`, if programming language is `${fileName} == [ Style Guide]`. -### Fetch Links +### web/fetch Links - [C Style Guide](https://users.ece.cmu.edu/~eno/coding/CCodingStandard.html) - [C# Style Guide](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/coding-conventions) @@ -222,7 +222,7 @@ Depending on the programming language, for each link in list below, run `#fetch # Style Guide - This document defines the style and conventions used in this project. + This document defines the style and conventions used in this project. All contributions should follow these rules unless otherwise noted. ## 1. General Code Style @@ -310,7 +310,7 @@ Depending on the programming language, for each link in list below, run `#fetch ## 8. Changes to This Guide - Style evolves. + Style evolves. Propose improvements by opening an issue or sending a patch updating this document. ``` -``` \ No newline at end of file +``` From 5afc90e633da52f255abe1fa45da5d2797c8f896 Mon Sep 17 00:00:00 2001 From: Jon Corbin Date: Mon, 12 Jan 2026 14:03:48 -0500 Subject: [PATCH 24/43] Revert "fetch -> web/fetch for everything" This reverts commit ca790b171619f827da54e647dab9a2c4a8a5a1bb. --- agents/accessibility.agent.md | 2 +- agents/aem-frontend-specialist.agent.md | 2 +- agents/bicep-implement.agent.md | 2 +- agents/bicep-plan.agent.md | 2 +- agents/critical-thinking.agent.md | 2 +- agents/csharp-dotnet-janitor.agent.md | 2 +- agents/custom-agent-foundry.agent.md | 2 +- agents/demonstrate-understanding.agent.md | 2 +- agents/dotnet-upgrade.agent.md | 4 +- agents/drupal-expert.agent.md | 74 +++++------ agents/expert-cpp-software-engineer.agent.md | 2 +- agents/gilfoyle.agent.md | 2 +- agents/hlbpa.agent.md | 2 +- agents/laravel-expert-agent.agent.md | 2 +- agents/mentor.agent.md | 2 +- agents/pimcore-expert.agent.md | 46 +++---- agents/principal-software-engineer.agent.md | 2 +- agents/prompt-builder.agent.md | 2 +- .../se-system-architecture-reviewer.agent.md | 2 +- agents/se-technical-writer.agent.md | 2 +- agents/se-ux-ui-designer.agent.md | 2 +- agents/search-ai-optimization-expert.agent.md | 2 +- agents/semantic-kernel-dotnet.agent.md | 2 +- agents/semantic-kernel-python.agent.md | 2 +- agents/shopify-expert.agent.md | 20 +-- agents/simple-app-idea-generator.agent.md | 2 +- agents/software-engineer-agent-v1.agent.md | 2 +- agents/specification.agent.md | 2 +- agents/tech-debt-remediation-plan.agent.md | 2 +- agents/technical-content-evaluator.agent.md | 2 +- agents/voidbeast-gpt41enhanced.agent.md | 8 +- agents/wg-code-alchemist.agent.md | 2 +- agents/wg-code-sentinel.agent.md | 2 +- prompts/add-educational-comments.prompt.md | 6 +- ...architecture-blueprint-generator.prompt.md | 22 ++-- prompts/convert-plaintext-to-md.prompt.md | 10 +- prompts/cosmosdb-datamodeling.prompt.md | 72 +++++------ ...te-architectural-decision-record.prompt.md | 2 +- ...ub-action-workflow-specification.prompt.md | 8 +- prompts/create-implementation-plan.prompt.md | 2 +- prompts/create-llms.prompt.md | 2 +- ...reate-oo-component-documentation.prompt.md | 2 +- prompts/create-specification.prompt.md | 2 +- prompts/create-technical-spike.prompt.md | 6 +- prompts/create-tldr-page.prompt.md | 14 +- prompts/documentation-writer.prompt.md | 2 +- ...er-structure-blueprint-generator.prompt.md | 120 +++++++++--------- prompts/github-copilot-starter.prompt.md | 20 +-- prompts/java-springboot.prompt.md | 2 +- .../mcp-create-declarative-agent.prompt.md | 6 +- prompts/model-recommendation.prompt.md | 10 +- prompts/playwright-explore-website.prompt.md | 2 +- prompts/playwright-generate-test.prompt.md | 2 +- prompts/postgresql-optimization.prompt.md | 76 +++++------ prompts/prompt-builder.prompt.md | 10 +- .../structured-autonomy-generate.prompt.md | 2 +- ...st-awesome-github-copilot-agents.prompt.md | 6 +- ...awesome-github-copilot-chatmodes.prompt.md | 6 +- ...esome-github-copilot-collections.prompt.md | 12 +- ...some-github-copilot-instructions.prompt.md | 6 +- ...t-awesome-github-copilot-prompts.prompt.md | 6 +- prompts/tldr-prompt.prompt.md | 34 ++--- prompts/update-avm-modules-in-bicep.prompt.md | 8 +- prompts/update-implementation-plan.prompt.md | 2 +- prompts/update-llms.prompt.md | 2 +- prompts/update-markdown-file-index.prompt.md | 2 +- ...pdate-oo-component-documentation.prompt.md | 2 +- prompts/update-specification.prompt.md | 2 +- ...write-coding-standards-from-file.prompt.md | 24 ++-- 69 files changed, 360 insertions(+), 360 deletions(-) diff --git a/agents/accessibility.agent.md b/agents/accessibility.agent.md index 69cd49fd9..f2bf6d1c1 100644 --- a/agents/accessibility.agent.md +++ b/agents/accessibility.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for web accessibility (WCAG 2.1/2.2), inclusive UX, and a11y testing' model: GPT-4.1 -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Accessibility Expert diff --git a/agents/aem-frontend-specialist.agent.md b/agents/aem-frontend-specialist.agent.md index 7f172aeb7..c0964644d 100644 --- a/agents/aem-frontend-specialist.agent.md +++ b/agents/aem-frontend-specialist.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for developing AEM components using HTL, Tailwind CSS, and Figma-to-code workflows with design system integration' model: 'GPT-4.1' -tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] +tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] --- # AEM Front-End Specialist diff --git a/agents/bicep-implement.agent.md b/agents/bicep-implement.agent.md index 62c7659fc..56c7b3508 100644 --- a/agents/bicep-implement.agent.md +++ b/agents/bicep-implement.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as an Azure Bicep Infrastructure as Code coding specialist that creates Bicep templates.' tools: - [ 'edit/editFiles', 'web/fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure as Code coding Specialist diff --git a/agents/bicep-plan.agent.md b/agents/bicep-plan.agent.md index 23c83a057..26e7c8858 100644 --- a/agents/bicep-plan.agent.md +++ b/agents/bicep-plan.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as implementation planner for your Azure Bicep Infrastructure as Code task.' tools: - [ 'edit/editFiles', 'web/fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure Planning diff --git a/agents/critical-thinking.agent.md b/agents/critical-thinking.agent.md index 0d0568895..4fa9da1e6 100644 --- a/agents/critical-thinking.agent.md +++ b/agents/critical-thinking.agent.md @@ -1,6 +1,6 @@ --- description: 'Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes.' -tools: ['codebase', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] +tools: ['codebase', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] --- # Critical thinking mode instructions diff --git a/agents/csharp-dotnet-janitor.agent.md b/agents/csharp-dotnet-janitor.agent.md index 3273fc354..a7fd15f31 100644 --- a/agents/csharp-dotnet-janitor.agent.md +++ b/agents/csharp-dotnet-janitor.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # C#/.NET Janitor diff --git a/agents/custom-agent-foundry.agent.md b/agents/custom-agent-foundry.agent.md index 58ebec9a8..576d421cd 100644 --- a/agents/custom-agent-foundry.agent.md +++ b/agents/custom-agent-foundry.agent.md @@ -24,7 +24,7 @@ When a user wants to create a custom agent, start by understanding: ### 2. Custom Agent Design Principles **Tool Selection Strategy:** -- **Read-only agents** (planning, research, review): Use `['search', 'web/fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` +- **Read-only agents** (planning, research, review): Use `['search', 'fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` - **Implementation agents** (coding, refactoring): Add `['replace_string_in_file', 'multi_replace_string_in_file', 'create_file', 'run_in_terminal']` - **Testing agents**: Include `['run_notebook_cell', 'test_failure', 'run_in_terminal']` - **Deployment agents**: Include `['run_in_terminal', 'create_and_run_task', 'get_errors']` diff --git a/agents/demonstrate-understanding.agent.md b/agents/demonstrate-understanding.agent.md index 49731de47..63dc76440 100644 --- a/agents/demonstrate-understanding.agent.md +++ b/agents/demonstrate-understanding.agent.md @@ -1,6 +1,6 @@ --- description: 'Validate user understanding of code, design patterns, and implementation details through guided questioning.' -tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Demonstrate Understanding mode instructions diff --git a/agents/dotnet-upgrade.agent.md b/agents/dotnet-upgrade.agent.md index c92f8fdeb..fe6472c38 100644 --- a/agents/dotnet-upgrade.agent.md +++ b/agents/dotnet-upgrade.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'web/fetch', 'microsoft.docs.mcp'] +tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'fetch', 'microsoft.docs.mcp'] --- # .NET Upgrade Collection @@ -20,7 +20,7 @@ Discover and plan your .NET upgrade journey! mode: dotnet-upgrade title: Analyze current .NET framework versions and create upgrade plan --- -Analyze the repository and list each project's current TargetFramework +Analyze the repository and list each project's current TargetFramework along with the latest available LTS version from Microsoft's release schedule. Create an upgrade strategy prioritizing least-dependent projects first. ``` diff --git a/agents/drupal-expert.agent.md b/agents/drupal-expert.agent.md index 7f9d5554f..2555266fb 100644 --- a/agents/drupal-expert.agent.md +++ b/agents/drupal-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for Drupal development, architecture, and best practices using PHP 8.3+ and modern Drupal patterns' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- # Drupal Expert @@ -157,11 +157,11 @@ use Drupal\Core\Entity\EntityTypeManagerInterface; use Symfony\Component\DependencyInjection\ContainerInterface; class DecoratedEntityTypeManager implements EntityTypeManagerInterface { - + public function __construct( protected EntityTypeManagerInterface $entityTypeManager ) {} - + // Implement all interface methods, delegating to wrapped service // Add custom logic where needed } @@ -190,17 +190,17 @@ use Symfony\Component\HttpKernel\Event\RequestEvent; use Symfony\Component\HttpKernel\KernelEvents; class MyModuleSubscriber implements EventSubscriberInterface { - + public function __construct( protected RouteMatchInterface $routeMatch ) {} - + public static function getSubscribedEvents(): array { return [ KernelEvents::REQUEST => ['onRequest', 100], ]; } - + public function onRequest(RequestEvent $event): void { // Custom logic on every request } @@ -222,7 +222,7 @@ use Drupal\Component\Annotation\Plugin; * @Annotation */ class CustomProcessor extends Plugin { - + public string $id; public string $label; public string $description = ''; @@ -263,7 +263,7 @@ use Drupal\Core\Queue\QueueWorkerBase; * ) */ class MyModuleProcessor extends QueueWorkerBase { - + public function processItem($data): void { // Process queue item } @@ -322,10 +322,10 @@ use Drupal\Core\Field\BaseFieldDefinition; * ) */ class Product extends ContentEntityBase { - + public static function baseFieldDefinitions(EntityTypeInterface $entity_type): array { $fields = parent::baseFieldDefinitions($entity_type); - + $fields['name'] = BaseFieldDefinition::create('string') ->setLabel(t('Name')) ->setRequired(TRUE) @@ -335,7 +335,7 @@ class Product extends ContentEntityBase { ]) ->setDisplayConfigurable('form', TRUE) ->setDisplayConfigurable('view', TRUE); - + $fields['price'] = BaseFieldDefinition::create('decimal') ->setLabel(t('Price')) ->setSetting('precision', 10) @@ -346,15 +346,15 @@ class Product extends ContentEntityBase { ]) ->setDisplayConfigurable('form', TRUE) ->setDisplayConfigurable('view', TRUE); - + $fields['created'] = BaseFieldDefinition::create('created') ->setLabel(t('Created')) ->setDescription(t('The time that the entity was created.')); - + $fields['changed'] = BaseFieldDefinition::create('changed') ->setLabel(t('Changed')) ->setDescription(t('The time that the entity was last edited.')); - + return $fields; } } @@ -383,7 +383,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * ) */ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInterface { - + public function __construct( array $configuration, $plugin_id, @@ -392,7 +392,7 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt ) { parent::__construct($configuration, $plugin_id, $plugin_definition); } - + public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition): self { return new self( $configuration, @@ -401,13 +401,13 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt $container->get('entity_type.manager') ); } - + public function defaultConfiguration(): array { return [ 'count' => 5, ] + parent::defaultConfiguration(); } - + public function blockForm($form, FormStateInterface $form_state): array { $form['count'] = [ '#type' => 'number', @@ -418,23 +418,23 @@ class RecentProductsBlock extends BlockBase implements ContainerFactoryPluginInt ]; return $form; } - + public function blockSubmit($form, FormStateInterface $form_state): void { $this->configuration['count'] = $form_state->getValue('count'); } - + public function build(): array { $count = $this->configuration['count']; - + $storage = $this->entityTypeManager->getStorage('product'); $query = $storage->getQuery() ->accessCheck(TRUE) ->sort('created', 'DESC') ->range(0, $count); - + $ids = $query->execute(); $products = $storage->loadMultiple($ids); - + return [ '#theme' => 'item_list', '#items' => array_map( @@ -467,9 +467,9 @@ use Psr\Log\LoggerInterface; * Service for managing products. */ class ProductManager { - + protected LoggerInterface $logger; - + public function __construct( protected EntityTypeManagerInterface $entityTypeManager, protected ConfigFactoryInterface $configFactory, @@ -477,7 +477,7 @@ class ProductManager { ) { $this->logger = $loggerFactory->get('mymodule'); } - + /** * Creates a new product. * @@ -492,13 +492,13 @@ class ProductManager { $product = $this->entityTypeManager ->getStorage('product') ->create($values); - + $product->save(); - + $this->logger->info('Product created: @name', [ '@name' => $product->label(), ]); - + return $product; } catch (\Exception $e) { @@ -537,23 +537,23 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * Returns responses for My Module routes. */ class ProductController extends ControllerBase { - + public function __construct( protected ProductManager $productManager ) {} - + public static function create(ContainerInterface $container): self { return new self( $container->get('mymodule.product_manager') ); } - + /** * Displays a list of products. */ public function list(): array { $products = $this->productManager->getRecentProducts(10); - + return [ '#theme' => 'mymodule_product_list', '#products' => $products, @@ -594,15 +594,15 @@ use Drupal\mymodule\Entity\Product; * @group mymodule */ class ProductTest extends KernelTestBase { - + protected static $modules = ['mymodule', 'user', 'system']; - + protected function setUp(): void { parent::setUp(); $this->installEntitySchema('product'); $this->installEntitySchema('user'); } - + /** * Tests product creation. */ @@ -612,7 +612,7 @@ class ProductTest extends KernelTestBase { 'price' => 99.99, ]); $product->save(); - + $this->assertNotEmpty($product->id()); $this->assertEquals('Test Product', $product->label()); $this->assertEquals(99.99, $product->get('price')->value); diff --git a/agents/expert-cpp-software-engineer.agent.md b/agents/expert-cpp-software-engineer.agent.md index 7050cde3c..cbb1596fb 100644 --- a/agents/expert-cpp-software-engineer.agent.md +++ b/agents/expert-cpp-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide expert C++ software engineering guidance using modern C++ and industry best practices.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] --- # Expert C++ software engineer mode instructions diff --git a/agents/gilfoyle.agent.md b/agents/gilfoyle.agent.md index 269614c05..2ffd7fff4 100644 --- a/agents/gilfoyle.agent.md +++ b/agents/gilfoyle.agent.md @@ -1,6 +1,6 @@ --- description: 'Code review and analysis with the sardonic wit and technical elitism of Bertram Gilfoyle from Silicon Valley. Prepare for brutal honesty about your code.' -tools: ['changes', 'codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] --- # Gilfoyle Code Review Mode diff --git a/agents/hlbpa.agent.md b/agents/hlbpa.agent.md index cdedf3c96..decdfe6c0 100644 --- a/agents/hlbpa.agent.md +++ b/agents/hlbpa.agent.md @@ -5,7 +5,7 @@ tools: - 'search/codebase' - 'changes' - 'edit/editFiles' - - 'web/fetch' + - 'fetch' - 'findTestFiles' - 'githubRepo' - 'runCommands' diff --git a/agents/laravel-expert-agent.agent.md b/agents/laravel-expert-agent.agent.md index 8badba2e5..c066d7c15 100644 --- a/agents/laravel-expert-agent.agent.md +++ b/agents/laravel-expert-agent.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Laravel development assistant specializing in modern Laravel 12+ applications with Eloquent, Artisan, testing, and best practices' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems', 'search'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems', 'search'] --- # Laravel Expert Agent diff --git a/agents/mentor.agent.md b/agents/mentor.agent.md index c6531ad6b..69cb457d4 100644 --- a/agents/mentor.agent.md +++ b/agents/mentor.agent.md @@ -1,6 +1,6 @@ --- description: 'Help mentor the engineer by providing guidance and support.' -tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Mentor mode instructions diff --git a/agents/pimcore-expert.agent.md b/agents/pimcore-expert.agent.md index 3d941deac..8e915e3b6 100644 --- a/agents/pimcore-expert.agent.md +++ b/agents/pimcore-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Pimcore development assistant specializing in CMS, DAM, PIM, and E-Commerce solutions with Symfony integration' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- # Pimcore Expert @@ -252,7 +252,7 @@ class Car extends CarGenerated */ public function getOSName(): ?string { - return ($this->getManufacturer() ? ($this->getManufacturer()->getName() . ' ') : null) + return ($this->getManufacturer() ? ($this->getManufacturer()->getName() . ' ') : null) . $this->getName(); } @@ -271,7 +271,7 @@ class Car extends CarGenerated /** * Get all additional product images - * + * * @return Hotspotimage[] */ public function getAdditionalImages(): array @@ -306,7 +306,7 @@ class Car extends CarGenerated /** * Get color variants for this product - * + * * @return self[] */ public function getColorVariants(): array @@ -319,7 +319,7 @@ class Car extends CarGenerated $variants = []; foreach ($parent->getChildren() as $sibling) { - if ($sibling instanceof self && + if ($sibling instanceof self && $sibling->getObjectType() === self::OBJECT_TYPE_ACTUAL_CAR) { $variants[] = $sibling; } @@ -411,7 +411,7 @@ class ProductController extends FrontendController ProductLinkGenerator $productLinkGenerator ): Response { $term = trim(strip_tags($request->query->get('term', ''))); - + if (empty($term)) { return $this->json([]); } @@ -491,19 +491,19 @@ class ProductGrid extends AbstractTemplateAreabrick public function action(Info $info): ?Response { $editable = $info->getEditable(); - + // Get configuration from brick $category = $editable->getElement('category'); $limit = $editable->getElement('limit')?->getData() ?? 12; - + // Load products (simplified - use proper service in production) $products = []; if ($category) { // Load products from category } - + $info->setParam('products', $products); - + return null; } } @@ -527,13 +527,13 @@ class ProductGrid extends AbstractTemplateAreabrick ], 'width': 200 }) }} - + {{ pimcore_numeric('limit', { 'width': 100, 'minValue': 1, 'maxValue': 24 }) }} - + {{ pimcore_manyToManyObjectRelation('category', { 'types': ['object'], 'classes': ['Category'], @@ -549,17 +549,17 @@ class ProductGrid extends AbstractTemplateAreabrick
{% if product.mainImage %} - {{ product.OSName }} {% endif %} - +

{{ product.OSName }}

- +
{{ product.OSPrice|number_format(2, '.', ',') }} EUR
@@ -699,16 +699,16 @@ pimcore_ecommerce_framework: enabled: true config_id: default_mysql worker_id: default - + # Pricing configuration pricing_manager: enabled: true pricing_manager_id: default - + # Cart configuration cart: factory_type: Pimcore\Bundle\EcommerceFrameworkBundle\CartManager\CartFactory - + # Checkout configuration checkout_manager: factory_type: Pimcore\Bundle\EcommerceFrameworkBundle\CheckoutManager\CheckoutManagerFactory @@ -716,17 +716,17 @@ pimcore_ecommerce_framework: default: payment: provider: Datatrans - + # Order manager order_manager: enabled: true - + # Price systems price_systems: default: price_system: id: Pimcore\Bundle\EcommerceFrameworkBundle\PriceSystem\AttributePriceSystem - + # Availability systems availability_systems: default: @@ -765,7 +765,7 @@ class ImportProductsCommand extends AbstractCommand // Load data from source $products = $this->loadProductData(); - + $progressBar = $io->createProgressBar(count($products)); $progressBar->start(); @@ -794,7 +794,7 @@ class ImportProductsCommand extends AbstractCommand private function importProduct(array $data): void { $product = Car::getByPath('/products/' . $data['sku']); - + if (!$product) { $product = new Car(); $product->setParent(Car::getByPath('/products')); diff --git a/agents/principal-software-engineer.agent.md b/agents/principal-software-engineer.agent.md index 68875d4cd..82056fc44 100644 --- a/agents/principal-software-engineer.agent.md +++ b/agents/principal-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Principal software engineer mode instructions diff --git a/agents/prompt-builder.agent.md b/agents/prompt-builder.agent.md index 5e1a76eff..cb34c06e0 100644 --- a/agents/prompt-builder.agent.md +++ b/agents/prompt-builder.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert prompt engineering and validation system for creating high-quality prompts - Brought to you by microsoft/edge-ai' -tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] +tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] --- # Prompt Builder Instructions diff --git a/agents/se-system-architecture-reviewer.agent.md b/agents/se-system-architecture-reviewer.agent.md index 7ac77dec7..3942b3e84 100644 --- a/agents/se-system-architecture-reviewer.agent.md +++ b/agents/se-system-architecture-reviewer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Architect' description: 'System architecture review specialist with Well-Architected frameworks, design validation, and scalability analysis for AI and distributed systems' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- # System Architecture Reviewer diff --git a/agents/se-technical-writer.agent.md b/agents/se-technical-writer.agent.md index 5b4e8ed73..4fcda734d 100644 --- a/agents/se-technical-writer.agent.md +++ b/agents/se-technical-writer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Tech Writer' description: 'Technical writing specialist for creating developer documentation, technical blogs, tutorials, and educational content' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- # Technical Writer diff --git a/agents/se-ux-ui-designer.agent.md b/agents/se-ux-ui-designer.agent.md index d1ee41aa7..6b144a95f 100644 --- a/agents/se-ux-ui-designer.agent.md +++ b/agents/se-ux-ui-designer.agent.md @@ -2,7 +2,7 @@ name: 'SE: UX Designer' description: 'Jobs-to-be-Done analysis, user journey mapping, and UX research artifacts for Figma and design workflows' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] --- # UX/UI Designer diff --git a/agents/search-ai-optimization-expert.agent.md b/agents/search-ai-optimization-expert.agent.md index 123fb7a82..50dd32f18 100644 --- a/agents/search-ai-optimization-expert.agent.md +++ b/agents/search-ai-optimization-expert.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert guidance for modern search optimization: SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO) with AI-ready content strategies' -tools: ['codebase', 'web/fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] +tools: ['codebase', 'fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] --- # Search & AI Optimization Expert diff --git a/agents/semantic-kernel-dotnet.agent.md b/agents/semantic-kernel-dotnet.agent.md index a93dfc715..02efb99f2 100644 --- a/agents/semantic-kernel-dotnet.agent.md +++ b/agents/semantic-kernel-dotnet.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Semantic Kernel .NET mode instructions diff --git a/agents/semantic-kernel-python.agent.md b/agents/semantic-kernel-python.agent.md index eb680ddcd..39fb04b72 100644 --- a/agents/semantic-kernel-python.agent.md +++ b/agents/semantic-kernel-python.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the Python version of Semantic Kernel.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] --- # Semantic Kernel Python mode instructions diff --git a/agents/shopify-expert.agent.md b/agents/shopify-expert.agent.md index 1ef3e7b96..8b5cb4f30 100644 --- a/agents/shopify-expert.agent.md +++ b/agents/shopify-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Shopify development assistant specializing in theme development, Liquid templating, app development, and Shopify APIs' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] --- # Shopify Expert @@ -452,10 +452,10 @@ class CartManager {

${item.product_title}

${item.variant_title}

${this.formatMoney(item.final_line_price)}

- @@ -561,23 +561,23 @@ import { json } from "@remix-run/node"; export async function loader({ request }) { const url = new URL(request.url); const shop = url.searchParams.get("shop"); - + // Verify the request is from Shopify // Implement signature verification here - + // Your custom logic const data = await fetchCustomData(shop); - + return json(data); } export async function action({ request }) { const formData = await request.formData(); const shop = formData.get("shop"); - + // Handle POST requests const result = await processCustomAction(formData); - + return json(result); } ``` diff --git a/agents/simple-app-idea-generator.agent.md b/agents/simple-app-idea-generator.agent.md index 91332d41b..970703a31 100644 --- a/agents/simple-app-idea-generator.agent.md +++ b/agents/simple-app-idea-generator.agent.md @@ -1,6 +1,6 @@ --- description: 'Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation.' -tools: ['changes', 'codebase', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] +tools: ['changes', 'codebase', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] --- # Idea Generator mode instructions diff --git a/agents/software-engineer-agent-v1.agent.md b/agents/software-engineer-agent-v1.agent.md index b4b7bafce..39cfe17b1 100644 --- a/agents/software-engineer-agent-v1.agent.md +++ b/agents/software-engineer-agent-v1.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert-level software engineering agent. Deliver production-ready, maintainable code. Execute systematically and specification-driven. Document comprehensively. Operate autonomously and adaptively.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Software Engineer Agent v1 diff --git a/agents/specification.agent.md b/agents/specification.agent.md index b120dfe52..8ae88d58b 100644 --- a/agents/specification.agent.md +++ b/agents/specification.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate or update specification documents for new or existing functionality.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Specification mode instructions diff --git a/agents/tech-debt-remediation-plan.agent.md b/agents/tech-debt-remediation-plan.agent.md index 6941896ce..5e96c3c21 100644 --- a/agents/tech-debt-remediation-plan.agent.md +++ b/agents/tech-debt-remediation-plan.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate technical debt remediation plans for code, tests, and documentation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Technical Debt Remediation Plan diff --git a/agents/technical-content-evaluator.agent.md b/agents/technical-content-evaluator.agent.md index 632375491..a3bad60f6 100644 --- a/agents/technical-content-evaluator.agent.md +++ b/agents/technical-content-evaluator.agent.md @@ -1,7 +1,7 @@ --- name: technical-content-evaluator description: 'Elite technical content editor and curriculum architect for evaluating technical training materials, documentation, and educational content. Reviews for technical accuracy, pedagogical excellence, content flow, code validation, and ensures A-grade quality standards.' -tools: ['edit', 'search', 'shell', 'web/fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] +tools: ['edit', 'search', 'shell', 'fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] model: Claude Sonnet 4.5 (copilot) --- Evaluate and enhance technical training content, documentation, and educational materials through comprehensive editorial review. Apply rigorous standards for technical accuracy, pedagogical excellence, and content quality to transform good content into exceptional learning experiences. diff --git a/agents/voidbeast-gpt41enhanced.agent.md b/agents/voidbeast-gpt41enhanced.agent.md index f9cae472a..0a633efc4 100644 --- a/agents/voidbeast-gpt41enhanced.agent.md +++ b/agents/voidbeast-gpt41enhanced.agent.md @@ -1,6 +1,6 @@ --- description: '4.1 voidBeast_GPT41Enhanced 1.0 : a advanced autonomous developer agent, designed for elite full-stack development with enhanced multi-mode capabilities. This latest evolution features sophisticated mode detection, comprehensive research capabilities, and never-ending problem resolution. Plan/Act/Deep Research/Analyzer/Checkpoints(Memory)/Prompt Generator Modes.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] --- # voidBeast_GPT41Enhanced 1.0 - Elite Developer AI Assistant @@ -48,7 +48,7 @@ After **every** file modification, you MUST: **Output**: Comprehensive plan via `plan_mode_response` **Rule**: NO code writing in this mode -### ⚡ ACT MODE +### ⚡ ACT MODE **Purpose**: Execute approved plans and implement solutions **Tools**: All tools available for coding, testing, and deployment **Output**: Working solution via `attempt_completion` @@ -91,7 +91,7 @@ After **every** file modification, you MUST: ### 🤖 PROMPT GENERATOR MODE **Triggers**: "generate", "create", "develop", "build" (when requesting content creation) -**Critical Rules**: +**Critical Rules**: - Your knowledge is outdated - MUST verify everything with current web sources - **DO NOT CODE DIRECTLY** - Generate research-backed prompts first - **MANDATORY RESEARCH PHASE** before any implementation @@ -124,7 +124,7 @@ After **every** file modification, you MUST: ### 🔍 Investigation & Analysis `codebase` `search` `searchResults` `usages` `findTestFiles` -### 📝 File Operations +### 📝 File Operations `editFiles` `new` `readCellOutput` ### 🧪 Development & Testing diff --git a/agents/wg-code-alchemist.agent.md b/agents/wg-code-alchemist.agent.md index 000cd749a..a41eeb0a1 100644 --- a/agents/wg-code-alchemist.agent.md +++ b/agents/wg-code-alchemist.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Alchemist to transform your code with Clean Code principles and SOLID design' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Alchemist, an expert software engineer specializing in Clean Code practices and SOLID principles. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/agents/wg-code-sentinel.agent.md b/agents/wg-code-sentinel.agent.md index bd59a6009..adafd2af0 100644 --- a/agents/wg-code-sentinel.agent.md +++ b/agents/wg-code-sentinel.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Sentinel to review your code for security issues.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Sentinel, an expert security reviewer specializing in identifying and mitigating code vulnerabilities. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/prompts/add-educational-comments.prompt.md b/prompts/add-educational-comments.prompt.md index be7491065..2469d1800 100644 --- a/prompts/add-educational-comments.prompt.md +++ b/prompts/add-educational-comments.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Add educational comments to the file specified, or prompt asking for file to comment if one is not provided.' -tools: ['edit/editFiles', 'web/fetch', 'todos'] +tools: ['edit/editFiles', 'fetch', 'todos'] --- # Add Educational Comments @@ -83,7 +83,7 @@ You are an expert educator and technical writer. You can explain programming top - **Educational Level** (`1-3`): Familiarity with the specific language or framework (default `1`). - **Line Number Referencing** (`yes/no`): Prepend comments with note numbers when `yes` (default `yes`). - **Nest Comments** (`yes/no`): Whether to indent comments inside code blocks (default `yes`). -- **web/fetch List**: Optional URLs for authoritative references. +- **Fetch List**: Optional URLs for authoritative references. If a configurable element is missing, use the default value. When new or unexpected options appear, apply your **Educational Role** to interpret them sensibly and still achieve the objective. @@ -97,7 +97,7 @@ If a configurable element is missing, use the default value. When new or unexpec - Educational Level = 1 - Line Number Referencing = yes - Nest Comments = yes -- web/fetch List: +- Fetch List: - ## Examples diff --git a/prompts/architecture-blueprint-generator.prompt.md b/prompts/architecture-blueprint-generator.prompt.md index 1b60ad3e5..038852f11 100644 --- a/prompts/architecture-blueprint-generator.prompt.md +++ b/prompts/architecture-blueprint-generator.prompt.md @@ -25,7 +25,7 @@ ${FOCUS_ON_EXTENSIBILITY=true|false} C[Job 2] C --> D[Job 3] D --> E[End] - + B --> F[Parallel Job] F --> D - + style A fill:#e1f5fe style E fill:#e8f5e8 ``` @@ -259,7 +259,7 @@ graph TD subgraph "Build Phase" A[Lint] --> B[Test] --> C[Build] end - subgraph "Deploy Phase" + subgraph "Deploy Phase" D[Staging] --> E[Production] end C --> D diff --git a/prompts/create-implementation-plan.prompt.md b/prompts/create-implementation-plan.prompt.md index ffc0bc0fe..e6ed3b113 100644 --- a/prompts/create-implementation-plan.prompt.md +++ b/prompts/create-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new implementation plan file for new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Implementation Plan diff --git a/prompts/create-llms.prompt.md b/prompts/create-llms.prompt.md index c9e5e58f8..95f661c6c 100644 --- a/prompts/create-llms.prompt.md +++ b/prompts/create-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create an llms.txt file from scratch based on repository structure following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create LLMs.txt File from Repository Structure diff --git a/prompts/create-oo-component-documentation.prompt.md b/prompts/create-oo-component-documentation.prompt.md index 33bb0cf92..1042534d3 100644 --- a/prompts/create-oo-component-documentation.prompt.md +++ b/prompts/create-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Generate Standard OO Component Documentation diff --git a/prompts/create-specification.prompt.md b/prompts/create-specification.prompt.md index 08093e046..664e695ec 100644 --- a/prompts/create-specification.prompt.md +++ b/prompts/create-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new specification file for the solution, optimized for Generative AI consumption.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Specification diff --git a/prompts/create-technical-spike.prompt.md b/prompts/create-technical-spike.prompt.md index bd9f63c79..aa7162ec1 100644 --- a/prompts/create-technical-spike.prompt.md +++ b/prompts/create-technical-spike.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation.' -tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] +tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] --- # Create Technical Spike Document @@ -203,7 +203,7 @@ Use descriptive, kebab-case names that indicate the category and specific unknow ### Phase 1: Information Gathering -1. **Search existing documentation** using search/web/fetch tools +1. **Search existing documentation** using search/fetch tools 2. **Analyze codebase** for existing patterns and constraints 3. **Research external resources** (APIs, libraries, examples) @@ -222,7 +222,7 @@ Use descriptive, kebab-case names that indicate the category and specific unknow ## Tools Usage - **search/searchResults:** Research existing solutions and documentation -- **web/fetch/githubRepo:** Analyze external APIs, libraries, and examples +- **fetch/githubRepo:** Analyze external APIs, libraries, and examples - **codebase:** Understand existing system constraints and patterns - **runTasks:** Execute prototypes and validation tests - **editFiles:** Update research progress and findings diff --git a/prompts/create-tldr-page.prompt.md b/prompts/create-tldr-page.prompt.md index 6fea9f270..03a0f93f0 100644 --- a/prompts/create-tldr-page.prompt.md +++ b/prompts/create-tldr-page.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a tldr page from documentation URLs and command examples, requiring both URL and command name.' -tools: ['edit/createFile', 'web/fetch'] +tools: ['edit/createFile', 'fetch'] --- # Create TLDR Page @@ -25,9 +25,9 @@ clear, example-driven command references. * **Command** - The name of the command or tool (e.g., `git`, `nmcli`, `distrobox-create`) * **URL** - Link to authoritative upstream documentation - - If one or more URLs are passed without a preceding `#web/fetch`, apply #tool:web/fetch to the first URL + - If one or more URLs are passed without a preceding `#fetch`, apply #tool:fetch to the first URL - If ${file} is provided in lieu of a URL, and ${file} has a relevant URL to **command**, then use - the data from the file as if web/fetched from the URL; use the URL extracted from the file when + the data from the file as if fetched from the URL; use the URL extracted from the file when creating the `tldr` page - If more than one URL is in the file, prompt for which URL should be used for the `tldr` page @@ -48,7 +48,7 @@ the command. ### Syntax ```bash -/create-tldr-page #web/fetch [text data] [context file] +/create-tldr-page #fetch [text data] [context file] ``` ### Error Handling @@ -64,7 +64,7 @@ the command. **Agent** ```text -I'll web/fetch the URL and analyze the documentation. +I'll fetch the URL and analyze the documentation. From the data extracted, I assume the command is `some-command`. Is this correct? (yes/no) ``` @@ -123,7 +123,7 @@ Use this template structure when creating tldr pages: ### Reference Examples -You MAY web/fetch these example tldr pages to understand the proper format and style: +You MAY fetch these example tldr pages to understand the proper format and style: * [git](https://raw.githubusercontent.com/jhauga/tldr/refs/heads/main/pages/common/git.md) * [distrobox-create](https://raw.githubusercontent.com/jhauga/tldr/refs/heads/main/pages/linux/distrobox-create.md) @@ -134,7 +134,7 @@ You MAY web/fetch these example tldr pages to understand the proper format and s **User** ```bash -/create-tldr-page #web/fetch https://git-scm.com/docs/git git +/create-tldr-page #fetch https://git-scm.com/docs/git git ``` **Agent** diff --git a/prompts/documentation-writer.prompt.md b/prompts/documentation-writer.prompt.md index 7b97cc993..88c71ad3c 100644 --- a/prompts/documentation-writer.prompt.md +++ b/prompts/documentation-writer.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -tools: ['edit/editFiles', 'search', 'web/web/fetch'] +tools: ['edit/editFiles', 'search', 'web/fetch'] description: 'Diátaxis Documentation Expert. An expert technical writer specializing in creating high-quality software documentation, guided by the principles and structure of the Diátaxis technical documentation authoring framework.' --- diff --git a/prompts/folder-structure-blueprint-generator.prompt.md b/prompts/folder-structure-blueprint-generator.prompt.md index 4910eba53..3afce1555 100644 --- a/prompts/folder-structure-blueprint-generator.prompt.md +++ b/prompts/folder-structure-blueprint-generator.prompt.md @@ -7,34 +7,34 @@ agent: 'agent' ## Configuration Variables -${PROJECT_TYPE="Auto-detect|.NET|Java|React|Angular|Python|Node.js|Flutter|Other"} +${PROJECT_TYPE="Auto-detect|.NET|Java|React|Angular|Python|Node.js|Flutter|Other"} -${INCLUDES_MICROSERVICES="Auto-detect|true|false"} +${INCLUDES_MICROSERVICES="Auto-detect|true|false"} -${INCLUDES_FRONTEND="Auto-detect|true|false"} +${INCLUDES_FRONTEND="Auto-detect|true|false"} -${IS_MONOREPO="Auto-detect|true|false"} +${IS_MONOREPO="Auto-detect|true|false"} -${VISUALIZATION_STYLE="ASCII|Markdown List|Table"} +${VISUALIZATION_STYLE="ASCII|Markdown List|Table"} -${DEPTH_LEVEL=1-5} +${DEPTH_LEVEL=1-5} -${INCLUDE_FILE_COUNTS=true|false} +${INCLUDE_FILE_COUNTS=true|false} -${INCLUDE_GENERATED_FOLDERS=true|false} +${INCLUDE_GENERATED_FOLDERS=true|false} -${INCLUDE_FILE_PATTERNS=true|false} +${INCLUDE_FILE_PATTERNS=true|false} -${INCLUDE_TEMPLATES=true|false} +${INCLUDE_TEMPLATES=true|false} ## Generated Prompt @@ -43,7 +43,7 @@ ${INCLUDE_TEMPLATES=true|false} ### Initial Auto-detection Phase -${PROJECT_TYPE == "Auto-detect" ? +${PROJECT_TYPE == "Auto-detect" ? "Begin by scanning the folder structure for key files that identify the project type: - Look for solution/project files (.sln, .csproj, .fsproj, .vbproj) to identify .NET projects - Check for build files (pom.xml, build.gradle, settings.gradle) for Java projects @@ -51,17 +51,17 @@ ${PROJECT_TYPE == "Auto-detect" ? - Look for specific framework files (angular.json, react-scripts entries, next.config.js) - Check for Python project identifiers (requirements.txt, setup.py, pyproject.toml) - Examine mobile app identifiers (pubspec.yaml, android/ios folders) -- Note all technology signatures found and their versions" : +- Note all technology signatures found and their versions" : "Focus analysis on ${PROJECT_TYPE} project structure"} -${IS_MONOREPO == "Auto-detect" ? +${IS_MONOREPO == "Auto-detect" ? "Determine if this is a monorepo by looking for: - Multiple distinct projects with their own configuration files - Workspace configuration files (lerna.json, nx.json, turborepo.json, etc.) - Cross-project references and shared dependency patterns - Root-level orchestration scripts and configuration" : ""} -${INCLUDES_MICROSERVICES == "Auto-detect" ? +${INCLUDES_MICROSERVICES == "Auto-detect" ? "Check for microservices architecture indicators: - Multiple service directories with similar/repeated structures - Service-specific Dockerfiles or deployment configurations @@ -70,7 +70,7 @@ ${INCLUDES_MICROSERVICES == "Auto-detect" ? - API gateway configuration files - Shared libraries or utilities across services" : ""} -${INCLUDES_FRONTEND == "Auto-detect" ? +${INCLUDES_FRONTEND == "Auto-detect" ? "Identify frontend components by looking for: - Web asset directories (wwwroot, public, dist, static) - UI framework files (components, modules, pages) @@ -87,40 +87,40 @@ Provide a high-level overview of the ${PROJECT_TYPE == "Auto-detect" ? "detected - Note any structural patterns that repeat throughout the codebase - Document the rationale behind the structure where it can be inferred -${IS_MONOREPO == "Auto-detect" ? -"If detected as a monorepo, explain how the monorepo is organized and the relationship between projects." : +${IS_MONOREPO == "Auto-detect" ? +"If detected as a monorepo, explain how the monorepo is organized and the relationship between projects." : IS_MONOREPO ? "Explain how the monorepo is organized and the relationship between projects." : ""} -${INCLUDES_MICROSERVICES == "Auto-detect" ? -"If microservices are detected, describe how they are structured and organized." : +${INCLUDES_MICROSERVICES == "Auto-detect" ? +"If microservices are detected, describe how they are structured and organized." : INCLUDES_MICROSERVICES ? "Describe how the microservices are structured and organized." : ""} ### 2. Directory Visualization -${VISUALIZATION_STYLE == "ASCII" ? +${VISUALIZATION_STYLE == "ASCII" ? "Create an ASCII tree representation of the folder hierarchy to depth level ${DEPTH_LEVEL}." : ""} -${VISUALIZATION_STYLE == "Markdown List" ? +${VISUALIZATION_STYLE == "Markdown List" ? "Use nested markdown lists to represent the folder hierarchy to depth level ${DEPTH_LEVEL}." : ""} -${VISUALIZATION_STYLE == "Table" ? +${VISUALIZATION_STYLE == "Table" ? "Create a table with columns for Path, Purpose, Content Types, and Conventions." : ""} -${INCLUDE_GENERATED_FOLDERS ? -"Include all folders including generated ones." : +${INCLUDE_GENERATED_FOLDERS ? +"Include all folders including generated ones." : "Exclude auto-generated folders like bin/, obj/, node_modules/, etc."} ### 3. Key Directory Analysis Document each significant directory's purpose, contents, and patterns: -${PROJECT_TYPE == "Auto-detect" ? +${PROJECT_TYPE == "Auto-detect" ? "For each detected technology, analyze directory structures based on observed usage patterns:" : ""} -${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? "#### .NET Project Structure (if detected) -- **Solution Organization**: +- **Solution Organization**: - How projects are grouped and related - Solution folder organization patterns - Multi-targeting project patterns @@ -149,7 +149,7 @@ ${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? - Test categories and organization - Test data and mock locations" : ""} -${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? "#### UI Project Structure (if detected) - **Component Organization**: @@ -170,13 +170,13 @@ ${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto - **API Integration**: - API client organization - Service layer structure - - Data web/fetching patterns + - Data fetching patterns - **Asset Management**: - Static resource organization - Image/media file structure - Font and icon organization - + - **Style Organization**: - CSS/SCSS file structure - Theme organization @@ -184,36 +184,36 @@ ${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto ### 4. File Placement Patterns -${INCLUDE_FILE_PATTERNS ? +${INCLUDE_FILE_PATTERNS ? "Document the patterns that determine where different types of files should be placed: - **Configuration Files**: - Locations for different types of configuration - Environment-specific configuration patterns - + - **Model/Entity Definitions**: - Where domain models are defined - Data transfer object (DTO) locations - Schema definition locations - + - **Business Logic**: - Service implementation locations - Business rule organization - Utility and helper function placement - + - **Interface Definitions**: - Where interfaces and abstractions are defined - How interfaces are grouped and organized - + - **Test Files**: - Unit test location patterns - Integration test placement - Test utility and mock locations - + - **Documentation Files**: - API documentation placement - Internal documentation organization - - README file distribution" : + - README file distribution" : "Document where key file types are located in the project."} ### 5. Naming and Organization Conventions @@ -223,12 +223,12 @@ Document the naming and organizational conventions observed across the project: - Case conventions (PascalCase, camelCase, kebab-case) - Prefix and suffix patterns - Type indicators in filenames - + - **Folder Naming Patterns**: - Naming conventions for different folder types - Hierarchical naming patterns - Grouping and categorization conventions - + - **Namespace/Module Patterns**: - How namespaces/modules map to folder structure - Import/using statement organization @@ -252,13 +252,13 @@ Provide guidance for navigating and working with the codebase structure: - How to extend existing functionality - Where to place new tests - Configuration modification locations - + - **Dependency Patterns**: - How dependencies flow between folders - Import/reference patterns - Dependency injection registration locations -${INCLUDE_FILE_COUNTS ? +${INCLUDE_FILE_COUNTS ? "- **Content Statistics**: - Files per directory analysis - Code distribution metrics @@ -271,12 +271,12 @@ Document the build process and output organization: - Build script locations and purposes - Build pipeline organization - Build task definitions - + - **Output Structure**: - Compiled/built output locations - Output organization patterns - Distribution package structure - + - **Environment-Specific Builds**: - Development vs. production differences - Environment configuration strategies @@ -284,7 +284,7 @@ Document the build process and output organization: ### 8. Technology-Specific Organization -${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? "#### .NET-Specific Structure Patterns (if detected) - **Project File Organization**: @@ -292,53 +292,53 @@ ${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? - Target framework configuration - Property group organization - Item group patterns - + - **Assembly Organization**: - Assembly naming patterns - Multi-assembly architecture - Assembly reference patterns - + - **Resource Organization**: - Embedded resource patterns - Localization file structure - Static web asset organization - + - **Package Management**: - NuGet configuration locations - Package reference organization - Package version management" : ""} -${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ? "#### Java-Specific Structure Patterns (if detected) - **Package Hierarchy**: - Package naming and nesting conventions - Domain vs. technical packages - Visibility and access patterns - + - **Build Tool Organization**: - Maven/Gradle structure patterns - Module organization - Plugin configuration patterns - + - **Resource Organization**: - Resource folder structures - Environment-specific resources - Properties file organization" : ""} -${(PROJECT_TYPE == "Node.js" || PROJECT_TYPE == "Auto-detect") ? +${(PROJECT_TYPE == "Node.js" || PROJECT_TYPE == "Auto-detect") ? "#### Node.js-Specific Structure Patterns (if detected) - **Module Organization**: - CommonJS vs. ESM organization - Internal module patterns - Third-party dependency management - + - **Script Organization**: - npm/yarn script definition patterns - Utility script locations - Development tool scripts - + - **Configuration Management**: - Configuration file locations - Environment variable management @@ -351,18 +351,18 @@ Document how the project structure is designed to be extended: - How to add new modules/features while maintaining conventions - Plugin/extension folder patterns - Customization directory structures - + - **Scalability Patterns**: - How the structure scales for larger features - Approach for breaking down large modules - Code splitting strategies - + - **Refactoring Patterns**: - Common refactoring approaches observed - How structural changes are managed - Incremental reorganization patterns -${INCLUDE_TEMPLATES ? +${INCLUDE_TEMPLATES ? "### 10. Structure Templates Provide templates for creating new components that follow project conventions: @@ -371,17 +371,17 @@ Provide templates for creating new components that follow project conventions: - Folder structure for adding a complete feature - Required file types and their locations - Naming patterns to follow - + - **New Component Template**: - Directory structure for a typical component - Essential files to include - Integration points with existing structure - + - **New Service Template**: - Structure for adding a new service - Interface and implementation placement - Configuration and registration patterns - + - **New Test Structure**: - Folder structure for test projects/files - Test file organization templates @@ -395,7 +395,7 @@ Document how the project structure is maintained and enforced: - Tools/scripts that enforce structure - Build checks for structural compliance - Linting rules related to structure - + - **Documentation Practices**: - How structural changes are documented - Where architectural decisions are recorded diff --git a/prompts/github-copilot-starter.prompt.md b/prompts/github-copilot-starter.prompt.md index eaf2c398a..f1fddc3f4 100644 --- a/prompts/github-copilot-starter.prompt.md +++ b/prompts/github-copilot-starter.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' model: Claude Sonnet 4 -tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'web/fetch'] +tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'fetch'] description: 'Set up complete GitHub Copilot configuration for a new project based on technology stack' --- @@ -58,7 +58,7 @@ Create Coding Agent workflow file: - `copilot-setup-steps.yml` - GitHub Actions workflow for Coding Agent environment setup **CRITICAL**: The workflow MUST follow this exact structure: -- Job name MUST be `copilot-setup-steps` +- Job name MUST be `copilot-setup-steps` - Include proper triggers (workflow_dispatch, push, pull_request on the workflow file) - Set appropriate permissions (minimum required) - Customize steps based on the technology stack provided @@ -67,9 +67,9 @@ Create Coding Agent workflow file: For each file, follow these principles: -**MANDATORY FIRST STEP**: Always use the web/fetch tool to research existing patterns before creating any content: -1. **web/fetch from awesome-copilot collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md -2. **web/fetch specific instruction files**: https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/[relevant-file].instructions.md +**MANDATORY FIRST STEP**: Always use the fetch tool to research existing patterns before creating any content: +1. **Fetch from awesome-copilot collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md +2. **Fetch specific instruction files**: https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/[relevant-file].instructions.md 3. **Check for existing patterns** that match the technology stack **Primary Approach**: Reference and adapt existing instructions from awesome-copilot repository: @@ -127,7 +127,7 @@ description: "Java Spring Boot development standards" - ✅ **"Use TypeScript strict mode for better type safety"** - ✅ **"Follow the repository's established error handling patterns"** -**Research Strategy with web/fetch tool:** +**Research Strategy with fetch tool:** 1. **Check awesome-copilot first** - Always start here for ALL file types 2. **Look for exact tech stack matches** (e.g., React, Node.js, Spring Boot) 3. **Look for general matches** (e.g., frontend chatmodes, testing prompts, review modes) @@ -135,15 +135,15 @@ description: "Java Spring Boot development standards" 5. **Adapt community examples** to project needs 6. **Only create custom content** if nothing relevant exists -**web/fetch these awesome-copilot directories:** +**Fetch these awesome-copilot directories:** - **Instructions**: https://github.com/github/awesome-copilot/tree/main/instructions -- **Prompts**: https://github.com/github/awesome-copilot/tree/main/prompts +- **Prompts**: https://github.com/github/awesome-copilot/tree/main/prompts - **Chat Modes**: https://github.com/github/awesome-copilot/tree/main/chatmodes - **Collections**: https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md **Awesome-Copilot Collections to Check:** - **Frontend Web Development**: React, Angular, Vue, TypeScript, CSS frameworks -- **C# .NET Development**: Testing, documentation, and best practices +- **C# .NET Development**: Testing, documentation, and best practices - **Java Development**: Spring Boot, Quarkus, testing, documentation - **Database Development**: PostgreSQL, SQL Server, and general database best practices - **Azure Development**: Infrastructure as Code, serverless functions @@ -237,7 +237,7 @@ Requirements for the form: ```yaml --- description: Generate an implementation plan for new features or refactoring existing code. -tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] model: Claude Sonnet 4 --- # Planning mode instructions diff --git a/prompts/java-springboot.prompt.md b/prompts/java-springboot.prompt.md index df178ac75..e558feb00 100644 --- a/prompts/java-springboot.prompt.md +++ b/prompts/java-springboot.prompt.md @@ -44,7 +44,7 @@ Your goal is to help me write high-quality Spring Boot applications by following - **Spring Data JPA:** Use Spring Data JPA repositories by extending `JpaRepository` or `CrudRepository` for standard database operations. - **Custom Queries:** For complex queries, use `@Query` or the JPA Criteria API. -- **Projections:** Use DTO projections to web/fetch only the necessary data from the database. +- **Projections:** Use DTO projections to fetch only the necessary data from the database. ## Logging diff --git a/prompts/mcp-create-declarative-agent.prompt.md b/prompts/mcp-create-declarative-agent.prompt.md index 302a7240a..7602a05d4 100644 --- a/prompts/mcp-create-declarative-agent.prompt.md +++ b/prompts/mcp-create-declarative-agent.prompt.md @@ -146,7 +146,7 @@ The MCP server must provide: ### Tool Selection When importing from MCP: -1. web/fetch available tools from server +1. Fetch available tools from server 2. Select specific tools to include (for security/simplicity) 3. Tool definitions are auto-generated in ai-plugin.json @@ -299,7 +299,7 @@ Then generate: - Ensure mcp.json points to correct server - Verify tools were selected during import - Check ai-plugin.json has correct function definitions -- Re-web/fetch actions from MCP if server changed +- Re-fetch actions from MCP if server changed ### Agent Not Understanding Queries - Review instructions in declarativeAgent.json @@ -307,4 +307,4 @@ Then generate: - Verify response_semantics extract correct data - Test with more specific queries -```` +```` \ No newline at end of file diff --git a/prompts/model-recommendation.prompt.md b/prompts/model-recommendation.prompt.md index b73c8d7a9..bacf06066 100644 --- a/prompts/model-recommendation.prompt.md +++ b/prompts/model-recommendation.prompt.md @@ -3,7 +3,7 @@ description: "Analyze chatmode or prompt files and recommend optimal AI models b agent: "agent" tools: - "search/codebase" - - "web/fetch" + - "fetch" - "context7/*" model: Auto (copilot) --- @@ -103,7 +103,7 @@ Identify the primary task category based on content analysis: Based on `tools` in frontmatter and body instructions: -- **Read-only tools** (search, web/fetch, usages, githubRepo): Lower complexity, faster models suitable +- **Read-only tools** (search, fetch, usages, githubRepo): Lower complexity, faster models suitable - **Write operations** (edit/editFiles, new): Moderate complexity, accuracy important - **Execution tools** (runCommands, runTests, runTasks): Validation needs, iterative approach - **Advanced tools** (context7/\*, sequential-thinking/\*): Complex reasoning, premium models beneficial @@ -262,13 +262,13 @@ Verify model capabilities align with specified tools: - If tools include `context7/*` or `sequential-thinking/*`: Recommend advanced reasoning models (Claude Sonnet 4.5, GPT-5, Claude Opus 4.1) - If tools include vision-related references: Ensure model supports images (flag if GPT-5 Codex, Claude Sonnet 4, or mini models selected) -- If tools are read-only (search, web/fetch): Suggest cost-effective models (GPT-5 mini, Grok Code Fast 1) +- If tools are read-only (search, fetch): Suggest cost-effective models (GPT-5 mini, Grok Code Fast 1) ### 5. Context7 Integration for Up-to-Date Information **Leverage Context7 for Model Documentation**: -When uncertainty exists about current model capabilities, use Context7 to web/fetch latest information: +When uncertainty exists about current model capabilities, use Context7 to fetch latest information: ```markdown **Verification with Context7**: @@ -568,7 +568,7 @@ If file specifies a deprecated model: ### Example 4: Free Tier User with Planning Mode **File**: `plan.agent.md` -**Content**: "Research and planning mode with read-only tools (search, web/fetch, githubRepo)" +**Content**: "Research and planning mode with read-only tools (search, fetch, githubRepo)" **Subscription**: Free (2K completions + 50 chat requests/month, 0x models only) **Recommendation**: GPT-4.1 (0x, balanced, included in Free tier) **Alternative**: GPT-5 mini (0x, faster but less context) diff --git a/prompts/playwright-explore-website.prompt.md b/prompts/playwright-explore-website.prompt.md index e8cc123fd..ad2917f42 100644 --- a/prompts/playwright-explore-website.prompt.md +++ b/prompts/playwright-explore-website.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Website exploration for testing using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] model: 'Claude Sonnet 4' --- diff --git a/prompts/playwright-generate-test.prompt.md b/prompts/playwright-generate-test.prompt.md index 1e683caf9..103195db1 100644 --- a/prompts/playwright-generate-test.prompt.md +++ b/prompts/playwright-generate-test.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Generate a Playwright test based on a scenario using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] model: 'Claude Sonnet 4.5' --- diff --git a/prompts/postgresql-optimization.prompt.md b/prompts/postgresql-optimization.prompt.md index abde254dc..2cc5014a1 100644 --- a/prompts/postgresql-optimization.prompt.md +++ b/prompts/postgresql-optimization.prompt.md @@ -24,7 +24,7 @@ CREATE TABLE events ( CREATE INDEX idx_events_data_gin ON events USING gin(data); -- JSONB containment and path queries -SELECT * FROM events +SELECT * FROM events WHERE data @> '{"type": "login"}' AND data #>> '{user,role}' = 'admin'; @@ -53,7 +53,7 @@ SELECT array_agg(DISTINCT category) FROM posts, unnest(categories) as category; ### Window Functions & Analytics ```sql -- Advanced window functions -SELECT +SELECT product_id, sale_date, amount, @@ -79,19 +79,19 @@ CREATE TABLE documents ( ); -- Update search vector -UPDATE documents +UPDATE documents SET search_vector = to_tsvector('english', title || ' ' || content); -- GIN index for search performance CREATE INDEX idx_documents_search ON documents USING gin(search_vector); -- Search queries -SELECT * FROM documents +SELECT * FROM documents WHERE search_vector @@ plainto_tsquery('english', 'postgresql database'); -- Ranking results SELECT *, ts_rank(search_vector, plainto_tsquery('postgresql')) as rank -FROM documents +FROM documents WHERE search_vector @@ plainto_tsquery('postgresql') ORDER BY rank DESC; ``` @@ -101,7 +101,7 @@ ORDER BY rank DESC; ### Query Optimization ```sql -- EXPLAIN ANALYZE for performance analysis -EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT) +EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT) SELECT u.name, COUNT(o.id) as order_count FROM users u LEFT JOIN orders o ON u.id = o.user_id @@ -111,8 +111,8 @@ GROUP BY u.id, u.name; -- Identify slow queries from pg_stat_statements SELECT query, calls, total_time, mean_time, rows, 100.0 * shared_blks_hit / nullif(shared_blks_hit + shared_blks_read, 0) AS hit_percent -FROM pg_stat_statements -ORDER BY total_time DESC +FROM pg_stat_statements +ORDER BY total_time DESC LIMIT 10; ``` @@ -134,13 +134,13 @@ CREATE INDEX idx_orders_covering ON orders(user_id, status) INCLUDE (total, crea ### Connection & Memory Management ```sql -- Check connection usage -SELECT count(*) as connections, state -FROM pg_stat_activity +SELECT count(*) as connections, state +FROM pg_stat_activity GROUP BY state; -- Monitor memory usage -SELECT name, setting, unit -FROM pg_settings +SELECT name, setting, unit +FROM pg_settings WHERE name IN ('shared_buffers', 'work_mem', 'maintenance_work_mem'); ``` @@ -159,7 +159,7 @@ CREATE TYPE address_type AS ( CREATE TYPE order_status AS ENUM ('pending', 'processing', 'shipped', 'delivered', 'cancelled'); -- Use domains for data validation -CREATE DOMAIN email_address AS TEXT +CREATE DOMAIN email_address AS TEXT CHECK (VALUE ~* '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$'); -- Table using custom types @@ -182,12 +182,12 @@ CREATE TABLE reservations ( ); -- Range queries -SELECT * FROM reservations +SELECT * FROM reservations WHERE reservation_period && tstzrange('2024-07-20', '2024-07-25'); -- Exclude overlapping ranges -ALTER TABLE reservations -ADD CONSTRAINT no_overlap +ALTER TABLE reservations +ADD CONSTRAINT no_overlap EXCLUDE USING gist (room_id WITH =, reservation_period WITH &&); ``` @@ -203,7 +203,7 @@ CREATE TABLE locations ( ); -- Geometric queries -SELECT name FROM locations +SELECT name FROM locations WHERE coordinates <-> point(40.7128, -74.0060) < 10; -- Within 10 units -- GiST index for geometric data @@ -235,12 +235,12 @@ SELECT pg_size_pretty(pg_database_size(current_database())) as db_size; -- Table and index sizes SELECT schemaname, tablename, pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) as size -FROM pg_tables +FROM pg_tables ORDER BY pg_total_relation_size(schemaname||'.'||tablename) DESC; -- Index usage statistics -SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_web/fetch -FROM pg_stat_user_indexes +SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_fetch +FROM pg_stat_user_indexes WHERE idx_scan = 0; -- Unused indexes ``` @@ -258,13 +258,13 @@ WHERE idx_scan = 0; -- Unused indexes ```sql -- Identify slow queries SELECT query, calls, total_time, mean_time, rows -FROM pg_stat_statements -ORDER BY total_time DESC +FROM pg_stat_statements +ORDER BY total_time DESC LIMIT 10; -- Check index usage -SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_web/fetch -FROM pg_stat_user_indexes +SELECT schemaname, tablename, indexname, idx_scan, idx_tup_read, idx_tup_fetch +FROM pg_stat_user_indexes WHERE idx_scan = 0; ``` @@ -282,27 +282,27 @@ WHERE idx_scan = 0; SELECT * FROM products ORDER BY id OFFSET 10000 LIMIT 20; -- ✅ GOOD: Cursor-based pagination -SELECT * FROM products -WHERE id > $last_id -ORDER BY id +SELECT * FROM products +WHERE id > $last_id +ORDER BY id LIMIT 20; ``` ### Aggregation ```sql -- ❌ BAD: Inefficient grouping -SELECT user_id, COUNT(*) -FROM orders -WHERE order_date >= '2024-01-01' +SELECT user_id, COUNT(*) +FROM orders +WHERE order_date >= '2024-01-01' GROUP BY user_id; -- ✅ GOOD: Optimized with partial index -CREATE INDEX idx_orders_recent ON orders(user_id) +CREATE INDEX idx_orders_recent ON orders(user_id) WHERE order_date >= '2024-01-01'; -SELECT user_id, COUNT(*) -FROM orders -WHERE order_date >= '2024-01-01' +SELECT user_id, COUNT(*) +FROM orders +WHERE order_date >= '2024-01-01' GROUP BY user_id; ``` @@ -377,7 +377,7 @@ CREATE INDEX idx_table_column ON table(column); ### Window Functions ```sql -- Running totals and rankings -SELECT +SELECT product_id, order_date, amount, @@ -391,11 +391,11 @@ FROM sales; -- Recursive queries for hierarchical data WITH RECURSIVE category_tree AS ( SELECT id, name, parent_id, 1 as level - FROM categories + FROM categories WHERE parent_id IS NULL - + UNION ALL - + SELECT c.id, c.name, c.parent_id, ct.level + 1 FROM categories c JOIN category_tree ct ON c.parent_id = ct.id diff --git a/prompts/prompt-builder.prompt.md b/prompts/prompt-builder.prompt.md index 068ac6dfc..f7e199613 100644 --- a/prompts/prompt-builder.prompt.md +++ b/prompts/prompt-builder.prompt.md @@ -8,7 +8,7 @@ description: 'Guide users through creating high-quality GitHub Copilot prompts w You are an expert prompt engineer specializing in GitHub Copilot prompt development with deep knowledge of: - Prompt engineering best practices and patterns -- VS Code Copilot customization capabilities +- VS Code Copilot customization capabilities - Effective persona design and task specification - Tool integration and front matter configuration - Output format optimization for AI consumption @@ -62,7 +62,7 @@ I will ask you targeted questions to gather all necessary information. After col Which tools does this prompt need? Common options include: - **File Operations**: `codebase`, `editFiles`, `search`, `problems` - **Execution**: `runCommands`, `runTasks`, `runTests`, `terminalLastCommand` -- **External**: `web/fetch`, `githubRepo`, `openSimpleBrowser` +- **External**: `fetch`, `githubRepo`, `openSimpleBrowser` - **Specialized**: `playwright`, `usages`, `vscodeAPI`, `extensions` - **Analysis**: `changes`, `findTestFiles`, `testFailure`, `searchResults` @@ -82,7 +82,7 @@ Which tools does this prompt need? Common options include: Based on analysis of existing prompts, I will ensure your prompt includes: ✅ **Clear Structure**: Well-organized sections with logical flow -✅ **Specific Instructions**: Actionable, unambiguous directions +✅ **Specific Instructions**: Actionable, unambiguous directions ✅ **Proper Context**: All necessary information for task completion ✅ **Tool Integration**: Appropriate tool selection for the task ✅ **Error Handling**: Guidance for edge cases and failures @@ -116,7 +116,7 @@ model: "[only if specific model required]" ## [Instructions Section] [Step-by-step instructions following established patterns] -## [Context/Input Section] +## [Context/Input Section] [Variable usage and context requirements] ## [Output Section] @@ -128,7 +128,7 @@ model: "[only if specific model required]" The generated prompt will follow patterns observed in high-quality prompts like: - **Comprehensive blueprints** (architecture-blueprint-generator) -- **Structured specifications** (create-github-action-workflow-specification) +- **Structured specifications** (create-github-action-workflow-specification) - **Best practice guides** (dotnet-best-practices, csharp-xunit) - **Implementation plans** (create-implementation-plan) - **Code generation** (playwright-generate-test) diff --git a/prompts/structured-autonomy-generate.prompt.md b/prompts/structured-autonomy-generate.prompt.md index 18d514fc7..e77616df6 100644 --- a/prompts/structured-autonomy-generate.prompt.md +++ b/prompts/structured-autonomy-generate.prompt.md @@ -67,7 +67,7 @@ For the entire project described in the master plan, research and gather: - Testing strategies 4. **Official Documentation:** - - web/fetch official docs for all major libraries/frameworks + - Fetch official docs for all major libraries/frameworks - Document APIs, syntax, parameters - Note version-specific details - Record known limitations and gotchas diff --git a/prompts/suggest-awesome-github-copilot-agents.prompt.md b/prompts/suggest-awesome-github-copilot-agents.prompt.md index 13ed277c5..dc4a14d52 100644 --- a/prompts/suggest-awesome-github-copilot-agents.prompt.md +++ b/prompts/suggest-awesome-github-copilot-agents.prompt.md @@ -1,7 +1,7 @@ --- agent: "agent" description: "Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository." -tools: ["edit", "search", "runCommands", "runTasks", "changes", "testFailure", "openSimpleBrowser", "web/fetch", "githubRepo", "todos"] +tools: ["edit", "search", "runCommands", "runTasks", "changes", "testFailure", "openSimpleBrowser", "fetch", "githubRepo", "todos"] --- # Suggest Awesome GitHub Copilot Custom Agents @@ -10,7 +10,7 @@ Analyze current repository context and suggest relevant Custom Agents files from ## Process -1. **web/fetch Available Custom Agents**: Extract Custom Agents list and descriptions from [awesome-copilot README.agents.md](https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md). Must use `web/fetch` tool. +1. **Fetch Available Custom Agents**: Extract Custom Agents list and descriptions from [awesome-copilot README.agents.md](https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md). Must use `fetch` tool. 2. **Scan Local Custom Agents**: Discover existing custom agent files in `.github/agents/` folder 3. **Extract Descriptions**: Read front matter from local custom agent files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -20,7 +20,7 @@ Analyze current repository context and suggest relevant Custom Agents files from 8. **Validate**: Ensure suggested agents would add value not already covered by existing agents 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom agents and similar local custom agents **AWAIT** user request to proceed with installation of specific custom agents. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested agents, automatically download and install individual agents to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested agents, automatically download and install individual agents to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md index 95a59db22..a32038968 100644 --- a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +++ b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Custom Chat Modes @@ -10,7 +10,7 @@ Analyze current repository context and suggest relevant Custom Chat Modes files ## Process -1. **web/fetch Available Custom Chat Modes**: Extract Custom Chat Modes list and descriptions from [awesome-copilot README.chatmodes.md](https://github.com/github/awesome-copilot/blob/main/docs/README.chatmodes.md). Must use `#web/fetch` tool. +1. **Fetch Available Custom Chat Modes**: Extract Custom Chat Modes list and descriptions from [awesome-copilot README.chatmodes.md](https://github.com/github/awesome-copilot/blob/main/docs/README.chatmodes.md). Must use `#fetch` tool. 2. **Scan Local Custom Chat Modes**: Discover existing custom chat mode files in `.github/agents/` folder 3. **Extract Descriptions**: Read front matter from local custom chat mode files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -20,7 +20,7 @@ Analyze current repository context and suggest relevant Custom Chat Modes files 8. **Validate**: Ensure suggested chatmodes would add value not already covered by existing chatmodes 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom chat modes and similar local custom chat modes **AWAIT** user request to proceed with installation of specific custom chat modes. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested chat modes, automatically download and install individual chat modes to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested chat modes, automatically download and install individual chat modes to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-collections.prompt.md b/prompts/suggest-awesome-github-copilot-collections.prompt.md index 0f82410e4..40472aa72 100644 --- a/prompts/suggest-awesome-github-copilot-collections.prompt.md +++ b/prompts/suggest-awesome-github-copilot-collections.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Collections @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant collections from the [Gi ## Process -1. **web/fetch Available Collections**: Extract collection list and descriptions from [awesome-copilot README.collections.md](https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md). Must use `#web/fetch` tool. +1. **Fetch Available Collections**: Extract collection list and descriptions from [awesome-copilot README.collections.md](https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md). Must use `#fetch` tool. 2. **Scan Local Assets**: Discover existing prompt files in `prompts/`, instruction files in `instructions/`, and chat modes in `agents/` folders 3. **Extract Local Descriptions**: Read front matter from local asset files to understand existing capabilities 4. **Analyze Repository Context**: Review chat history, repository files, programming languages, frameworks, and current project needs @@ -18,7 +18,7 @@ Analyze current repository context and suggest relevant collections from the [Gi 7. **Present Collection Options**: Display relevant collections with descriptions, item counts, and rationale for suggestion 8. **Provide Usage Guidance**: Explain how the installed collection enhances the development workflow **AWAIT** user request to proceed with installation of specific collections. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -9. **Download Assets**: For requested collections, automatically download and install each individual asset (prompts, instructions, chat modes) to appropriate directories. Do NOT adjust content of the files. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +9. **Download Assets**: For requested collections, automatically download and install each individual asset (prompts, instructions, chat modes) to appropriate directories. Do NOT adjust content of the files. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria @@ -90,7 +90,7 @@ For each suggested collection, break down individual assets: When user confirms a collection installation: -1. **web/fetch Collection Manifest**: Get collection YAML from awesome-copilot repository +1. **Fetch Collection Manifest**: Get collection YAML from awesome-copilot repository 2. **Download Individual Assets**: For each item in collection: - Download raw file content from GitHub - Validate file format and front matter structure @@ -104,7 +104,7 @@ When user confirms a collection installation: ## Requirements -- Use `web/fetch` tool to get collections data from awesome-copilot repository +- Use `fetch` tool to get collections data from awesome-copilot repository - Use `githubRepo` tool to get individual asset content for download - Scan local file system for existing assets in `prompts/`, `instructions/`, and `agents/` directories - Read YAML front matter from local asset files to extract descriptions and capabilities @@ -120,7 +120,7 @@ When user confirms a collection installation: ## Collection Installation Workflow 1. **User Confirms Collection**: User selects specific collection(s) for installation -2. **web/fetch Collection Manifest**: Download YAML manifest from awesome-copilot repository +2. **Fetch Collection Manifest**: Download YAML manifest from awesome-copilot repository 3. **Asset Download Loop**: For each asset in collection: - Download raw content from GitHub repository - Validate file format and structure diff --git a/prompts/suggest-awesome-github-copilot-instructions.prompt.md b/prompts/suggest-awesome-github-copilot-instructions.prompt.md index bcb999a0c..be06e76e9 100644 --- a/prompts/suggest-awesome-github-copilot-instructions.prompt.md +++ b/prompts/suggest-awesome-github-copilot-instructions.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Instructions @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant copilot-instruction file ## Process -1. **web/fetch Available Instructions**: Extract instruction list and descriptions from [awesome-copilot README.instructions.md](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md). Must use `#web/fetch` tool. +1. **Fetch Available Instructions**: Extract instruction list and descriptions from [awesome-copilot README.instructions.md](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md). Must use `#fetch` tool. 2. **Scan Local Instructions**: Discover existing instruction files in `.github/instructions/` folder 3. **Extract Descriptions**: Read front matter from local instruction files to get descriptions and `applyTo` patterns 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -19,7 +19,7 @@ Analyze current repository context and suggest relevant copilot-instruction file 8. **Validate**: Ensure suggested instructions would add value not already covered by existing instructions 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot instructions and similar local instructions **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/instructions/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/instructions/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/suggest-awesome-github-copilot-prompts.prompt.md b/prompts/suggest-awesome-github-copilot-prompts.prompt.md index c17e6b5da..ab3a6b11f 100644 --- a/prompts/suggest-awesome-github-copilot-prompts.prompt.md +++ b/prompts/suggest-awesome-github-copilot-prompts.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Prompts @@ -9,7 +9,7 @@ Analyze current repository context and suggest relevant prompt files from the [G ## Process -1. **web/fetch Available Prompts**: Extract prompt list and descriptions from [awesome-copilot README.prompts.md](https://github.com/github/awesome-copilot/blob/main/docs/README.prompts.md). Must use `#web/fetch` tool. +1. **Fetch Available Prompts**: Extract prompt list and descriptions from [awesome-copilot README.prompts.md](https://github.com/github/awesome-copilot/blob/main/docs/README.prompts.md). Must use `#fetch` tool. 2. **Scan Local Prompts**: Discover existing prompt files in `.github/prompts/` folder 3. **Extract Descriptions**: Read front matter from local prompt files to get descriptions 4. **Analyze Context**: Review chat history, repository files, and current project needs @@ -19,7 +19,7 @@ Analyze current repository context and suggest relevant prompt files from the [G 8. **Validate**: Ensure suggested prompts would add value not already covered by existing prompts 9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot prompts and similar local prompts **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/prompts/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#web/fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/prompts/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. ## Context Analysis Criteria diff --git a/prompts/tldr-prompt.prompt.md b/prompts/tldr-prompt.prompt.md index 834283f89..479661de6 100644 --- a/prompts/tldr-prompt.prompt.md +++ b/prompts/tldr-prompt.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create tldr summaries for GitHub Copilot files (prompts, agents, instructions, collections), MCP servers, or documentation from URLs and queries.' -tools: ['web/fetch', 'search/readFile', 'search', 'search/textSearch'] +tools: ['fetch', 'search/readFile', 'search', 'search/textSearch'] model: 'claude-sonnet-4' --- @@ -50,7 +50,7 @@ message specified in the Error Handling section. create tldr summaries for the first 5 and list the remaining files - Recognize file type by extension and use appropriate invocation syntax in examples * **URL** - Link to Copilot file, MCP server documentation, or Copilot documentation - - If one or more URLs are passed without `#web/fetch`, you MUST apply the web/fetch tool to all URLs + - If one or more URLs are passed without `#fetch`, you MUST apply the fetch tool to all URLs - If more than one URL (up to 5), you MUST create a `tldr` for each. If more than 5, you MUST create tldr summaries for the first 5 and list the remaining URLs * **Text data/query** - Raw text about Copilot features, MCP servers, or usage questions will be @@ -91,21 +91,21 @@ resolve to: 2. **Search strategy**: - For workspace files: Use search tools to find matching files in ${workspaceFolder} - - For GitHub awesome-copilot: web/fetch raw content from https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/ - - For documentation: Use web/fetch tool with the most relevant URL from above + - For GitHub awesome-copilot: Fetch raw content from https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/ + - For documentation: Use fetch tool with the most relevant URL from above -3. **web/fetch content**: +3. **Fetch content**: - Workspace files: Read using file tools - - GitHub awesome-copilot files: web/fetch using raw.githubusercontent.com URLs - - Documentation URLs: web/fetch using web/fetch tool + - GitHub awesome-copilot files: Fetch using raw.githubusercontent.com URLs + - Documentation URLs: Fetch using fetch tool 4. **Evaluate and respond**: - - Use the web/fetched content as the reference for completing the request + - Use the fetched content as the reference for completing the request - Adapt response verbosity based on chat context ### Unambiguous Queries -If the user **DOES** provide a specific URL or file, skip searching and web/fetch/read that directly. +If the user **DOES** provide a specific URL or file, skip searching and fetch/read that directly. ### Optional @@ -124,7 +124,7 @@ If the user **DOES** provide a specific URL or file, skip searching and web/fetc /tldr-prompt #file:{{name.collections.md}} # With URLs -/tldr-prompt #web/fetch {{https://example.com/docs}} +/tldr-prompt #fetch {{https://example.com/docs}} # AMBIGUOUS QUERIES /tldr-prompt "{{topic or question}}" @@ -149,7 +149,7 @@ Error: Missing required input. You MUST provide one of the following: 1. A Copilot file: /tldr-prompt #file:{{name.prompt.md | name.agent.md | name.instructions.md | name.collections.md}} -2. A URL: /tldr-prompt #web/fetch {{https://example.com/docs}} +2. A URL: /tldr-prompt #fetch {{https://example.com/docs}} 3. A search query: /tldr-prompt "{{topic}}" (e.g., "MCP servers", "inline chat", "chat tools") Please retry with one of these inputs. @@ -184,7 +184,7 @@ Found: - https://github.com/github/awesome-copilot/blob/main/prompts/java-docs.prompt.md - https://github.com/github/awesome-copilot/blob/main/prompts/java-junit.prompt.md -Now let me web/fetch the raw content: +Now let me fetch the raw content: - https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/prompts/java-docs.prompt.md - https://raw.githubusercontent.com/github/awesome-copilot/refs/heads/main/prompts/java-junit.prompt.md @@ -212,13 +212,13 @@ I'll read the file typescript-mcp-server-generator.prompt.md and create a tldr s **User** ```bash -/tldr-prompt "How do MCP servers work?" #web/fetch https://code.visualstudio.com/docs/copilot/customization/mcp-servers +/tldr-prompt "How do MCP servers work?" #fetch https://code.visualstudio.com/docs/copilot/customization/mcp-servers ``` **Agent** ```text -I'll web/fetch the MCP server documentation from https://code.visualstudio.com/docs/copilot/customization/mcp-servers +I'll fetch the MCP server documentation from https://code.visualstudio.com/docs/copilot/customization/mcp-servers and create a tldr summary of how MCP servers work. ``` @@ -232,10 +232,10 @@ message from Error Handling section - Determine file type (.prompt.md, .agent.md, .instructions.md, .collections.md) - Recognize if query is about MCP servers, inline chat, chat view, or general Copilot features - Note if you're in inline chat (Ctrl+I) or chat view context -3. **web/fetch Content**: +3. **Fetch Content**: - For files: Read the file(s) using available file tools - - For URLs: web/fetch content using `#tool:web/fetch` - - For queries: Apply URL Resolver strategy to find and web/fetch relevant content + - For URLs: Fetch content using `#tool:fetch` + - For queries: Apply URL Resolver strategy to find and fetch relevant content 4. **Analyze Content**: Extract the file's/documentation's purpose, key parameters, and primary use cases 5. **Generate tldr**: Create summary using the template format below with correct invocation syntax diff --git a/prompts/update-avm-modules-in-bicep.prompt.md b/prompts/update-avm-modules-in-bicep.prompt.md index 23e67508e..b603a8800 100644 --- a/prompts/update-avm-modules-in-bicep.prompt.md +++ b/prompts/update-avm-modules-in-bicep.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update Azure Verified Modules (AVM) to latest versions in Bicep files.' -tools: ['search/codebase', 'think', 'changes', 'web/fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] +tools: ['search/codebase', 'think', 'changes', 'fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] --- # Update Azure Verified Modules in Bicep Files @@ -11,16 +11,16 @@ Update Bicep file `${file}` to use latest Azure Verified Module (AVM) versions. 1. **Scan**: Extract AVM modules and current versions from `${file}` 1. **Identify**: List all unique AVM modules used by matching `avm/res/{service}/{resource}` using `#search` tool -1. **Check**: Use `#web/fetch` tool to get latest version of each AVM module from MCR: `https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list` +1. **Check**: Use `#fetch` tool to get latest version of each AVM module from MCR: `https://mcr.microsoft.com/v2/bicep/avm/res/{service}/{resource}/tags/list` 1. **Compare**: Parse semantic versions to identify AVM modules needing update -1. **Review**: For breaking changes, use `#web/fetch` tool to get docs from: `https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource}` +1. **Review**: For breaking changes, use `#fetch` tool to get docs from: `https://github.com/Azure/bicep-registry-modules/tree/main/avm/res/{service}/{resource}` 1. **Update**: Apply version updates and parameter changes using `#editFiles` tool 1. **Validate**: Run `bicep lint` and `bicep build` using `#runCommands` tool to ensure compliance. 1. **Output**: Summarize changes in a table format with summary of updates below. ## Tool Usage -Always use tools `#search`, `#searchResults`,`#web/fetch`, `#editFiles`, `#runCommands`, `#todos` if available. Avoid writing code to perform tasks. +Always use tools `#search`, `#searchResults`,`#fetch`, `#editFiles`, `#runCommands`, `#todos` if available. Avoid writing code to perform tasks. ## Breaking Change Policy diff --git a/prompts/update-implementation-plan.prompt.md b/prompts/update-implementation-plan.prompt.md index 8de4eab89..3ff01b07f 100644 --- a/prompts/update-implementation-plan.prompt.md +++ b/prompts/update-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing implementation plan file with new or update requirements to provide new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Implementation Plan diff --git a/prompts/update-llms.prompt.md b/prompts/update-llms.prompt.md index bbeab69d4..0e3f4e217 100644 --- a/prompts/update-llms.prompt.md +++ b/prompts/update-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update the llms.txt file in the root folder to reflect changes in documentation or specifications following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update LLMs.txt File diff --git a/prompts/update-markdown-file-index.prompt.md b/prompts/update-markdown-file-index.prompt.md index 08f98a676..8078097af 100644 --- a/prompts/update-markdown-file-index.prompt.md +++ b/prompts/update-markdown-file-index.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update a markdown file section with an index/table of files from a specified folder.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Markdown File Index diff --git a/prompts/update-oo-component-documentation.prompt.md b/prompts/update-oo-component-documentation.prompt.md index 5300f0f70..c3857e4a1 100644 --- a/prompts/update-oo-component-documentation.prompt.md +++ b/prompts/update-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update existing object-oriented component documentation following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Standard OO Component Documentation diff --git a/prompts/update-specification.prompt.md b/prompts/update-specification.prompt.md index 15c9f392c..0f031ae10 100644 --- a/prompts/update-specification.prompt.md +++ b/prompts/update-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing specification file for the solution, optimized for Generative AI consumption based on new requirements or updates to any existing code.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Specification diff --git a/prompts/write-coding-standards-from-file.prompt.md b/prompts/write-coding-standards-from-file.prompt.md index fd4294d75..1ea779585 100644 --- a/prompts/write-coding-standards-from-file.prompt.md +++ b/prompts/write-coding-standards-from-file.prompt.md @@ -1,7 +1,7 @@ --- agent: "agent" description: "Write a coding standards document for a project using the coding styles from the file(s) and/or folder(s) passed as arguments in the prompt." -tools: ['createFile', 'editFiles', 'web/fetch', 'githubRepo', 'search', 'testFailure'] +tools: ['createFile', 'editFiles', 'fetch', 'githubRepo', 'search', 'testFailure'] --- # Write Coding Standards From File @@ -10,7 +10,7 @@ Use the existing syntax of the file(s) to establish the standards and style guid ## Rules and Configuration -Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. +Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. Parameters for the prompt have a text definition. There is one required parameter **`${fileName}`**, and several optional parameters **`${folderName}`**, **`${instructions}`**, and any **`[configVariableAsParameter]`**. @@ -21,7 +21,7 @@ Parameters for the prompt have a text definition. There is one required paramete * addToREADMEInsertions = ["atBegin", "middle", "beforeEnd", "bestFitUsingContext"]; - Default to **beforeEnd**. * createNewFile = true; -* web/fetchStyleURL = true; +* fetchStyleURL = true; * findInconsistencies = true; * fixInconsistencies = true; * newFileName = ["CONTRIBUTING.md", "STYLE.md", "CODE_OF_CONDUCT.md", "CODING_STANDARDS.md", "DEVELOPING.md", "CONTRIBUTION_GUIDE.md", "GUIDELINES.md", "PROJECT_STANDARDS.md", "BEST_PRACTICES.md", "HACKING.md"]; @@ -87,10 +87,10 @@ If any of the variable names are passed to prompt as-is, or as a similar but cle * Create a new file using the value, or one of the possible values, from `${newFileName}`. * If true, toggle both `${outputSpecToPrompt}` and `${addToREADME}` to false. -### `${web/fetchStyleURL} == true` +### `${fetchStyleURL} == true` -* Additionally use the data web/fetched from the links nested under level three heading `### web/fetch Links` as context for creating standards, specifications, and styling data for the new file, prompt, or `README.md`. -* For each relevant item in `### web/fetch Links`, run `#web/fetch ${item}`. +* Additionally use the data fetched from the links nested under level three heading `### Fetch Links` as context for creating standards, specifications, and styling data for the new file, prompt, or `README.md`. +* For each relevant item in `### Fetch Links`, run `#fetch ${item}`. ### `${findInconsistencies} == true` @@ -132,11 +132,11 @@ If any of the variable names are passed to prompt as-is, or as a similar but cle * Use the custom prompt, instructions, template, or other data passed as guiding template when composing the data for coding standards. -## **if** `${web/fetchStyleURL} == true` +## **if** `${fetchStyleURL} == true` -Depending on the programming language, for each link in list below, run `#web/fetch (URL)`, if programming language is `${fileName} == [ Style Guide]`. +Depending on the programming language, for each link in list below, run `#fetch (URL)`, if programming language is `${fileName} == [ Style Guide]`. -### web/fetch Links +### Fetch Links - [C Style Guide](https://users.ece.cmu.edu/~eno/coding/CCodingStandard.html) - [C# Style Guide](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/coding-conventions) @@ -223,7 +223,7 @@ Depending on the programming language, for each link in list below, run `#web/fe # Style Guide - This document defines the style and conventions used in this project. + This document defines the style and conventions used in this project. All contributions should follow these rules unless otherwise noted. ## 1. General Code Style @@ -311,7 +311,7 @@ Depending on the programming language, for each link in list below, run `#web/fe ## 8. Changes to This Guide - Style evolves. + Style evolves. Propose improvements by opening an issue or sending a patch updating this document. ``` -``` +``` \ No newline at end of file From 531b5118864d33e848863e415cb326ab532f8c77 Mon Sep 17 00:00:00 2001 From: Jon Corbin Date: Mon, 12 Jan 2026 14:07:00 -0500 Subject: [PATCH 25/43] fetch -> web/fetch everywhere --- agents/accessibility.agent.md | 2 +- agents/aem-frontend-specialist.agent.md | 2 +- agents/bicep-implement.agent.md | 2 +- agents/bicep-plan.agent.md | 2 +- agents/critical-thinking.agent.md | 2 +- agents/csharp-dotnet-janitor.agent.md | 2 +- agents/custom-agent-foundry.agent.md | 2 +- agents/demonstrate-understanding.agent.md | 2 +- agents/dotnet-upgrade.agent.md | 2 +- agents/drupal-expert.agent.md | 2 +- agents/expert-cpp-software-engineer.agent.md | 2 +- agents/gilfoyle.agent.md | 2 +- agents/hlbpa.agent.md | 2 +- agents/laravel-expert-agent.agent.md | 2 +- agents/mentor.agent.md | 2 +- agents/pimcore-expert.agent.md | 2 +- agents/principal-software-engineer.agent.md | 2 +- agents/prompt-builder.agent.md | 2 +- agents/se-system-architecture-reviewer.agent.md | 2 +- agents/se-technical-writer.agent.md | 2 +- agents/se-ux-ui-designer.agent.md | 2 +- agents/search-ai-optimization-expert.agent.md | 2 +- agents/semantic-kernel-dotnet.agent.md | 2 +- agents/semantic-kernel-python.agent.md | 2 +- agents/shopify-expert.agent.md | 2 +- agents/simple-app-idea-generator.agent.md | 2 +- agents/software-engineer-agent-v1.agent.md | 2 +- agents/specification.agent.md | 2 +- agents/tech-debt-remediation-plan.agent.md | 2 +- agents/technical-content-evaluator.agent.md | 2 +- agents/voidbeast-gpt41enhanced.agent.md | 2 +- agents/wg-code-alchemist.agent.md | 2 +- agents/wg-code-sentinel.agent.md | 2 +- prompts/add-educational-comments.prompt.md | 2 +- prompts/convert-plaintext-to-md.prompt.md | 2 +- prompts/create-architectural-decision-record.prompt.md | 2 +- prompts/create-github-action-workflow-specification.prompt.md | 2 +- prompts/create-implementation-plan.prompt.md | 2 +- prompts/create-llms.prompt.md | 2 +- prompts/create-oo-component-documentation.prompt.md | 2 +- prompts/create-specification.prompt.md | 2 +- prompts/create-technical-spike.prompt.md | 2 +- prompts/create-tldr-page.prompt.md | 2 +- prompts/github-copilot-starter.prompt.md | 4 ++-- prompts/playwright-explore-website.prompt.md | 2 +- prompts/playwright-generate-test.prompt.md | 2 +- prompts/suggest-awesome-github-copilot-chatmodes.prompt.md | 2 +- prompts/suggest-awesome-github-copilot-collections.prompt.md | 2 +- prompts/suggest-awesome-github-copilot-instructions.prompt.md | 2 +- prompts/suggest-awesome-github-copilot-prompts.prompt.md | 2 +- prompts/tldr-prompt.prompt.md | 2 +- prompts/update-avm-modules-in-bicep.prompt.md | 2 +- prompts/update-implementation-plan.prompt.md | 2 +- prompts/update-llms.prompt.md | 2 +- prompts/update-markdown-file-index.prompt.md | 2 +- prompts/update-oo-component-documentation.prompt.md | 2 +- prompts/update-specification.prompt.md | 2 +- prompts/write-coding-standards-from-file.prompt.md | 2 +- 58 files changed, 59 insertions(+), 59 deletions(-) diff --git a/agents/accessibility.agent.md b/agents/accessibility.agent.md index f2bf6d1c1..69cd49fd9 100644 --- a/agents/accessibility.agent.md +++ b/agents/accessibility.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for web accessibility (WCAG 2.1/2.2), inclusive UX, and a11y testing' model: GPT-4.1 -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Accessibility Expert diff --git a/agents/aem-frontend-specialist.agent.md b/agents/aem-frontend-specialist.agent.md index c0964644d..7f172aeb7 100644 --- a/agents/aem-frontend-specialist.agent.md +++ b/agents/aem-frontend-specialist.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for developing AEM components using HTL, Tailwind CSS, and Figma-to-code workflows with design system integration' model: 'GPT-4.1' -tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] +tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'figma-dev-mode-mcp-server'] --- # AEM Front-End Specialist diff --git a/agents/bicep-implement.agent.md b/agents/bicep-implement.agent.md index 56c7b3508..62c7659fc 100644 --- a/agents/bicep-implement.agent.md +++ b/agents/bicep-implement.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as an Azure Bicep Infrastructure as Code coding specialist that creates Bicep templates.' tools: - [ 'edit/editFiles', 'fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'web/fetch', 'runCommands', 'terminalLastCommand', 'get_bicep_best_practices', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure as Code coding Specialist diff --git a/agents/bicep-plan.agent.md b/agents/bicep-plan.agent.md index 26e7c8858..23c83a057 100644 --- a/agents/bicep-plan.agent.md +++ b/agents/bicep-plan.agent.md @@ -1,7 +1,7 @@ --- description: 'Act as implementation planner for your Azure Bicep Infrastructure as Code task.' tools: - [ 'edit/editFiles', 'fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] + [ 'edit/editFiles', 'web/fetch', 'microsoft-docs', 'azure_design_architecture', 'get_bicep_best_practices', 'bestpractices', 'bicepschema', 'azure_get_azure_verified_module', 'todos' ] --- # Azure Bicep Infrastructure Planning diff --git a/agents/critical-thinking.agent.md b/agents/critical-thinking.agent.md index 4fa9da1e6..0d0568895 100644 --- a/agents/critical-thinking.agent.md +++ b/agents/critical-thinking.agent.md @@ -1,6 +1,6 @@ --- description: 'Challenge assumptions and encourage critical thinking to ensure the best possible solution and outcomes.' -tools: ['codebase', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] +tools: ['codebase', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'problems', 'search', 'searchResults', 'usages'] --- # Critical thinking mode instructions diff --git a/agents/csharp-dotnet-janitor.agent.md b/agents/csharp-dotnet-janitor.agent.md index a7fd15f31..3273fc354 100644 --- a/agents/csharp-dotnet-janitor.agent.md +++ b/agents/csharp-dotnet-janitor.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # C#/.NET Janitor diff --git a/agents/custom-agent-foundry.agent.md b/agents/custom-agent-foundry.agent.md index 576d421cd..58ebec9a8 100644 --- a/agents/custom-agent-foundry.agent.md +++ b/agents/custom-agent-foundry.agent.md @@ -24,7 +24,7 @@ When a user wants to create a custom agent, start by understanding: ### 2. Custom Agent Design Principles **Tool Selection Strategy:** -- **Read-only agents** (planning, research, review): Use `['search', 'fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` +- **Read-only agents** (planning, research, review): Use `['search', 'web/fetch', 'githubRepo', 'usages', 'grep_search', 'read_file', 'semantic_search']` - **Implementation agents** (coding, refactoring): Add `['replace_string_in_file', 'multi_replace_string_in_file', 'create_file', 'run_in_terminal']` - **Testing agents**: Include `['run_notebook_cell', 'test_failure', 'run_in_terminal']` - **Deployment agents**: Include `['run_in_terminal', 'create_and_run_task', 'get_errors']` diff --git a/agents/demonstrate-understanding.agent.md b/agents/demonstrate-understanding.agent.md index 63dc76440..49731de47 100644 --- a/agents/demonstrate-understanding.agent.md +++ b/agents/demonstrate-understanding.agent.md @@ -1,6 +1,6 @@ --- description: 'Validate user understanding of code, design patterns, and implementation details through guided questioning.' -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Demonstrate Understanding mode instructions diff --git a/agents/dotnet-upgrade.agent.md b/agents/dotnet-upgrade.agent.md index fe6472c38..effc8c754 100644 --- a/agents/dotnet-upgrade.agent.md +++ b/agents/dotnet-upgrade.agent.md @@ -1,6 +1,6 @@ --- description: 'Perform janitorial tasks on C#/.NET code including cleanup, modernization, and tech debt remediation.' -tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'fetch', 'microsoft.docs.mcp'] +tools: ['codebase', 'edit/editFiles', 'search', 'runCommands', 'runTasks', 'runTests', 'problems', 'changes', 'usages', 'findTestFiles', 'testFailure', 'terminalLastCommand', 'terminalSelection', 'web/fetch', 'microsoft.docs.mcp'] --- # .NET Upgrade Collection diff --git a/agents/drupal-expert.agent.md b/agents/drupal-expert.agent.md index 2555266fb..1db3015d9 100644 --- a/agents/drupal-expert.agent.md +++ b/agents/drupal-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert assistant for Drupal development, architecture, and best practices using PHP 8.3+ and modern Drupal patterns' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Drupal Expert diff --git a/agents/expert-cpp-software-engineer.agent.md b/agents/expert-cpp-software-engineer.agent.md index cbb1596fb..7050cde3c 100644 --- a/agents/expert-cpp-software-engineer.agent.md +++ b/agents/expert-cpp-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide expert C++ software engineering guidance using modern C++ and industry best practices.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp'] --- # Expert C++ software engineer mode instructions diff --git a/agents/gilfoyle.agent.md b/agents/gilfoyle.agent.md index 2ffd7fff4..269614c05 100644 --- a/agents/gilfoyle.agent.md +++ b/agents/gilfoyle.agent.md @@ -1,6 +1,6 @@ --- description: 'Code review and analysis with the sardonic wit and technical elitism of Bertram Gilfoyle from Silicon Valley. Prepare for brutal honesty about your code.' -tools: ['changes', 'codebase', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'vscodeAPI'] --- # Gilfoyle Code Review Mode diff --git a/agents/hlbpa.agent.md b/agents/hlbpa.agent.md index decdfe6c0..cdedf3c96 100644 --- a/agents/hlbpa.agent.md +++ b/agents/hlbpa.agent.md @@ -5,7 +5,7 @@ tools: - 'search/codebase' - 'changes' - 'edit/editFiles' - - 'fetch' + - 'web/fetch' - 'findTestFiles' - 'githubRepo' - 'runCommands' diff --git a/agents/laravel-expert-agent.agent.md b/agents/laravel-expert-agent.agent.md index c066d7c15..8badba2e5 100644 --- a/agents/laravel-expert-agent.agent.md +++ b/agents/laravel-expert-agent.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Laravel development assistant specializing in modern Laravel 12+ applications with Eloquent, Artisan, testing, and best practices' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems', 'search'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems', 'search'] --- # Laravel Expert Agent diff --git a/agents/mentor.agent.md b/agents/mentor.agent.md index 69cb457d4..c6531ad6b 100644 --- a/agents/mentor.agent.md +++ b/agents/mentor.agent.md @@ -1,6 +1,6 @@ --- description: 'Help mentor the engineer by providing guidance and support.' -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] --- # Mentor mode instructions diff --git a/agents/pimcore-expert.agent.md b/agents/pimcore-expert.agent.md index 8e915e3b6..d841a44e7 100644 --- a/agents/pimcore-expert.agent.md +++ b/agents/pimcore-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Pimcore development assistant specializing in CMS, DAM, PIM, and E-Commerce solutions with Symfony integration' model: GPT-4.1 | 'gpt-5' | 'Claude Sonnet 4.5' -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Pimcore Expert diff --git a/agents/principal-software-engineer.agent.md b/agents/principal-software-engineer.agent.md index 82056fc44..68875d4cd 100644 --- a/agents/principal-software-engineer.agent.md +++ b/agents/principal-software-engineer.agent.md @@ -1,6 +1,6 @@ --- description: 'Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Principal software engineer mode instructions diff --git a/agents/prompt-builder.agent.md b/agents/prompt-builder.agent.md index cb34c06e0..5e1a76eff 100644 --- a/agents/prompt-builder.agent.md +++ b/agents/prompt-builder.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert prompt engineering and validation system for creating high-quality prompts - Brought to you by microsoft/edge-ai' -tools: ['codebase', 'edit/editFiles', 'fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] +tools: ['codebase', 'edit/editFiles', 'web/fetch', 'githubRepo', 'problems', 'runCommands', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'usages', 'terraform', 'Microsoft Docs', 'context7'] --- # Prompt Builder Instructions diff --git a/agents/se-system-architecture-reviewer.agent.md b/agents/se-system-architecture-reviewer.agent.md index 3942b3e84..7ac77dec7 100644 --- a/agents/se-system-architecture-reviewer.agent.md +++ b/agents/se-system-architecture-reviewer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Architect' description: 'System architecture review specialist with Well-Architected frameworks, design validation, and scalability analysis for AI and distributed systems' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # System Architecture Reviewer diff --git a/agents/se-technical-writer.agent.md b/agents/se-technical-writer.agent.md index 4fcda734d..5b4e8ed73 100644 --- a/agents/se-technical-writer.agent.md +++ b/agents/se-technical-writer.agent.md @@ -2,7 +2,7 @@ name: 'SE: Tech Writer' description: 'Technical writing specialist for creating developer documentation, technical blogs, tutorials, and educational content' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # Technical Writer diff --git a/agents/se-ux-ui-designer.agent.md b/agents/se-ux-ui-designer.agent.md index 6b144a95f..d1ee41aa7 100644 --- a/agents/se-ux-ui-designer.agent.md +++ b/agents/se-ux-ui-designer.agent.md @@ -2,7 +2,7 @@ name: 'SE: UX Designer' description: 'Jobs-to-be-Done analysis, user journey mapping, and UX research artifacts for Figma and design workflows' model: GPT-5 -tools: ['codebase', 'edit/editFiles', 'search', 'fetch'] +tools: ['codebase', 'edit/editFiles', 'search', 'web/fetch'] --- # UX/UI Designer diff --git a/agents/search-ai-optimization-expert.agent.md b/agents/search-ai-optimization-expert.agent.md index 50dd32f18..123fb7a82 100644 --- a/agents/search-ai-optimization-expert.agent.md +++ b/agents/search-ai-optimization-expert.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert guidance for modern search optimization: SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO) with AI-ready content strategies' -tools: ['codebase', 'fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] +tools: ['codebase', 'web/fetch', 'githubRepo', 'terminalCommand', 'edit/editFiles', 'problems'] --- # Search & AI Optimization Expert diff --git a/agents/semantic-kernel-dotnet.agent.md b/agents/semantic-kernel-dotnet.agent.md index 02efb99f2..a93dfc715 100644 --- a/agents/semantic-kernel-dotnet.agent.md +++ b/agents/semantic-kernel-dotnet.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the .NET version of Semantic Kernel.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Semantic Kernel .NET mode instructions diff --git a/agents/semantic-kernel-python.agent.md b/agents/semantic-kernel-python.agent.md index 39fb04b72..eb680ddcd 100644 --- a/agents/semantic-kernel-python.agent.md +++ b/agents/semantic-kernel-python.agent.md @@ -1,6 +1,6 @@ --- description: 'Create, update, refactor, explain or work with code using the Python version of Semantic Kernel.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'configurePythonEnvironment', 'getPythonEnvironmentInfo', 'getPythonExecutableCommand', 'installPythonPackage'] --- # Semantic Kernel Python mode instructions diff --git a/agents/shopify-expert.agent.md b/agents/shopify-expert.agent.md index 8b5cb4f30..66d89060d 100644 --- a/agents/shopify-expert.agent.md +++ b/agents/shopify-expert.agent.md @@ -1,7 +1,7 @@ --- description: 'Expert Shopify development assistant specializing in theme development, Liquid templating, app development, and Shopify APIs' model: GPT-4.1 -tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'fetch', 'githubRepo', 'runTests', 'problems'] +tools: ['codebase', 'terminalCommand', 'edit/editFiles', 'web/fetch', 'githubRepo', 'runTests', 'problems'] --- # Shopify Expert diff --git a/agents/simple-app-idea-generator.agent.md b/agents/simple-app-idea-generator.agent.md index 970703a31..91332d41b 100644 --- a/agents/simple-app-idea-generator.agent.md +++ b/agents/simple-app-idea-generator.agent.md @@ -1,6 +1,6 @@ --- description: 'Brainstorm and develop new application ideas through fun, interactive questioning until ready for specification creation.' -tools: ['changes', 'codebase', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] +tools: ['changes', 'codebase', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'search', 'searchResults', 'usages', 'microsoft.docs.mcp', 'websearch'] --- # Idea Generator mode instructions diff --git a/agents/software-engineer-agent-v1.agent.md b/agents/software-engineer-agent-v1.agent.md index 39cfe17b1..b4b7bafce 100644 --- a/agents/software-engineer-agent-v1.agent.md +++ b/agents/software-engineer-agent-v1.agent.md @@ -1,6 +1,6 @@ --- description: 'Expert-level software engineering agent. Deliver production-ready, maintainable code. Execute systematically and specification-driven. Document comprehensively. Operate autonomously and adaptively.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Software Engineer Agent v1 diff --git a/agents/specification.agent.md b/agents/specification.agent.md index 8ae88d58b..b120dfe52 100644 --- a/agents/specification.agent.md +++ b/agents/specification.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate or update specification documents for new or existing functionality.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github'] --- # Specification mode instructions diff --git a/agents/tech-debt-remediation-plan.agent.md b/agents/tech-debt-remediation-plan.agent.md index 5e96c3c21..6941896ce 100644 --- a/agents/tech-debt-remediation-plan.agent.md +++ b/agents/tech-debt-remediation-plan.agent.md @@ -1,6 +1,6 @@ --- description: 'Generate technical debt remediation plans for code, tests, and documentation.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'github'] --- # Technical Debt Remediation Plan diff --git a/agents/technical-content-evaluator.agent.md b/agents/technical-content-evaluator.agent.md index a3bad60f6..632375491 100644 --- a/agents/technical-content-evaluator.agent.md +++ b/agents/technical-content-evaluator.agent.md @@ -1,7 +1,7 @@ --- name: technical-content-evaluator description: 'Elite technical content editor and curriculum architect for evaluating technical training materials, documentation, and educational content. Reviews for technical accuracy, pedagogical excellence, content flow, code validation, and ensures A-grade quality standards.' -tools: ['edit', 'search', 'shell', 'fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] +tools: ['edit', 'search', 'shell', 'web/fetch', 'runTasks', 'githubRepo', 'todos', 'runSubagent'] model: Claude Sonnet 4.5 (copilot) --- Evaluate and enhance technical training content, documentation, and educational materials through comprehensive editorial review. Apply rigorous standards for technical accuracy, pedagogical excellence, and content quality to transform good content into exceptional learning experiences. diff --git a/agents/voidbeast-gpt41enhanced.agent.md b/agents/voidbeast-gpt41enhanced.agent.md index 0a633efc4..e7782f652 100644 --- a/agents/voidbeast-gpt41enhanced.agent.md +++ b/agents/voidbeast-gpt41enhanced.agent.md @@ -1,6 +1,6 @@ --- description: '4.1 voidBeast_GPT41Enhanced 1.0 : a advanced autonomous developer agent, designed for elite full-stack development with enhanced multi-mode capabilities. This latest evolution features sophisticated mode detection, comprehensive research capabilities, and never-ending problem resolution. Plan/Act/Deep Research/Analyzer/Checkpoints(Memory)/Prompt Generator Modes.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'readCellOutput', 'runCommands', 'runNotebooks', 'runTasks', 'runTests', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'updateUserPreferences', 'usages', 'vscodeAPI'] --- # voidBeast_GPT41Enhanced 1.0 - Elite Developer AI Assistant diff --git a/agents/wg-code-alchemist.agent.md b/agents/wg-code-alchemist.agent.md index a41eeb0a1..000cd749a 100644 --- a/agents/wg-code-alchemist.agent.md +++ b/agents/wg-code-alchemist.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Alchemist to transform your code with Clean Code principles and SOLID design' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Alchemist, an expert software engineer specializing in Clean Code practices and SOLID principles. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/agents/wg-code-sentinel.agent.md b/agents/wg-code-sentinel.agent.md index adafd2af0..bd59a6009 100644 --- a/agents/wg-code-sentinel.agent.md +++ b/agents/wg-code-sentinel.agent.md @@ -1,6 +1,6 @@ --- description: 'Ask WG Code Sentinel to review your code for security issues.' -tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runNotebooks', 'runTasks', 'search', 'searchResults', 'terminalLastCommand', 'terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- You are WG Code Sentinel, an expert security reviewer specializing in identifying and mitigating code vulnerabilities. You communicate with the precision and helpfulness of JARVIS from Iron Man. diff --git a/prompts/add-educational-comments.prompt.md b/prompts/add-educational-comments.prompt.md index 2469d1800..3aff544d3 100644 --- a/prompts/add-educational-comments.prompt.md +++ b/prompts/add-educational-comments.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Add educational comments to the file specified, or prompt asking for file to comment if one is not provided.' -tools: ['edit/editFiles', 'fetch', 'todos'] +tools: ['edit/editFiles', 'web/fetch', 'todos'] --- # Add Educational Comments diff --git a/prompts/convert-plaintext-to-md.prompt.md b/prompts/convert-plaintext-to-md.prompt.md index 6029e5f21..4af122dab 100644 --- a/prompts/convert-plaintext-to-md.prompt.md +++ b/prompts/convert-plaintext-to-md.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Convert a text-based document to markdown following instructions from prompt, or if a documented option is passed, follow the instructions for that option.' -tools: ['edit', 'edit/editFiles', 'fetch', 'runCommands', 'search', 'search/readFile', 'search/textSearch'] +tools: ['edit', 'edit/editFiles', 'web/fetch', 'runCommands', 'search', 'search/readFile', 'search/textSearch'] --- # Convert Plaintext Documentation to Markdown diff --git a/prompts/create-architectural-decision-record.prompt.md b/prompts/create-architectural-decision-record.prompt.md index 077b6afed..5b1840b8a 100644 --- a/prompts/create-architectural-decision-record.prompt.md +++ b/prompts/create-architectural-decision-record.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create an Architectural Decision Record (ADR) document for AI-optimized decision documentation.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Architectural Decision Record diff --git a/prompts/create-github-action-workflow-specification.prompt.md b/prompts/create-github-action-workflow-specification.prompt.md index cec08185e..9979f4e55 100644 --- a/prompts/create-github-action-workflow-specification.prompt.md +++ b/prompts/create-github-action-workflow-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a formal specification for an existing GitHub Actions CI/CD workflow, optimized for AI consumption and workflow maintenance.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runInTerminal2', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'Microsoft Docs'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'new', 'openSimpleBrowser', 'problems', 'runCommands', 'runInTerminal2', 'runNotebooks', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI', 'microsoft.docs.mcp', 'github', 'Microsoft Docs'] --- # Create GitHub Actions Workflow Specification diff --git a/prompts/create-implementation-plan.prompt.md b/prompts/create-implementation-plan.prompt.md index e6ed3b113..ffc0bc0fe 100644 --- a/prompts/create-implementation-plan.prompt.md +++ b/prompts/create-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new implementation plan file for new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Implementation Plan diff --git a/prompts/create-llms.prompt.md b/prompts/create-llms.prompt.md index 95f661c6c..c9e5e58f8 100644 --- a/prompts/create-llms.prompt.md +++ b/prompts/create-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create an llms.txt file from scratch based on repository structure following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create LLMs.txt File from Repository Structure diff --git a/prompts/create-oo-component-documentation.prompt.md b/prompts/create-oo-component-documentation.prompt.md index 1042534d3..33bb0cf92 100644 --- a/prompts/create-oo-component-documentation.prompt.md +++ b/prompts/create-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Generate Standard OO Component Documentation diff --git a/prompts/create-specification.prompt.md b/prompts/create-specification.prompt.md index 664e695ec..08093e046 100644 --- a/prompts/create-specification.prompt.md +++ b/prompts/create-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a new specification file for the solution, optimized for Generative AI consumption.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Create Specification diff --git a/prompts/create-technical-spike.prompt.md b/prompts/create-technical-spike.prompt.md index aa7162ec1..678b89e35 100644 --- a/prompts/create-technical-spike.prompt.md +++ b/prompts/create-technical-spike.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation.' -tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] +tools: ['runCommands', 'runTasks', 'edit', 'search', 'extensions', 'usages', 'vscodeAPI', 'think', 'problems', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'Microsoft Docs', 'search'] --- # Create Technical Spike Document diff --git a/prompts/create-tldr-page.prompt.md b/prompts/create-tldr-page.prompt.md index 03a0f93f0..fa5f67516 100644 --- a/prompts/create-tldr-page.prompt.md +++ b/prompts/create-tldr-page.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create a tldr page from documentation URLs and command examples, requiring both URL and command name.' -tools: ['edit/createFile', 'fetch'] +tools: ['edit/createFile', 'web/fetch'] --- # Create TLDR Page diff --git a/prompts/github-copilot-starter.prompt.md b/prompts/github-copilot-starter.prompt.md index f1fddc3f4..dee90a1b1 100644 --- a/prompts/github-copilot-starter.prompt.md +++ b/prompts/github-copilot-starter.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' model: Claude Sonnet 4 -tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'fetch'] +tools: ['edit', 'githubRepo', 'changes', 'problems', 'search', 'runCommands', 'web/fetch'] description: 'Set up complete GitHub Copilot configuration for a new project based on technology stack' --- @@ -237,7 +237,7 @@ Requirements for the form: ```yaml --- description: Generate an implementation plan for new features or refactoring existing code. -tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] +tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages'] model: Claude Sonnet 4 --- # Planning mode instructions diff --git a/prompts/playwright-explore-website.prompt.md b/prompts/playwright-explore-website.prompt.md index ad2917f42..e8cc123fd 100644 --- a/prompts/playwright-explore-website.prompt.md +++ b/prompts/playwright-explore-website.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Website exploration for testing using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'findTestFiles', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright'] model: 'Claude Sonnet 4' --- diff --git a/prompts/playwright-generate-test.prompt.md b/prompts/playwright-generate-test.prompt.md index 103195db1..1e683caf9 100644 --- a/prompts/playwright-generate-test.prompt.md +++ b/prompts/playwright-generate-test.prompt.md @@ -1,7 +1,7 @@ --- agent: agent description: 'Generate a Playwright test based on a scenario using Playwright MCP' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'web/fetch', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'playwright/*'] model: 'Claude Sonnet 4.5' --- diff --git a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md index a32038968..054d3b266 100644 --- a/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md +++ b/prompts/suggest-awesome-github-copilot-chatmodes.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Custom Chat Modes diff --git a/prompts/suggest-awesome-github-copilot-collections.prompt.md b/prompts/suggest-awesome-github-copilot-collections.prompt.md index 40472aa72..efde66434 100644 --- a/prompts/suggest-awesome-github-copilot-collections.prompt.md +++ b/prompts/suggest-awesome-github-copilot-collections.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Collections diff --git a/prompts/suggest-awesome-github-copilot-instructions.prompt.md b/prompts/suggest-awesome-github-copilot-instructions.prompt.md index be06e76e9..08d3fa0c2 100644 --- a/prompts/suggest-awesome-github-copilot-instructions.prompt.md +++ b/prompts/suggest-awesome-github-copilot-instructions.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Instructions diff --git a/prompts/suggest-awesome-github-copilot-prompts.prompt.md b/prompts/suggest-awesome-github-copilot-prompts.prompt.md index ab3a6b11f..904f12a3a 100644 --- a/prompts/suggest-awesome-github-copilot-prompts.prompt.md +++ b/prompts/suggest-awesome-github-copilot-prompts.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository.' -tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'fetch', 'githubRepo', 'todos', 'search'] +tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Prompts diff --git a/prompts/tldr-prompt.prompt.md b/prompts/tldr-prompt.prompt.md index 479661de6..4369d10fe 100644 --- a/prompts/tldr-prompt.prompt.md +++ b/prompts/tldr-prompt.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Create tldr summaries for GitHub Copilot files (prompts, agents, instructions, collections), MCP servers, or documentation from URLs and queries.' -tools: ['fetch', 'search/readFile', 'search', 'search/textSearch'] +tools: ['web/fetch', 'search/readFile', 'search', 'search/textSearch'] model: 'claude-sonnet-4' --- diff --git a/prompts/update-avm-modules-in-bicep.prompt.md b/prompts/update-avm-modules-in-bicep.prompt.md index b603a8800..49fcda94c 100644 --- a/prompts/update-avm-modules-in-bicep.prompt.md +++ b/prompts/update-avm-modules-in-bicep.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update Azure Verified Modules (AVM) to latest versions in Bicep files.' -tools: ['search/codebase', 'think', 'changes', 'fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] +tools: ['search/codebase', 'think', 'changes', 'web/fetch', 'search/searchResults', 'todos', 'edit/editFiles', 'search', 'runCommands', 'bicepschema', 'azure_get_schema_for_Bicep'] --- # Update Azure Verified Modules in Bicep Files diff --git a/prompts/update-implementation-plan.prompt.md b/prompts/update-implementation-plan.prompt.md index 3ff01b07f..8de4eab89 100644 --- a/prompts/update-implementation-plan.prompt.md +++ b/prompts/update-implementation-plan.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing implementation plan file with new or update requirements to provide new features, refactoring existing code or upgrading packages, design, architecture or infrastructure.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Implementation Plan diff --git a/prompts/update-llms.prompt.md b/prompts/update-llms.prompt.md index 0e3f4e217..bbeab69d4 100644 --- a/prompts/update-llms.prompt.md +++ b/prompts/update-llms.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update the llms.txt file in the root folder to reflect changes in documentation or specifications following the llms.txt specification at https://llmstxt.org/' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update LLMs.txt File diff --git a/prompts/update-markdown-file-index.prompt.md b/prompts/update-markdown-file-index.prompt.md index 8078097af..08f98a676 100644 --- a/prompts/update-markdown-file-index.prompt.md +++ b/prompts/update-markdown-file-index.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update a markdown file section with an index/table of files from a specified folder.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'findTestFiles', 'githubRepo', 'openSimpleBrowser', 'problems', 'runCommands', 'runTasks', 'runTests', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Markdown File Index diff --git a/prompts/update-oo-component-documentation.prompt.md b/prompts/update-oo-component-documentation.prompt.md index c3857e4a1..5300f0f70 100644 --- a/prompts/update-oo-component-documentation.prompt.md +++ b/prompts/update-oo-component-documentation.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update existing object-oriented component documentation following industry best practices and architectural documentation standards.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Standard OO Component Documentation diff --git a/prompts/update-specification.prompt.md b/prompts/update-specification.prompt.md index 0f031ae10..15c9f392c 100644 --- a/prompts/update-specification.prompt.md +++ b/prompts/update-specification.prompt.md @@ -1,7 +1,7 @@ --- agent: 'agent' description: 'Update an existing specification file for the solution, optimized for Generative AI consumption based on new requirements or updates to any existing code.' -tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] +tools: ['changes', 'search/codebase', 'edit/editFiles', 'extensions', 'web/fetch', 'githubRepo', 'openSimpleBrowser', 'problems', 'runTasks', 'search', 'search/searchResults', 'runCommands/terminalLastCommand', 'runCommands/terminalSelection', 'testFailure', 'usages', 'vscodeAPI'] --- # Update Specification diff --git a/prompts/write-coding-standards-from-file.prompt.md b/prompts/write-coding-standards-from-file.prompt.md index 1ea779585..45af53ba4 100644 --- a/prompts/write-coding-standards-from-file.prompt.md +++ b/prompts/write-coding-standards-from-file.prompt.md @@ -1,7 +1,7 @@ --- agent: "agent" description: "Write a coding standards document for a project using the coding styles from the file(s) and/or folder(s) passed as arguments in the prompt." -tools: ['createFile', 'editFiles', 'fetch', 'githubRepo', 'search', 'testFailure'] +tools: ['createFile', 'editFiles', 'web/fetch', 'githubRepo', 'search', 'testFailure'] --- # Write Coding Standards From File From c7178c31c6b9f0e6251c28831c754fb00386927e Mon Sep 17 00:00:00 2001 From: Jon Corbin Date: Mon, 12 Jan 2026 14:09:49 -0500 Subject: [PATCH 26/43] Apply suggestions from code review --- prompts/write-coding-standards-from-file.prompt.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/prompts/write-coding-standards-from-file.prompt.md b/prompts/write-coding-standards-from-file.prompt.md index 45af53ba4..d075c5749 100644 --- a/prompts/write-coding-standards-from-file.prompt.md +++ b/prompts/write-coding-standards-from-file.prompt.md @@ -10,7 +10,7 @@ Use the existing syntax of the file(s) to establish the standards and style guid ## Rules and Configuration -Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. +Below is a set of quasi-configuration `boolean` and `string[]` variables. Conditions for handling `true`, or other values for each variable are under the level two heading `## Variable and Parameter Configuration Conditions`. Parameters for the prompt have a text definition. There is one required parameter **`${fileName}`**, and several optional parameters **`${folderName}`**, **`${instructions}`**, and any **`[configVariableAsParameter]`**. @@ -223,7 +223,7 @@ Depending on the programming language, for each link in list below, run `#fetch # Style Guide - This document defines the style and conventions used in this project. + This document defines the style and conventions used in this project. All contributions should follow these rules unless otherwise noted. ## 1. General Code Style @@ -311,7 +311,7 @@ Depending on the programming language, for each link in list below, run `#fetch ## 8. Changes to This Guide - Style evolves. + Style evolves. Propose improvements by opening an issue or sending a patch updating this document. ``` ``` \ No newline at end of file From 9587bdef20103d1d2cf1fa37178cee2318872aca Mon Sep 17 00:00:00 2001 From: bmaucote Date: Tue, 13 Jan 2026 11:50:50 +0100 Subject: [PATCH 27/43] Add handoffs --- instructions/agents.instructions.md | 170 ++++++++++++++++++++++++++++ 1 file changed, 170 insertions(+) diff --git a/instructions/agents.instructions.md b/instructions/agents.instructions.md index 8d602c881..ba037976e 100644 --- a/instructions/agents.instructions.md +++ b/instructions/agents.instructions.md @@ -76,6 +76,176 @@ infer: true - Only supported for organization/enterprise level agents - See "MCP Server Configuration" section below +#### **handoffs** (OPTIONAL, VS Code only) +- Enable guided sequential workflows that transition between agents with suggested next steps +- List of handoff configurations, each specifying a target agent and optional prompt +- After a chat response completes, handoff buttons appear allowing users to move to the next agent +- Only supported in VS Code (version 1.106+) +- See "Handoffs Configuration" section below for details + +## Handoffs Configuration + +Handoffs enable you to create guided sequential workflows that transition seamlessly between custom agents. This is useful for orchestrating multi-step development workflows where users can review and approve each step before moving to the next one. + +### Common Handoff Patterns + +- **Planning → Implementation**: Generate a plan in a planning agent, then hand off to an implementation agent to start coding +- **Implementation → Review**: Complete implementation, then switch to a code review agent to check for quality and security issues +- **Write Failing Tests → Write Passing Tests**: Generate failing tests, then hand off to implement the code that makes those tests pass +- **Research → Documentation**: Research a topic, then transition to a documentation agent to write guides + +### Handoff Frontmatter Structure + +Define handoffs in the agent file's YAML frontmatter using the `handoffs` field: + +```yaml +--- +description: 'Brief description of the agent' +name: 'Agent Name' +tools: ['search', 'read'] +handoffs: + - label: Start Implementation + agent: implementation + prompt: 'Now implement the plan outlined above.' + send: false + - label: Code Review + agent: code-review + prompt: 'Please review the implementation for quality and security issues.' + send: false +--- +``` + +### Handoff Properties + +Each handoff in the list must include the following properties: + +| Property | Type | Required | Description | +|----------|------|----------|-------------| +| `label` | string | Yes | The display text shown on the handoff button in the chat interface | +| `agent` | string | Yes | The target agent identifier to switch to (name or filename without `.agent.md`) | +| `prompt` | string | No | The prompt text to pre-fill in the target agent's chat input | +| `send` | boolean | No | If `true`, automatically submits the prompt to the target agent (default: `false`) | + +### Handoff Behavior + +- **Button Display**: Handoff buttons appear as interactive suggestions after a chat response completes +- **Context Preservation**: When users select a handoff button, they switch to the target agent with conversation context maintained +- **Pre-filled Prompt**: If a `prompt` is specified, it appears pre-filled in the target agent's chat input +- **Manual vs Auto**: When `send: false`, users must review and manually send the pre-filled prompt; when `send: true`, the prompt is automatically submitted + +### Handoff Configuration Guidelines + +#### When to Use Handoffs + +- **Multi-step workflows**: Breaking down complex tasks across specialized agents +- **Quality gates**: Ensuring review steps between implementation phases +- **Guided processes**: Directing users through a structured development process +- **Skill transitions**: Moving from planning/design to implementation/testing specialists + +#### Best Practices + +- **Clear Labels**: Use action-oriented labels that clearly indicate the next step + - ✅ Good: "Start Implementation", "Review for Security", "Write Tests" + - ❌ Avoid: "Next", "Go to agent", "Do something" + +- **Relevant Prompts**: Provide context-aware prompts that reference the completed work + - ✅ Good: `'Now implement the plan outlined above.'` + - ❌ Avoid: Generic prompts without context + +- **Selective Use**: Don't create handoffs to every possible agent; focus on logical workflow transitions + - Limit to 2-3 most relevant next steps per agent + - Only add handoffs for agents that naturally follow in the workflow + +- **Agent Dependencies**: Ensure target agents exist before creating handoffs + - Handoffs to non-existent agents will be silently ignored + - Test handoffs to verify they work as expected + +- **Prompt Content**: Keep prompts concise and actionable + - Refer to work from the current agent without duplicating content + - Provide any necessary context the target agent might need + +### Example: Complete Workflow + +Here's an example of three agents with handoffs creating a complete workflow: + +**Planning Agent** (`planner.agent.md`): +```yaml +--- +description: 'Generate an implementation plan for new features or refactoring' +name: 'Planner' +tools: ['search', 'read'] +handoffs: + - label: Implement Plan + agent: implementer + prompt: 'Implement the plan outlined above.' + send: false +--- +# Planner Agent +You are a planning specialist. Your task is to: +1. Analyze the requirements +2. Break down the work into logical steps +3. Generate a detailed implementation plan +4. Identify testing requirements + +Do not write any code - focus only on planning. +``` + +**Implementation Agent** (`implementer.agent.md`): +```yaml +--- +description: 'Implement code based on a plan or specification' +name: 'Implementer' +tools: ['read', 'edit', 'search', 'execute'] +handoffs: + - label: Review Implementation + agent: reviewer + prompt: 'Please review this implementation for code quality, security, and adherence to best practices.' + send: false +--- +# Implementer Agent +You are an implementation specialist. Your task is to: +1. Follow the provided plan or specification +2. Write clean, maintainable code +3. Include appropriate comments and documentation +4. Follow project coding standards + +Implement the solution completely and thoroughly. +``` + +**Review Agent** (`reviewer.agent.md`): +```yaml +--- +description: 'Review code for quality, security, and best practices' +name: 'Reviewer' +tools: ['read', 'search'] +handoffs: + - label: Back to Planning + agent: planner + prompt: 'Review the feedback above and determine if a new plan is needed.' + send: false +--- +# Code Review Agent +You are a code review specialist. Your task is to: +1. Check code quality and maintainability +2. Identify security issues and vulnerabilities +3. Verify adherence to project standards +4. Suggest improvements + +Provide constructive feedback on the implementation. +``` + +This workflow allows a developer to: +1. Start with the Planner agent to create a detailed plan +2. Hand off to the Implementer agent to write code based on the plan +3. Hand off to the Reviewer agent to check the implementation +4. Optionally hand off back to planning if significant issues are found + +### Version Compatibility + +- **VS Code**: Handoffs are supported in VS Code 1.106 and later +- **GitHub.com**: Not currently supported; agent transition workflows use different mechanisms +- **Other IDEs**: Limited or no support; focus on VS Code implementations for maximum compatibility + ## Tool Configuration ### Tool Specification Strategies From 455267364123ec3c71930a3f4bd7d2d38d4ec4b6 Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Wed, 14 Jan 2026 19:57:02 +0800 Subject: [PATCH 28/43] feat: enhance agent suggestion prompt to detect and update outdated agents MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add version comparison process to identify outdated local agents - Introduce ⚠️ status icon for installed but outdated agents - Add detailed comparison of remote vs local agent content - Include update handling instructions for outdated agents - Enhance process to fetch and compare remote versions - Update output format to show outdated agents with specific differences --- ...st-awesome-github-copilot-agents.prompt.md | 55 +++++++++++++++---- 1 file changed, 45 insertions(+), 10 deletions(-) diff --git a/prompts/suggest-awesome-github-copilot-agents.prompt.md b/prompts/suggest-awesome-github-copilot-agents.prompt.md index dc4a14d52..c5aed01cd 100644 --- a/prompts/suggest-awesome-github-copilot-agents.prompt.md +++ b/prompts/suggest-awesome-github-copilot-agents.prompt.md @@ -1,6 +1,6 @@ --- agent: "agent" -description: "Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository." +description: "Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository, and identifying outdated agents that need updates." tools: ["edit", "search", "runCommands", "runTasks", "changes", "testFailure", "openSimpleBrowser", "fetch", "githubRepo", "todos"] --- @@ -13,14 +13,23 @@ Analyze current repository context and suggest relevant Custom Agents files from 1. **Fetch Available Custom Agents**: Extract Custom Agents list and descriptions from [awesome-copilot README.agents.md](https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md). Must use `fetch` tool. 2. **Scan Local Custom Agents**: Discover existing custom agent files in `.github/agents/` folder 3. **Extract Descriptions**: Read front matter from local custom agent files to get descriptions -4. **Analyze Context**: Review chat history, repository files, and current project needs -5. **Compare Existing**: Check against custom agents already available in this repository -6. **Match Relevance**: Compare available custom agents against identified patterns and requirements -7. **Present Options**: Display relevant custom agents with descriptions, rationale, and availability status -8. **Validate**: Ensure suggested agents would add value not already covered by existing agents -9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom agents and similar local custom agents - **AWAIT** user request to proceed with installation of specific custom agents. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested agents, automatically download and install individual agents to `.github/agents/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +4. **Fetch Remote Versions**: For each local agent, fetch the corresponding version from awesome-copilot repository using raw GitHub URLs (e.g., `https://raw.githubusercontent.com/github/awesome-copilot/main/agents/`) +5. **Compare Versions**: Compare local agent content with remote versions to identify: + - Agents that are up-to-date (exact match) + - Agents that are outdated (content differs) + - Key differences in outdated agents (tools, description, content) +6. **Analyze Context**: Review chat history, repository files, and current project needs +7. **Match Relevance**: Compare available custom agents against identified patterns and requirements +8. **Present Options**: Display relevant custom agents with descriptions, rationale, and availability status including outdated agents +9. **Validate**: Ensure suggested agents would add value not already covered by existing agents +10. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot custom agents and similar local custom agents + **AWAIT** user request to proceed with installation or updates of specific custom agents. DO NOT INSTALL OR UPDATE UNLESS DIRECTED TO DO SO. +11. **Download/Update Assets**: For requested agents, automatically: + - Download new agents to `.github/agents/` folder + - Update outdated agents by replacing with latest version from awesome-copilot + - Do NOT adjust content of the files + - Use `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved + - Use `#todos` tool to track progress ## Context Analysis Criteria @@ -46,6 +55,7 @@ Display analysis results in structured table comparing awesome-copilot custom ag | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- | ---------------------------------- | ------------------------------------------------------------- | | [amplitude-experiment-implementation.agent.md](https://github.com/github/awesome-copilot/blob/main/agents/amplitude-experiment-implementation.agent.md) | This custom agent uses Amplitude's MCP tools to deploy new experiments inside of Amplitude, enabling seamless variant testing capabilities and rollout of product features | ❌ No | None | Would enhance experimentation capabilities within the product | | [launchdarkly-flag-cleanup.agent.md](https://github.com/github/awesome-copilot/blob/main/agents/launchdarkly-flag-cleanup.agent.md) | Feature flag cleanup agent for LaunchDarkly | ✅ Yes | launchdarkly-flag-cleanup.agent.md | Already covered by existing LaunchDarkly custom agents | +| [principal-software-engineer.agent.md](https://github.com/github/awesome-copilot/blob/main/agents/principal-software-engineer.agent.md) | Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation. | ⚠️ Outdated | principal-software-engineer.agent.md | Tools configuration differs: remote uses `'web/fetch'` vs local `'fetch'` - Update recommended | ## Local Agent Discovery Process @@ -54,19 +64,44 @@ Display analysis results in structured table comparing awesome-copilot custom ag 3. Build comprehensive inventory of existing agents 4. Use this inventory to avoid suggesting duplicates +## Version Comparison Process + +1. For each local agent file, construct the raw GitHub URL to fetch the remote version: + - Pattern: `https://raw.githubusercontent.com/github/awesome-copilot/main/agents/` +2. Fetch the remote version using the `fetch` tool +3. Compare entire file content (including front matter, tools array, and body) +4. Identify specific differences: + - **Front matter changes** (description, tools) + - **Tools array modifications** (added, removed, or renamed tools) + - **Content updates** (instructions, examples, guidelines) +5. Document key differences for outdated agents +6. Calculate similarity to determine if update is needed + ## Requirements - Use `githubRepo` tool to get content from awesome-copilot repository agents folder - Scan local file system for existing agents in `.github/agents/` directory - Read YAML front matter from local agent files to extract descriptions +- Compare local agents with remote versions to detect outdated agents - Compare against existing agents in this repository to avoid duplicates - Focus on gaps in current agent library coverage - Validate that suggested agents align with repository's purpose and standards - Provide clear rationale for each suggestion - Include links to both awesome-copilot agents and similar local agents +- Clearly identify outdated agents with specific differences noted - Don't provide any additional information or context beyond the table and the analysis ## Icons Reference -- ✅ Already installed in repo +- ✅ Already installed and up-to-date +- ⚠️ Installed but outdated (update available) - ❌ Not installed in repo + +## Update Handling + +When outdated agents are identified: +1. Include them in the output table with ⚠️ status +2. Document specific differences in the "Suggestion Rationale" column +3. Provide recommendation to update with key changes noted +4. When user requests update, replace entire local file with remote version +5. Preserve file location in `.github/agents/` directory From 46c07753c05e292756e3dafa6ad5a8c31432c206 Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Wed, 14 Jan 2026 20:01:21 +0800 Subject: [PATCH 29/43] README --- collections/awesome-copilot.md | 2 +- docs/README.prompts.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/collections/awesome-copilot.md b/collections/awesome-copilot.md index 1f85ce6c7..3c45c4314 100644 --- a/collections/awesome-copilot.md +++ b/collections/awesome-copilot.md @@ -10,7 +10,7 @@ Meta prompts that help you discover and generate curated GitHub Copilot chat mod | ----- | ---- | ----------- | ----------- | | [Meta Agentic Project Scaffold](../agents/meta-agentic-project-scaffold.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fmeta-agentic-project-scaffold.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fmeta-agentic-project-scaffold.agent.md) | Agent | Meta agentic project creation assistant to help users create and manage project workflows effectively. | | | [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Prompt | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets. | | -| [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Prompt | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository. | | +| [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Prompt | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository, and identifying outdated agents that need updates. | | | [Suggest Awesome GitHub Copilot Custom Chat Modes](../prompts/suggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md) | Prompt | Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository. | | | [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Prompt | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository. | | | [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Prompt | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | | diff --git a/docs/README.prompts.md b/docs/README.prompts.md index 55f4e2157..1a0b67473 100644 --- a/docs/README.prompts.md +++ b/docs/README.prompts.md @@ -129,7 +129,7 @@ Ready-to-use prompt templates for specific development scenarios and tasks, defi | [SQL Code Review](../prompts/sql-code-review.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-code-review.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-code-review.prompt.md) | Universal SQL code review assistant that performs comprehensive security, maintainability, and code quality analysis across all SQL databases (MySQL, PostgreSQL, SQL Server, Oracle). Focuses on SQL injection prevention, access control, code standards, and anti-pattern detection. Complements SQL optimization prompt for complete development coverage. | | [SQL Performance Optimization Assistant](../prompts/sql-optimization.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-optimization.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-optimization.prompt.md) | Universal SQL performance optimization assistant for comprehensive query tuning, indexing strategies, and database performance analysis across all SQL databases (MySQL, PostgreSQL, SQL Server, Oracle). Provides execution plan analysis, pagination optimization, batch operations, and performance monitoring guidance. | | [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets. | -| [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository. | +| [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository, and identifying outdated agents that need updates. | | [Suggest Awesome GitHub Copilot Custom Chat Modes](../prompts/suggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md) | Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository. | | [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository. | | [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | From e57e0f481695a4038b028041bd7a294f5e93ec3a Mon Sep 17 00:00:00 2001 From: jhauga Date: Wed, 14 Jan 2026 16:01:01 -0500 Subject: [PATCH 30/43] Instructions for best color practices --- docs/README.instructions.md | 1 + ...html-css-style-color-guide.instructions.md | 104 ++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 instructions/html-css-style-color-guide.instructions.md diff --git a/docs/README.instructions.md b/docs/README.instructions.md index 1f7d3272c..4574b3d52 100644 --- a/docs/README.instructions.md +++ b/docs/README.instructions.md @@ -86,6 +86,7 @@ Team and project-specific instructions to enhance GitHub Copilot's behavior for | [Go MCP Server Development Guidelines](../instructions/go-mcp-server.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fgo-mcp-server.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fgo-mcp-server.instructions.md) | Best practices and patterns for building Model Context Protocol (MCP) servers in Go using the official github.com/modelcontextprotocol/go-sdk package. | | [Guidance for Localization](../instructions/localization.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Flocalization.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Flocalization.instructions.md) | Guidelines for localizing markdown documents | | [How to Use the Sample Components](../instructions/pcf-sample-components.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fpcf-sample-components.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fpcf-sample-components.instructions.md) | How to use and run PCF sample components from the PowerApps-Samples repository | +| [HTML CSS Style Color Guide](../instructions/html-css-style-color-guide.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fhtml-css-style-color-guide.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fhtml-css-style-color-guide.instructions.md) | Color usage guidelines and styling rules for HTML elements to ensure accessible, professional designs. | | [Instructions for accessibility](../instructions/a11y.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fa11y.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fa11y.instructions.md) | Guidance for creating more accessible code | | [Java 11 to Java 17 Upgrade Guide](../instructions/java-11-to-java-17-upgrade.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fjava-11-to-java-17-upgrade.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fjava-11-to-java-17-upgrade.instructions.md) | Comprehensive best practices for adopting new Java 17 features since the release of Java 11. | | [Java 17 to Java 21 Upgrade Guide](../instructions/java-17-to-java-21-upgrade.instructions.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fjava-17-to-java-21-upgrade.instructions.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/instructions?url=vscode-insiders%3Achat-instructions%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Finstructions%2Fjava-17-to-java-21-upgrade.instructions.md) | Comprehensive best practices for adopting new Java 21 features since the release of Java 17. | diff --git a/instructions/html-css-style-color-guide.instructions.md b/instructions/html-css-style-color-guide.instructions.md new file mode 100644 index 000000000..6a017d9b9 --- /dev/null +++ b/instructions/html-css-style-color-guide.instructions.md @@ -0,0 +1,104 @@ +--- +description: 'Color usage guidelines and styling rules for HTML elements to ensure accessible, professional designs.' +applyTo: '**/*.html, **/*.css, **/*.js' +--- + +# HTML CSS Style Color Guide + +Follow these guidelines when updating or creating HTML/CSS styles for browser rendering. Color names +represent the full spectrum of their respective hue ranges (e.g., "blue" includes navy, sky blue, etc.). + +## Color Definitions + +- **Hot Colors**: Oranges, reds, and yellows +- **Cool Colors**: Blues, greens, and purples +- **Neutral Colors**: Grays and grayscale variations +- **Binary Colors**: Black and white +- **60-30-10 Rule** + - **Primary Color**: Use 60% of the time (*cool or light color*) + - **Secondary Color**: Use 30% of the time (*cool or light color*) + - **Accent**: Use 10% of the time (*complimentary hot color*) + +## Color Usage Guidelines + +Balance the colors used by applying the **60-30-10 rule** to graphic desing elements like backgrounds, +buttons, cards, etc... + +### Background Colors + +**Never Use:** + +- Purple or magenta +- Red, orange, or yellow +- Pink +- Any hot color + +**Recommended:** + +- White or off-white +- Light cool colors (e.g., light blues, light greens) +- Subtle neutral tones +- Light gradients with minimal color shift + +### Text Colors + +**Never Use:** + +- Yellow (poor contrast and readability) +- Pink +- Pure white or light text on light backgrounds +- Pure black or dark text on dark backgrounds + +**Recommended:** + +- Dark neutral colors (e.g., #1f2328, #24292f) +- Near-black variations (#000000 to #333333) + - Ensure background is a light color +- Dark grays (#4d4d4d, #6c757d) +- High-contrast combinations for accessibility +- Near-white variations (#ffffff to #f0f2f3) + - Ensure background is a dark color + +### Colors to Avoid + +Unless explicitly required by design specifications or user request, avoid: + +- Bright purples and magentas +- Bright pinks and neon colors +- Highly saturated hot colors +- Colors with low contrast ratios (fails WCAG accessibility standards) + +### Colors to Use Sparingly + +**Hot Colors** (red, orange, yellow): + +- Reserve for critical alerts, warnings, or error messages +- Use only when conveying urgency or importance +- Limit to small accent areas rather than large sections +- Consider alternatives like icons or bold text before using hot colors + +## Gradients + +Apply gradients with subtle color transitions to maintain professional aesthetics. + +### Best Practices + +- Keep color shifts minimal (e.g., #E6F2FF to #F5F7FA) +- Use gradients within the same color family +- Avoid combining hot and cool colors in a single gradient +- Prefer linear gradients over radial for backgrounds + +### Appropriate Use Cases + +- Background containers and sections +- Button hover states and interactive elements +- Drop shadows and depth effects +- Header and navigation bars +- Card components and panels + +## Additional Resources + +- [Color Tool](https://civicactions.github.io/uswds-color-tool/) +- [Government or Professional Color Standards](https://designsystem.digital.gov/design-tokens/color/overview/) +- [UI Color Palette Best Practices](https://www.interaction-design.org/literature/article/ui-color-palette) +- [Color Combination Resource](https://www.figma.com/resource-library/color-combinations/) From 0b9fb232657524894f5eec9bd97d0d3eab2020fb Mon Sep 17 00:00:00 2001 From: John Haugabook Date: Wed, 14 Jan 2026 16:39:55 -0500 Subject: [PATCH 31/43] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- instructions/html-css-style-color-guide.instructions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/instructions/html-css-style-color-guide.instructions.md b/instructions/html-css-style-color-guide.instructions.md index 6a017d9b9..828a20273 100644 --- a/instructions/html-css-style-color-guide.instructions.md +++ b/instructions/html-css-style-color-guide.instructions.md @@ -17,11 +17,11 @@ represent the full spectrum of their respective hue ranges (e.g., "blue" include - **60-30-10 Rule** - **Primary Color**: Use 60% of the time (*cool or light color*) - **Secondary Color**: Use 30% of the time (*cool or light color*) - - **Accent**: Use 10% of the time (*complimentary hot color*) + - **Accent**: Use 10% of the time (*complementary hot color*) ## Color Usage Guidelines -Balance the colors used by applying the **60-30-10 rule** to graphic desing elements like backgrounds, +Balance the colors used by applying the **60-30-10 rule** to graphic design elements like backgrounds, buttons, cards, etc... ### Background Colors From c4f2978a51df694122c8e1a7d266776b08a6c19f Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Thu, 15 Jan 2026 16:15:00 +0800 Subject: [PATCH 32/43] Add outdated detection to collections, instructions, and prompts suggestion files Similar to c12041b which added outdated agent detection, this commit adds: - Version comparison process for detecting outdated local assets - Fetch remote versions step in the process workflow - Updated icons reference with outdated status indicators - Update handling sections for managing outdated assets - Updated output table examples to show outdated status --- collections/awesome-copilot.md | 6 +- docs/README.prompts.md | 6 +- ...esome-github-copilot-collections.prompt.md | 54 ++++++++++++--- ...some-github-copilot-instructions.prompt.md | 62 ++++++++++++++---- ...t-awesome-github-copilot-prompts.prompt.md | 65 ++++++++++++++----- 5 files changed, 148 insertions(+), 45 deletions(-) diff --git a/collections/awesome-copilot.md b/collections/awesome-copilot.md index 3c45c4314..371283ef0 100644 --- a/collections/awesome-copilot.md +++ b/collections/awesome-copilot.md @@ -9,11 +9,11 @@ Meta prompts that help you discover and generate curated GitHub Copilot chat mod | Title | Type | Description | MCP Servers | | ----- | ---- | ----------- | ----------- | | [Meta Agentic Project Scaffold](../agents/meta-agentic-project-scaffold.agent.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fmeta-agentic-project-scaffold.agent.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fmeta-agentic-project-scaffold.agent.md) | Agent | Meta agentic project creation assistant to help users create and manage project workflows effectively. | | -| [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Prompt | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets. | | +| [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Prompt | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets, and identifying outdated collection assets that need updates. | | | [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Prompt | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository, and identifying outdated agents that need updates. | | | [Suggest Awesome GitHub Copilot Custom Chat Modes](../prompts/suggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md) | Prompt | Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository. | | -| [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Prompt | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository. | | -| [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Prompt | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | | +| [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Prompt | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository, and identifying outdated instructions that need updates. | | +| [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Prompt | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository, and identifying outdated prompts that need updates. | | --- *This collection includes 6 curated items for **Awesome Copilot**.* \ No newline at end of file diff --git a/docs/README.prompts.md b/docs/README.prompts.md index 1a0b67473..4c078bb52 100644 --- a/docs/README.prompts.md +++ b/docs/README.prompts.md @@ -128,11 +128,11 @@ Ready-to-use prompt templates for specific development scenarios and tasks, defi | [Spring Boot with Kotlin Best Practices](../prompts/kotlin-springboot.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fkotlin-springboot.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fkotlin-springboot.prompt.md) | Get best practices for developing applications with Spring Boot and Kotlin. | | [SQL Code Review](../prompts/sql-code-review.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-code-review.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-code-review.prompt.md) | Universal SQL code review assistant that performs comprehensive security, maintainability, and code quality analysis across all SQL databases (MySQL, PostgreSQL, SQL Server, Oracle). Focuses on SQL injection prevention, access control, code standards, and anti-pattern detection. Complements SQL optimization prompt for complete development coverage. | | [SQL Performance Optimization Assistant](../prompts/sql-optimization.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-optimization.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsql-optimization.prompt.md) | Universal SQL performance optimization assistant for comprehensive query tuning, indexing strategies, and database performance analysis across all SQL databases (MySQL, PostgreSQL, SQL Server, Oracle). Provides execution plan analysis, pagination optimization, batch operations, and performance monitoring guidance. | -| [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets. | +| [Suggest Awesome GitHub Copilot Collections](../prompts/suggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-collections.prompt.md) | Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets, and identifying outdated collection assets that need updates. | | [Suggest Awesome GitHub Copilot Custom Agents](../prompts/suggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-agents.prompt.md) | Suggest relevant GitHub Copilot Custom Agents files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom agents in this repository, and identifying outdated agents that need updates. | | [Suggest Awesome GitHub Copilot Custom Chat Modes](../prompts/suggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-chatmodes.prompt.md) | Suggest relevant GitHub Copilot Custom Chat Modes files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing custom chat modes in this repository. | -| [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository. | -| [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository. | +| [Suggest Awesome GitHub Copilot Instructions](../prompts/suggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-instructions.prompt.md) | Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository, and identifying outdated instructions that need updates. | +| [Suggest Awesome GitHub Copilot Prompts](../prompts/suggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fsuggest-awesome-github-copilot-prompts.prompt.md) | Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository, and identifying outdated prompts that need updates. | | [Swift MCP Server Generator](../prompts/swift-mcp-server-generator.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fswift-mcp-server-generator.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fswift-mcp-server-generator.prompt.md) | Generate a complete Model Context Protocol server project in Swift using the official MCP Swift SDK package. | | [Test Generation with Playwright MCP](../prompts/playwright-generate-test.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fplaywright-generate-test.prompt.md) | Generate a Playwright test based on a scenario using Playwright MCP | | [Test Planning & Quality Assurance Prompt](../prompts/breakdown-test.prompt.md)
[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-test.prompt.md)
[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/prompt?url=vscode-insiders%3Achat-prompt%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fprompts%2Fbreakdown-test.prompt.md) | Test Planning and Quality Assurance prompt that generates comprehensive test strategies, task breakdowns, and quality validation plans for GitHub projects. | diff --git a/prompts/suggest-awesome-github-copilot-collections.prompt.md b/prompts/suggest-awesome-github-copilot-collections.prompt.md index efde66434..aa8434c57 100644 --- a/prompts/suggest-awesome-github-copilot-collections.prompt.md +++ b/prompts/suggest-awesome-github-copilot-collections.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -description: 'Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets.' +description: 'Suggest relevant GitHub Copilot collections from the awesome-copilot repository based on current repository context and chat history, providing automatic download and installation of collection assets, and identifying outdated collection assets that need updates.' tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Collections @@ -12,13 +12,22 @@ Analyze current repository context and suggest relevant collections from the [Gi 1. **Fetch Available Collections**: Extract collection list and descriptions from [awesome-copilot README.collections.md](https://github.com/github/awesome-copilot/blob/main/docs/README.collections.md). Must use `#fetch` tool. 2. **Scan Local Assets**: Discover existing prompt files in `prompts/`, instruction files in `instructions/`, and chat modes in `agents/` folders 3. **Extract Local Descriptions**: Read front matter from local asset files to understand existing capabilities -4. **Analyze Repository Context**: Review chat history, repository files, programming languages, frameworks, and current project needs -5. **Match Collection Relevance**: Compare available collections against identified patterns and requirements -6. **Check Asset Overlap**: For relevant collections, analyze individual items to avoid duplicates with existing repository assets -7. **Present Collection Options**: Display relevant collections with descriptions, item counts, and rationale for suggestion -8. **Provide Usage Guidance**: Explain how the installed collection enhances the development workflow - **AWAIT** user request to proceed with installation of specific collections. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -9. **Download Assets**: For requested collections, automatically download and install each individual asset (prompts, instructions, chat modes) to appropriate directories. Do NOT adjust content of the files. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +4. **Fetch Remote Versions**: For each local asset that matches a collection item, fetch the corresponding version from awesome-copilot repository using raw GitHub URLs (e.g., `https://raw.githubusercontent.com/github/awesome-copilot/main//`) +5. **Compare Versions**: Compare local asset content with remote versions to identify: + - Assets that are up-to-date (exact match) + - Assets that are outdated (content differs) + - Key differences in outdated assets (tools, description, content) +6. **Analyze Repository Context**: Review chat history, repository files, programming languages, frameworks, and current project needs +7. **Match Collection Relevance**: Compare available collections against identified patterns and requirements +8. **Check Asset Overlap**: For relevant collections, analyze individual items to avoid duplicates with existing repository assets +9. **Present Collection Options**: Display relevant collections with descriptions, item counts, outdated asset counts, and rationale for suggestion +10. **Provide Usage Guidance**: Explain how the installed collection enhances the development workflow + **AWAIT** user request to proceed with installation or updates of specific collections. DO NOT INSTALL OR UPDATE UNLESS DIRECTED TO DO SO. +11. **Download/Update Assets**: For requested collections, automatically: + - Download new assets to appropriate directories + - Update outdated assets by replacing with latest version from awesome-copilot + - Do NOT adjust content of the files + - Use `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved ## Context Analysis Criteria @@ -55,6 +64,7 @@ For each suggested collection, break down individual assets: **Azure & Cloud Development Collection Analysis:** - ✅ **New Assets (12)**: Azure cost optimization prompts, Bicep planning mode, AVM modules, Logic Apps expert mode - ⚠️ **Similar Assets (3)**: Azure DevOps pipelines (similar to existing CI/CD), Terraform (basic overlap), Containerization (Docker basics covered) +- 🔄 **Outdated Assets (2)**: azure-iac-generator.agent.md (tools updated), bicep-implement.agent.md (description changed) - 🎯 **High Value**: Cost optimization tools, Infrastructure as Code expertise, Azure-specific architectural guidance **Installation Preview:** @@ -86,6 +96,21 @@ For each suggested collection, break down individual assets: - Industry best practices for identified project types - Missing expertise areas (security, performance, architecture, etc.) +## Version Comparison Process + +1. For each local asset file that corresponds to a collection item, construct the raw GitHub URL: + - Agents: `https://raw.githubusercontent.com/github/awesome-copilot/main/agents/` + - Prompts: `https://raw.githubusercontent.com/github/awesome-copilot/main/prompts/` + - Instructions: `https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/` +2. Fetch the remote version using the `fetch` tool +3. Compare entire file content (including front matter and body) +4. Identify specific differences: + - **Front matter changes** (description, tools, applyTo patterns) + - **Tools array modifications** (added, removed, or renamed tools) + - **Content updates** (instructions, examples, guidelines) +5. Document key differences for outdated assets +6. Calculate similarity to determine if update is needed + ## Collection Asset Download Process When user confirms a collection installation: @@ -141,9 +166,18 @@ After installing a collection, provide: ## Icons Reference -- ✅ Collection recommended for installation +- ✅ Collection recommended for installation / Asset up-to-date - ⚠️ Collection has some asset overlap but still valuable - ❌ Collection not recommended (significant overlap or not relevant) - 🎯 High-value collection that fills major capability gaps - 📁 Collection partially installed (some assets skipped due to duplicates) -- 🔄 Collection needs customization for repository-specific needs +- 🔄 Asset outdated (update available from awesome-copilot) + +## Update Handling + +When outdated collection assets are identified: +1. Include them in the asset analysis with 🔄 status +2. Document specific differences for each outdated asset +3. Provide recommendation to update with key changes noted +4. When user requests update, replace entire local file with remote version +5. Preserve file location in appropriate directory (`agents/`, `prompts/`, or `instructions/`) diff --git a/prompts/suggest-awesome-github-copilot-instructions.prompt.md b/prompts/suggest-awesome-github-copilot-instructions.prompt.md index 08d3fa0c2..961d12d86 100644 --- a/prompts/suggest-awesome-github-copilot-instructions.prompt.md +++ b/prompts/suggest-awesome-github-copilot-instructions.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -description: 'Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository.' +description: 'Suggest relevant GitHub Copilot instruction files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing instructions in this repository, and identifying outdated instructions that need updates.' tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Instructions @@ -12,14 +12,24 @@ Analyze current repository context and suggest relevant copilot-instruction file 1. **Fetch Available Instructions**: Extract instruction list and descriptions from [awesome-copilot README.instructions.md](https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md). Must use `#fetch` tool. 2. **Scan Local Instructions**: Discover existing instruction files in `.github/instructions/` folder 3. **Extract Descriptions**: Read front matter from local instruction files to get descriptions and `applyTo` patterns -4. **Analyze Context**: Review chat history, repository files, and current project needs -5. **Compare Existing**: Check against instructions already available in this repository -6. **Match Relevance**: Compare available instructions against identified patterns and requirements -7. **Present Options**: Display relevant instructions with descriptions, rationale, and availability status -8. **Validate**: Ensure suggested instructions would add value not already covered by existing instructions -9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot instructions and similar local instructions - **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/instructions/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +4. **Fetch Remote Versions**: For each local instruction, fetch the corresponding version from awesome-copilot repository using raw GitHub URLs (e.g., `https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/`) +5. **Compare Versions**: Compare local instruction content with remote versions to identify: + - Instructions that are up-to-date (exact match) + - Instructions that are outdated (content differs) + - Key differences in outdated instructions (description, applyTo patterns, content) +6. **Analyze Context**: Review chat history, repository files, and current project needs +7. **Compare Existing**: Check against instructions already available in this repository +8. **Match Relevance**: Compare available instructions against identified patterns and requirements +9. **Present Options**: Display relevant instructions with descriptions, rationale, and availability status including outdated instructions +10. **Validate**: Ensure suggested instructions would add value not already covered by existing instructions +11. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot instructions and similar local instructions + **AWAIT** user request to proceed with installation or updates of specific instructions. DO NOT INSTALL OR UPDATE UNLESS DIRECTED TO DO SO. +12. **Download/Update Assets**: For requested instructions, automatically: + - Download new instructions to `.github/instructions/` folder + - Update outdated instructions by replacing with latest version from awesome-copilot + - Do NOT adjust content of the files + - Use `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved + - Use `#todos` tool to track progress ## Context Analysis Criteria @@ -41,9 +51,9 @@ Display analysis results in structured table comparing awesome-copilot instructi | Awesome-Copilot Instruction | Description | Already Installed | Similar Local Instruction | Suggestion Rationale | |------------------------------|-------------|-------------------|---------------------------|---------------------| -| [blazor.instructions.md](https://github.com/github/awesome-copilot/blob/main/instructions/blazor.instructions.md) | Blazor development guidelines | ❌ No | blazor.instructions.md | Already covered by existing Blazor instructions | +| [blazor.instructions.md](https://github.com/github/awesome-copilot/blob/main/instructions/blazor.instructions.md) | Blazor development guidelines | ✅ Yes | blazor.instructions.md | Already covered by existing Blazor instructions | | [reactjs.instructions.md](https://github.com/github/awesome-copilot/blob/main/instructions/reactjs.instructions.md) | ReactJS development standards | ❌ No | None | Would enhance React development with established patterns | -| [java.instructions.md](https://github.com/github/awesome-copilot/blob/main/instructions/java.instructions.md) | Java development best practices | ❌ No | None | Could improve Java code quality and consistency | +| [java.instructions.md](https://github.com/github/awesome-copilot/blob/main/instructions/java.instructions.md) | Java development best practices | ⚠️ Outdated | java.instructions.md | applyTo pattern differs: remote uses `'**/*.java'` vs local `'*.java'` - Update recommended | ## Local Instructions Discovery Process @@ -52,6 +62,18 @@ Display analysis results in structured table comparing awesome-copilot instructi 3. Build comprehensive inventory of existing instructions with their applicable file patterns 4. Use this inventory to avoid suggesting duplicates +## Version Comparison Process + +1. For each local instruction file, construct the raw GitHub URL to fetch the remote version: + - Pattern: `https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/` +2. Fetch the remote version using the `fetch` tool +3. Compare entire file content (including front matter and body) +4. Identify specific differences: + - **Front matter changes** (description, applyTo patterns) + - **Content updates** (guidelines, examples, best practices) +5. Document key differences for outdated instructions +6. Calculate similarity to determine if update is needed + ## File Structure Requirements Based on GitHub documentation, copilot-instructions files should be: @@ -71,18 +93,30 @@ applyTo: '**/*.js,**/*.ts' # Optional: glob patterns for file matching ## Requirements -- Use `githubRepo` tool to get content from awesome-copilot repository -- Scan local file system for existing instructions in `instructions/` directory +- Use `githubRepo` tool to get content from awesome-copilot repository instructions folder +- Scan local file system for existing instructions in `.github/instructions/` directory - Read YAML front matter from local instruction files to extract descriptions and `applyTo` patterns +- Compare local instructions with remote versions to detect outdated instructions - Compare against existing instructions in this repository to avoid duplicates - Focus on gaps in current instruction library coverage - Validate that suggested instructions align with repository's purpose and standards - Provide clear rationale for each suggestion - Include links to both awesome-copilot instructions and similar local instructions +- Clearly identify outdated instructions with specific differences noted - Consider technology stack compatibility and project-specific needs - Don't provide any additional information or context beyond the table and the analysis ## Icons Reference -- ✅ Already installed in repo +- ✅ Already installed and up-to-date +- ⚠️ Installed but outdated (update available) - ❌ Not installed in repo + +## Update Handling + +When outdated instructions are identified: +1. Include them in the output table with ⚠️ status +2. Document specific differences in the "Suggestion Rationale" column +3. Provide recommendation to update with key changes noted +4. When user requests update, replace entire local file with remote version +5. Preserve file location in `.github/instructions/` directory diff --git a/prompts/suggest-awesome-github-copilot-prompts.prompt.md b/prompts/suggest-awesome-github-copilot-prompts.prompt.md index 904f12a3a..ecb7a54b2 100644 --- a/prompts/suggest-awesome-github-copilot-prompts.prompt.md +++ b/prompts/suggest-awesome-github-copilot-prompts.prompt.md @@ -1,6 +1,6 @@ --- agent: 'agent' -description: 'Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository.' +description: 'Suggest relevant GitHub Copilot prompt files from the awesome-copilot repository based on current repository context and chat history, avoiding duplicates with existing prompts in this repository, and identifying outdated prompts that need updates.' tools: ['edit', 'search', 'runCommands', 'runTasks', 'think', 'changes', 'testFailure', 'openSimpleBrowser', 'web/fetch', 'githubRepo', 'todos', 'search'] --- # Suggest Awesome GitHub Copilot Prompts @@ -12,14 +12,24 @@ Analyze current repository context and suggest relevant prompt files from the [G 1. **Fetch Available Prompts**: Extract prompt list and descriptions from [awesome-copilot README.prompts.md](https://github.com/github/awesome-copilot/blob/main/docs/README.prompts.md). Must use `#fetch` tool. 2. **Scan Local Prompts**: Discover existing prompt files in `.github/prompts/` folder 3. **Extract Descriptions**: Read front matter from local prompt files to get descriptions -4. **Analyze Context**: Review chat history, repository files, and current project needs -5. **Compare Existing**: Check against prompts already available in this repository -6. **Match Relevance**: Compare available prompts against identified patterns and requirements -7. **Present Options**: Display relevant prompts with descriptions, rationale, and availability status -8. **Validate**: Ensure suggested prompts would add value not already covered by existing prompts -9. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot prompts and similar local prompts - **AWAIT** user request to proceed with installation of specific instructions. DO NOT INSTALL UNLESS DIRECTED TO DO SO. -10. **Download Assets**: For requested instructions, automatically download and install individual instructions to `.github/prompts/` folder. Do NOT adjust content of the files. Use `#todos` tool to track progress. Prioritize use of `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved. +4. **Fetch Remote Versions**: For each local prompt, fetch the corresponding version from awesome-copilot repository using raw GitHub URLs (e.g., `https://raw.githubusercontent.com/github/awesome-copilot/main/prompts/`) +5. **Compare Versions**: Compare local prompt content with remote versions to identify: + - Prompts that are up-to-date (exact match) + - Prompts that are outdated (content differs) + - Key differences in outdated prompts (tools, description, content) +6. **Analyze Context**: Review chat history, repository files, and current project needs +7. **Compare Existing**: Check against prompts already available in this repository +8. **Match Relevance**: Compare available prompts against identified patterns and requirements +9. **Present Options**: Display relevant prompts with descriptions, rationale, and availability status including outdated prompts +10. **Validate**: Ensure suggested prompts would add value not already covered by existing prompts +11. **Output**: Provide structured table with suggestions, descriptions, and links to both awesome-copilot prompts and similar local prompts + **AWAIT** user request to proceed with installation or updates of specific prompts. DO NOT INSTALL OR UPDATE UNLESS DIRECTED TO DO SO. +12. **Download/Update Assets**: For requested prompts, automatically: + - Download new prompts to `.github/prompts/` folder + - Update outdated prompts by replacing with latest version from awesome-copilot + - Do NOT adjust content of the files + - Use `#fetch` tool to download assets, but may use `curl` using `#runInTerminal` tool to ensure all content is retrieved + - Use `#todos` tool to track progress ## Context Analysis Criteria @@ -41,31 +51,56 @@ Display analysis results in structured table comparing awesome-copilot prompts w | Awesome-Copilot Prompt | Description | Already Installed | Similar Local Prompt | Suggestion Rationale | |-------------------------|-------------|-------------------|---------------------|---------------------| -| [code-review.md](https://github.com/github/awesome-copilot/blob/main/prompts/code-review.md) | Automated code review prompts | ❌ No | None | Would enhance development workflow with standardized code review processes | -| [documentation.md](https://github.com/github/awesome-copilot/blob/main/prompts/documentation.md) | Generate project documentation | ✅ Yes | create_oo_component_documentation.prompt.md | Already covered by existing documentation prompts | -| [debugging.md](https://github.com/github/awesome-copilot/blob/main/prompts/debugging.md) | Debug assistance prompts | ❌ No | None | Could improve troubleshooting efficiency for development team | +| [code-review.prompt.md](https://github.com/github/awesome-copilot/blob/main/prompts/code-review.prompt.md) | Automated code review prompts | ❌ No | None | Would enhance development workflow with standardized code review processes | +| [documentation.prompt.md](https://github.com/github/awesome-copilot/blob/main/prompts/documentation.prompt.md) | Generate project documentation | ✅ Yes | create_oo_component_documentation.prompt.md | Already covered by existing documentation prompts | +| [debugging.prompt.md](https://github.com/github/awesome-copilot/blob/main/prompts/debugging.prompt.md) | Debug assistance prompts | ⚠️ Outdated | debugging.prompt.md | Tools configuration differs: remote uses `'codebase'` vs local missing - Update recommended | ## Local Prompts Discovery Process -1. List all `*.prompt.md` files directory `.github/prompts/`. +1. List all `*.prompt.md` files in `.github/prompts/` directory 2. For each discovered file, read front matter to extract `description` 3. Build comprehensive inventory of existing prompts 4. Use this inventory to avoid suggesting duplicates +## Version Comparison Process + +1. For each local prompt file, construct the raw GitHub URL to fetch the remote version: + - Pattern: `https://raw.githubusercontent.com/github/awesome-copilot/main/prompts/` +2. Fetch the remote version using the `fetch` tool +3. Compare entire file content (including front matter and body) +4. Identify specific differences: + - **Front matter changes** (description, tools, mode) + - **Tools array modifications** (added, removed, or renamed tools) + - **Content updates** (instructions, examples, guidelines) +5. Document key differences for outdated prompts +6. Calculate similarity to determine if update is needed + ## Requirements -- Use `githubRepo` tool to get content from awesome-copilot repository +- Use `githubRepo` tool to get content from awesome-copilot repository prompts folder - Scan local file system for existing prompts in `.github/prompts/` directory - Read YAML front matter from local prompt files to extract descriptions +- Compare local prompts with remote versions to detect outdated prompts - Compare against existing prompts in this repository to avoid duplicates - Focus on gaps in current prompt library coverage - Validate that suggested prompts align with repository's purpose and standards - Provide clear rationale for each suggestion - Include links to both awesome-copilot prompts and similar local prompts +- Clearly identify outdated prompts with specific differences noted - Don't provide any additional information or context beyond the table and the analysis ## Icons Reference -- ✅ Already installed in repo +- ✅ Already installed and up-to-date +- ⚠️ Installed but outdated (update available) - ❌ Not installed in repo + +## Update Handling + +When outdated prompts are identified: +1. Include them in the output table with ⚠️ status +2. Document specific differences in the "Suggestion Rationale" column +3. Provide recommendation to update with key changes noted +4. When user requests update, replace entire local file with remote version +5. Preserve file location in `.github/prompts/` directory From 41b694123769949db61a9bd9bed6145776fc09a2 Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Thu, 15 Jan 2026 16:25:11 +0800 Subject: [PATCH 33/43] Update prompts/suggest-awesome-github-copilot-collections.prompt.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- prompts/suggest-awesome-github-copilot-collections.prompt.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prompts/suggest-awesome-github-copilot-collections.prompt.md b/prompts/suggest-awesome-github-copilot-collections.prompt.md index aa8434c57..97c3563ef 100644 --- a/prompts/suggest-awesome-github-copilot-collections.prompt.md +++ b/prompts/suggest-awesome-github-copilot-collections.prompt.md @@ -102,7 +102,7 @@ For each suggested collection, break down individual assets: - Agents: `https://raw.githubusercontent.com/github/awesome-copilot/main/agents/` - Prompts: `https://raw.githubusercontent.com/github/awesome-copilot/main/prompts/` - Instructions: `https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/` -2. Fetch the remote version using the `fetch` tool +2. Fetch the remote version using the `#fetch` tool 3. Compare entire file content (including front matter and body) 4. Identify specific differences: - **Front matter changes** (description, tools, applyTo patterns) From 0d48c3fb55ccadd4ec9252c2b42c7fdcc1d78193 Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Thu, 15 Jan 2026 16:25:21 +0800 Subject: [PATCH 34/43] Update prompts/suggest-awesome-github-copilot-prompts.prompt.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- prompts/suggest-awesome-github-copilot-prompts.prompt.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prompts/suggest-awesome-github-copilot-prompts.prompt.md b/prompts/suggest-awesome-github-copilot-prompts.prompt.md index ecb7a54b2..04b0c40dd 100644 --- a/prompts/suggest-awesome-github-copilot-prompts.prompt.md +++ b/prompts/suggest-awesome-github-copilot-prompts.prompt.md @@ -66,7 +66,7 @@ Display analysis results in structured table comparing awesome-copilot prompts w 1. For each local prompt file, construct the raw GitHub URL to fetch the remote version: - Pattern: `https://raw.githubusercontent.com/github/awesome-copilot/main/prompts/` -2. Fetch the remote version using the `fetch` tool +2. Fetch the remote version using the `#fetch` tool 3. Compare entire file content (including front matter and body) 4. Identify specific differences: - **Front matter changes** (description, tools, mode) From 1176cc4ffa2cb615da326e88ec69f10ad4e61807 Mon Sep 17 00:00:00 2001 From: Kent Yao Date: Thu, 15 Jan 2026 16:25:30 +0800 Subject: [PATCH 35/43] Update prompts/suggest-awesome-github-copilot-instructions.prompt.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- prompts/suggest-awesome-github-copilot-instructions.prompt.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prompts/suggest-awesome-github-copilot-instructions.prompt.md b/prompts/suggest-awesome-github-copilot-instructions.prompt.md index 961d12d86..283dfacdc 100644 --- a/prompts/suggest-awesome-github-copilot-instructions.prompt.md +++ b/prompts/suggest-awesome-github-copilot-instructions.prompt.md @@ -66,7 +66,7 @@ Display analysis results in structured table comparing awesome-copilot instructi 1. For each local instruction file, construct the raw GitHub URL to fetch the remote version: - Pattern: `https://raw.githubusercontent.com/github/awesome-copilot/main/instructions/` -2. Fetch the remote version using the `fetch` tool +2. Fetch the remote version using the `#fetch` tool 3. Compare entire file content (including front matter and body) 4. Identify specific differences: - **Front matter changes** (description, applyTo patterns) From dcaff75b1ad586291911989e238496fd7fbe4eee Mon Sep 17 00:00:00 2001 From: Ashley Childress <6563688+anchildress1@users.noreply.github.com> Date: Fri, 19 Dec 2025 23:55:03 -0500 Subject: [PATCH 36/43] feat(contributors): condense contributor report and per-PR snippets - eng/contributor-report.mjs: condensed per-user layout; emit per-PR fenced plaintext snippets; removed normalizeOneLine() Generated-by: GitHub Copilot Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com> --- eng/contributor-report.mjs | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/eng/contributor-report.mjs b/eng/contributor-report.mjs index 56005170f..9b4cdc5f7 100644 --- a/eng/contributor-report.mjs +++ b/eng/contributor-report.mjs @@ -429,7 +429,6 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { const nowIso = new Date().toISOString(); - const computeTypesArg = (report) => { const typeSet = new Set(); for (const pr of report.prs || []) { @@ -455,7 +454,6 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { for (const report of reports) { lines.push(`## @${report.username}`); - lines.push(''); const prs = Array.from(report.prs || []).sort((a, b) => { // Prefer most recent PRs first. @@ -465,22 +463,36 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { return (b.prNumber ?? 0) - (a.prNumber ?? 0); }); - for (const pr of prs) { - lines.push(`### PR #${pr.prNumber}: ${pr.prTitle}`); + if (prs.length === 0) { + lines.push(''); + lines.push('_No eligible PRs found._'); lines.push(''); - lines.push(`Add this comment on PR: ${pr.prUrl}`); + lines.push(`Alternate CLI: \`npx all-contributors add ${report.username} ${computeTypesArg(report)}\``); lines.push(''); + lines.push('---'); + lines.push(''); + continue; + } + lines.push(''); + + for (const pr of prs) { const prTypes = (pr.contributionTypes || []).filter(Boolean); const prTypesArg = prTypes.length > 0 ? prTypes.join(', ') : 'code'; - - lines.push('```text'); - lines.push(`@all-contributors please add @${report.username} for ${prTypesArg}`); + const title = String(pr.prTitle ?? ''); + const url = String(pr.prUrl ?? ''); + const comment = `@all-contributors please add @${report.username} for ${prTypesArg}`; + + // PR line + lines.push(`[#${pr.prNumber}](${url}) ${title}`); + // fenced single-line comment snippet for this PR (plaintext as requested) + lines.push('```plaintext'); + lines.push(comment); lines.push('```'); - lines.push(''); } - lines.push('### CLI command (all-contributors-cli)'); + lines.push(''); + lines.push('### Alternate CLI Command'); lines.push(''); lines.push('```bash'); lines.push(`npx all-contributors add ${report.username} ${computeTypesArg(report)}`); From f9e981e4cded26b8def4113f41272d79ad4a53de Mon Sep 17 00:00:00 2001 From: Ashley Childress <6563688+anchildress1@users.noreply.github.com> Date: Wed, 14 Jan 2026 23:47:04 -0500 Subject: [PATCH 37/43] fix(contributors): address Copilot review comments and code quality issues - Improve contributor-report.mjs based on Copilot comments and sonar - Use fileURLToPath for Windows-safe main checks in contributor scripts - Fix README badge URLs by removing duplicate style parameters - Update graceful-shutdown.mjs to throw on process.exit failure for better error visibility Generated-by: GitHub Copilot Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com> --- .github/workflows/contributors.yml | 6 +- README.md | 2 +- eng/add-missing-contributors.mjs | 3 +- eng/contributor-report.mjs | 219 +++++++++++------------------ eng/utils/graceful-shutdown.mjs | 5 +- 5 files changed, 93 insertions(+), 142 deletions(-) diff --git a/.github/workflows/contributors.yml b/.github/workflows/contributors.yml index 159910eef..e8310bf51 100644 --- a/.github/workflows/contributors.yml +++ b/.github/workflows/contributors.yml @@ -8,7 +8,7 @@ on: jobs: contributors: runs-on: ubuntu-latest - timeout-minutes: 12 + timeout-minutes: 5 permissions: contents: write pull-requests: write @@ -36,12 +36,12 @@ jobs: run: | CHECK_OUTPUT=$(npm run contributors:check 2>&1) echo "$CHECK_OUTPUT" - + if echo "$CHECK_OUTPUT" | grep -q "Missing contributors"; then echo "Missing contributors detected, generating report..." mkdir -p reports npm run contributors:report - + if [ -f reports/contributor-report.md ]; then cat reports/contributor-report.md >> $GITHUB_STEP_SUMMARY fi diff --git a/README.md b/README.md index d22fa5cf7..bb87f8950 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # 🤖 Awesome GitHub Copilot Customizations -[![Powered by Awesome Copilot](https://img.shields.io/badge/Powered_by-Awesome_Copilot-blue?logo=githubcopilot)](https://aka.ms/awesome-github-copilot?style=flat-square) [![GitHub contributors from allcontributors.org](https://img.shields.io/github/all-contributors/github/awesome-copilot?style=flat-square&color=ee8449)](#contributors-) +[![Powered by Awesome Copilot](https://img.shields.io/badge/Powered_by-Awesome_Copilot-blue?logo=githubcopilot)](https://aka.ms/awesome-github-copilot) [![GitHub contributors from allcontributors.org](https://img.shields.io/github/all-contributors/github/awesome-copilot?color=ee8449)](#contributors-) A community created collection of custom agents, prompts, and instructions to supercharge your GitHub Copilot experience across different domains, languages, and use cases. diff --git a/eng/add-missing-contributors.mjs b/eng/add-missing-contributors.mjs index dc8911c54..c9b03321c 100644 --- a/eng/add-missing-contributors.mjs +++ b/eng/add-missing-contributors.mjs @@ -8,6 +8,7 @@ import { execSync } from 'node:child_process'; import fs from 'node:fs'; import path from 'node:path'; +import { fileURLToPath } from 'node:url'; import { getContributionTypes, getMissingContributors, @@ -282,7 +283,7 @@ const printSummaryReport = (results) => { console.log('\n' + '='.repeat(50)); }; -if (process.argv[1] === (new URL(import.meta.url)).pathname) { +if (process.argv[1] && fileURLToPath(import.meta.url) === path.resolve(process.argv[1])) { try { const results = await main(); printSummaryReport(results); diff --git a/eng/contributor-report.mjs b/eng/contributor-report.mjs index 9b4cdc5f7..7f44f8a2b 100644 --- a/eng/contributor-report.mjs +++ b/eng/contributor-report.mjs @@ -5,6 +5,7 @@ import { execSync } from 'node:child_process'; import fs from 'node:fs'; import path from 'node:path'; +import { fileURLToPath } from 'node:url'; import { setupGracefulShutdown } from './utils/graceful-shutdown.mjs'; const DEFAULT_CMD_TIMEOUT = 30_000; // 30s @@ -59,11 +60,14 @@ export const TYPE_PATTERNS = { ], maintenance: [ 'package*.json', - '*.config.js', + '*config*', 'tsconfig*.json' ], code: [ - '**/*.{js,ts,mjs,cjs}', + '**/*.js', + '**/*.ts', + '**/*.mjs', + '**/*.cjs', '**/*.py' ] }; @@ -78,17 +82,25 @@ const globCache = new Map(); */ export const globToRegExp = (pattern) => { const DOUBLE_WILDCARD_PLACEHOLDER = '§§DOUBLE§§'; - const replacements = [ - { pattern: /\\/g, replacement: '/' }, - { pattern: /\./g, replacement: String.raw`\.` }, - { pattern: /\*\*/g, replacement: DOUBLE_WILDCARD_PLACEHOLDER }, - { pattern: /\*/g, replacement: '[^/]*' }, - { pattern: new RegExp(DOUBLE_WILDCARD_PLACEHOLDER, 'g'), replacement: '.*' }, - { pattern: /\?/g, replacement: '.' }, - { pattern: /\//g, replacement: String.raw`\/` } - ]; - - const normalized = replacements.reduce((acc, { pattern, replacement }) => acc.replace(pattern, replacement), String(pattern)); + + // Escape all regex-special characters except glob wildcards (*, ?, /), + // then translate glob syntax to regex. + // Note: This function intentionally supports only a small subset of glob syntax. + const regexSpecials = /[.+^${}()|[\]\\]/g; + + let normalized = String(pattern); + + // Normalize Windows-style separators to POSIX-style for matching. + normalized = normalized.replaceAll('\\', '/'); + + // Escape regex metacharacters so they are treated literally. + normalized = normalized.replaceAll(regexSpecials, (match) => `\\${match}`); + + // Handle glob wildcards. + normalized = normalized.replaceAll('**', DOUBLE_WILDCARD_PLACEHOLDER); + normalized = normalized.replaceAll('*', '[^/]*'); + normalized = normalized.replaceAll(DOUBLE_WILDCARD_PLACEHOLDER, '.*'); + normalized = normalized.replaceAll('?', '.'); return new RegExp(`^${normalized}$`); }; @@ -113,7 +125,7 @@ export const matchGlob = (filePath, pattern) => { return false; } - const normalized = filePath.replace(/\\/g, '/'); + const normalized = filePath.replaceAll('\\', '/'); return regexp.test(normalized); }; @@ -133,7 +145,7 @@ export const isAutoGeneratedFile = (filePath) => { * @returns {string|null} */ export const getFileContributionType = (filePath) => { - const normalized = filePath.replace(/\\/g, '/'); + const normalized = filePath.replaceAll('\\', '/'); for (const [type, patterns] of Object.entries(TYPE_PATTERNS)) { if (patterns.some((pattern) => matchGlob(normalized, pattern))) { @@ -267,17 +279,33 @@ export const getMissingContributors = () => { * @returns {string} */ const getGitHubRepo = () => { + const parseRepoFromRemoteUrl = (remoteUrl) => { + const url = String(remoteUrl || '').trim(); + if (!url) return null; + + // Supports: + // - git@github.com:owner/repo.git + // - ssh://git@github.com/owner/repo.git + // - https://github.com/owner/repo.git + // - https://github.com/owner/repo + const regex = /github\.com[/:]([^/]+)\/([^/?#]+?)(?:\.git)?(?:[/?#]|$)/; + const match = regex.exec(url); + if (!match) return null; + + return `${match[1]}/${match[2]}`; + }; + try { const upstreamUrl = execSync('git config --get remote.upstream.url', { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }).trim(); if (upstreamUrl) { - const match = upstreamUrl.match(/github\.com:([^/]+)\/([^/]+?)(?:\.git)?$/); - if (match) return `${match[1]}/${match[2]}`; + const repo = parseRepoFromRemoteUrl(upstreamUrl); + if (repo) return repo; } } catch (e) { - console.debug('upstream not found, trying origin'); + console.debug('upstream not found, trying origin', e?.message || e); } try { @@ -285,22 +313,15 @@ const getGitHubRepo = () => { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }).trim(); - const match = originUrl.match(/github\.com:([^/]+)\/([^/]+?)(?:\.git)?$/); - if (match) return `${match[1]}/${match[2]}`; + const repo = parseRepoFromRemoteUrl(originUrl); + if (repo) return repo; } catch (e) { - console.debug('origin not found, using default'); + console.debug('origin not found, using default', e?.message || e); } return 'github/awesome-copilot'; }; -const CONTRIBUTION_TYPE_MAP = { - 'instructions': { symbol: '🧭', description: 'The big AI prompt recipes (Copilot instruction sets)' }, - 'prompts': { symbol: '⌨️', description: 'One-shot or reusable user-level prompts' }, - 'agents': { symbol: '🎭', description: 'Defined Copilot personalities / roles' }, - 'collections': { symbol: '🎁', description: 'Bundled thematic sets (e.g., "Copilot for Docs")' } -}; - /** * Fetch merged PRs for a GitHub username using the GH CLI and filter files. * @param {string} username @@ -445,12 +466,14 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { const lines = []; - lines.push('# Missing Contributors Report'); - lines.push(''); - lines.push(`Generated (ISO): ${nowIso}`); - lines.push(''); - lines.push(`Missing contributors: ${missingCount}`); - lines.push(''); + lines.push( + '# Missing Contributors Report', + '', + `Generated (ISO): ${nowIso}`, + '', + `Missing contributors: ${missingCount}`, + '' + ); for (const report of reports) { lines.push(`## @${report.username}`); @@ -464,13 +487,15 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { }); if (prs.length === 0) { - lines.push(''); - lines.push('_No eligible PRs found._'); - lines.push(''); - lines.push(`Alternate CLI: \`npx all-contributors add ${report.username} ${computeTypesArg(report)}\``); - lines.push(''); - lines.push('---'); - lines.push(''); + lines.push( + '', + '_No eligible PRs found._', + '', + `Alternate CLI: \`npx all-contributors add ${report.username} ${computeTypesArg(report)}\``, + '', + '---', + '' + ); continue; } @@ -483,101 +508,30 @@ export const generateMarkdownReport = (reports, missingCount = 0) => { const url = String(pr.prUrl ?? ''); const comment = `@all-contributors please add @${report.username} for ${prTypesArg}`; - // PR line - lines.push(`[#${pr.prNumber}](${url}) ${title}`); - // fenced single-line comment snippet for this PR (plaintext as requested) - lines.push('```plaintext'); - lines.push(comment); - lines.push('```'); + lines.push( + `[#${pr.prNumber}](${url}) ${title}`, + '```plaintext', + comment, + '```' + ); } - lines.push(''); - lines.push('### Alternate CLI Command'); - lines.push(''); - lines.push('```bash'); - lines.push(`npx all-contributors add ${report.username} ${computeTypesArg(report)}`); - lines.push('```'); - lines.push(''); - lines.push('---'); - lines.push(''); + lines.push( + '', + '### Alternate CLI Command', + '', + '```bash', + `npx all-contributors add ${report.username} ${computeTypesArg(report)}`, + '```', + '', + '---', + '' + ); } return `${lines.join('\n')}\n`; }; -/** - * Check whether a PR already contains an all-contributors bot comment. - * @param {number} prNumber - * @returns {boolean} - */ -export const hasExistingAllContributorsComment = (prNumber) => { - try { - const repo = getGitHubRepo(); - const json = execSync(`gh pr view ${prNumber} --repo ${repo} --json comments`, { - encoding: 'utf8', - stdio: ['pipe', 'pipe', 'pipe'], - timeout: DEFAULT_CMD_TIMEOUT - }); - - const data = JSON.parse(json); - const comments = data?.comments?.nodes || data?.comments || []; - return comments.some((comment) => comment?.body?.includes(`@all-contributors`)); - } catch (error) { - console.warn(`⚠️ Unable to inspect comments for PR #${prNumber}: ${error.message}`); - return false; - } -}; - -/** - * Post a comment to a PR using the GH CLI. - * @param {number} prNumber - * @param {string} body - * @returns {boolean} - */ -export const postCommentOnPr = (prNumber, body) => { - try { - const repo = getGitHubRepo(); - execSync(`gh pr comment ${prNumber} --repo ${repo} --body "${body.replace(/"/g, '\\"')}"`, { - encoding: 'utf8', - stdio: ['pipe', 'inherit', 'inherit'], - timeout: DEFAULT_CMD_TIMEOUT - }); - - console.log(`💬 Posted recommendation comment on PR #${prNumber}`); - return true; - } catch (error) { - console.warn(`⚠️ Failed to post comment on PR #${prNumber}: ${error.message}`); - return false; - } -}; - -/** - * Post suggested all-contributors comments to PRs for a collection of reports. - * @param {Array} reports - */ -export const autoAddCommentsToReports = (reports) => { - for (const report of reports) { - for (const pr of report.prs) { - if (hasExistingAllContributorsComment(pr.prNumber)) { - console.log(`💬 Skipping PR #${pr.prNumber} for @${report.username} — comment already present`); - continue; - } - - const types = pr.contributionTypes.map(t => '`' + t + '`').join(', '); - const commentLines = [ - `Thanks for the contribution @${report.username}!`, - '', - `We detected contribution categories for this PR: ${types || '`code`'}.`, - '', - `@all-contributors please add @${report.username} for ${pr.contributionTypes.join(', ')}` - ]; - - const body = commentLines.join('\n'); - postCommentOnPr(pr.prNumber, body); - } - } -}; - const main = () => { try { // gh CLI can use either its own authenticated session or token env vars. @@ -587,7 +541,6 @@ const main = () => { } const args = new Set(process.argv.slice(2)); - const autoAdd = args.has('--auto-add-pr-comments'); const includeAllFiles = args.has('--include-all-pr-files'); const contributors = getMissingContributors(); @@ -605,16 +558,12 @@ const main = () => { console.log(`Report saved to: ${outputPath}`); - if (autoAdd) { - autoAddCommentsToReports(reports); - } - } catch (error) { console.error('Error generating report:', error); process.exit(1); } }; -if (process.argv[1] === (new URL(import.meta.url)).pathname) { +if (process.argv[1] && fileURLToPath(import.meta.url) === path.resolve(process.argv[1])) { main(); } diff --git a/eng/utils/graceful-shutdown.mjs b/eng/utils/graceful-shutdown.mjs index 036f33f23..6ebeece48 100644 --- a/eng/utils/graceful-shutdown.mjs +++ b/eng/utils/graceful-shutdown.mjs @@ -26,8 +26,9 @@ export const setupGracefulShutdown = (name, { exitCode = 1 } = {}) => { try { process.exit(exitCode); } catch (e) { - // process.exit may not be desirable in some test harnesses; swallow errors - console.warn(`${name}: process.exit failed:`, e?.message); + // If process.exit is stubbed or overridden (e.g. in tests), surface the failure. + console.error(`${name}: process.exit failed:`, e?.message || e); + throw e; } }; From 80886dd7ccaa9da23fede432222e87dde2f3e713 Mon Sep 17 00:00:00 2001 From: Ashley Childress <6563688+anchildress1@users.noreply.github.com> Date: Thu, 15 Jan 2026 08:54:31 -0500 Subject: [PATCH 38/43] fix(contributors): add skills to custom contributor types - Improve errors in contributor-report.mjs - Add missing `skills` to custom contribution types list and docs - Refresh existing contributors Assisted-by: GitHub Copilot Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com> --- .all-contributorsrc | 469 ++++++++++++++++++++++------- .github/workflows/contributors.yml | 2 +- CONTRIBUTING.md | 3 +- README.md | 137 +++++---- eng/contributor-report.mjs | 33 +- 5 files changed, 470 insertions(+), 174 deletions(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index bd9775d3a..8cd9655fd 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -25,6 +25,10 @@ "symbol": "🎭", "description": "Specialized agents for GitHub Copilot" }, + "skills": { + "symbol": "🧰", + "description": "Specialized skills for GitHub Copilot" + }, "collections": { "symbol": "🎁", "description": "Curated collections of related content" @@ -46,6 +50,7 @@ "profile": "https://www.aaron-powell.com/", "contributions": [ "agents", + "code", "collections", "doc", "infra", @@ -54,6 +59,15 @@ "prompts" ] }, + { + "login": "codemillmatt", + "name": "Matt Soucoup", + "avatar_url": "https://avatars.githubusercontent.com/u/2053639?v=4", + "profile": "https://codemilltech.com/", + "contributions": [ + "infra" + ] + }, { "login": "troystaylor", "name": "Troy Simeon Taylor", @@ -66,6 +80,16 @@ "prompts" ] }, + { + "login": "abbas133", + "name": "Abbas", + "avatar_url": "https://avatars.githubusercontent.com/u/7757139?v=4", + "profile": "https://github.com/abbas133", + "contributions": [ + "agents", + "instructions" + ] + }, { "login": "PEZ", "name": "Peter Strömberg", @@ -100,6 +124,26 @@ "prompts" ] }, + { + "login": "psimsa", + "name": "Pavel Simsa", + "avatar_url": "https://avatars.githubusercontent.com/u/7853836?v=4", + "profile": "https://witter.cz/@pavel", + "contributions": [ + "code" + ] + }, + { + "login": "digitarald", + "name": "Harald Kirschner", + "avatar_url": "https://avatars.githubusercontent.com/u/8599?v=4", + "profile": "http://digitarald.de/", + "contributions": [ + "code", + "doc", + "maintenance" + ] + }, { "login": "mubaidr", "name": "Muhammad Ubaid Raza", @@ -110,6 +154,15 @@ "instructions" ] }, + { + "login": "tmeschter", + "name": "Tom Meschter", + "avatar_url": "https://avatars.githubusercontent.com/u/10506730?v=4", + "profile": "https://github.com/tmeschter", + "contributions": [ + "code" + ] + }, { "login": "AungMyoKyaw", "name": "Aung Myo Kyaw", @@ -121,13 +174,40 @@ ] }, { - "login": "digitarald", - "name": "Harald Kirschner", - "avatar_url": "https://avatars.githubusercontent.com/u/8599?v=4", - "profile": "http://digitarald.de/", + "login": "JasonYeMSFT", + "name": "JasonYeMSFT", + "avatar_url": "https://avatars.githubusercontent.com/u/39359541?v=4", + "profile": "https://github.com/JasonYeMSFT", "contributions": [ - "doc", - "maintenance" + "code" + ] + }, + { + "login": "Jrc356", + "name": "Jon Corbin", + "avatar_url": "https://avatars.githubusercontent.com/u/37387479?v=4", + "profile": "https://www.linkedin.com/in/jrc356/", + "contributions": [ + "agents", + "prompts" + ] + }, + { + "login": "troytaylor-msft", + "name": "troytaylor-msft", + "avatar_url": "https://avatars.githubusercontent.com/u/248058374?v=4", + "profile": "https://github.com/troytaylor-msft", + "contributions": [ + "code" + ] + }, + { + "login": "fazedordecodigo", + "name": "Emerson Delatorre", + "avatar_url": "https://avatars.githubusercontent.com/u/38289677?v=4", + "profile": "https://delatorre.dev/", + "contributions": [ + "instructions" ] }, { @@ -142,6 +222,16 @@ "prompts" ] }, + { + "login": "yaooqinn", + "name": "Kent Yao", + "avatar_url": "https://avatars.githubusercontent.com/u/8326978?v=4", + "profile": "https://yaooqinn.github.io/", + "contributions": [ + "instructions", + "prompts" + ] + }, { "login": "danielmeppiel", "name": "Daniel Meppiel", @@ -152,13 +242,49 @@ ] }, { - "login": "jamesmontemagno", - "name": "James Montemagno", - "avatar_url": "https://avatars.githubusercontent.com/u/1676321?v=4", - "profile": "https://montemagno.com/", + "login": "yeelam-gordon", + "name": "Gordon Lam", + "avatar_url": "https://avatars.githubusercontent.com/u/73506701?v=4", + "profile": "https://github.com/yeelam-gordon", + "contributions": [ + "instructions" + ] + }, + { + "login": "madskristensen", + "name": "Mads Kristensen", + "avatar_url": "https://avatars.githubusercontent.com/u/1258877?v=4", + "profile": "https://www.madskristensen.net/", + "contributions": [ + "instructions" + ] + }, + { + "login": "ks6088ts", + "name": "Shinji Takenaka", + "avatar_url": "https://avatars.githubusercontent.com/u/1254960?v=4", + "profile": "https://ks6088ts.github.io/", + "contributions": [ + "code" + ] + }, + { + "login": "spectatora", + "name": "spectatora", + "avatar_url": "https://avatars.githubusercontent.com/u/1385755?v=4", + "profile": "https://github.com/spectatora", "contributions": [ "agents", - "doc", + "code", + "maintenance" + ] + }, + { + "login": "sinedied", + "name": "Yohan Lasorsa", + "avatar_url": "https://avatars.githubusercontent.com/u/593151?v=4", + "profile": "https://github.com/sinedied", + "contributions": [ "instructions", "prompts" ] @@ -174,23 +300,24 @@ ] }, { - "login": "sinedied", - "name": "Yohan Lasorsa", - "avatar_url": "https://avatars.githubusercontent.com/u/593151?v=4", - "profile": "https://github.com/sinedied", + "login": "jamesmontemagno", + "name": "James Montemagno", + "avatar_url": "https://avatars.githubusercontent.com/u/1676321?v=4", + "profile": "https://montemagno.com/", "contributions": [ + "agents", + "doc", "instructions", "prompts" ] }, { - "login": "spectatora", - "name": "spectatora", - "avatar_url": "https://avatars.githubusercontent.com/u/1385755?v=4", - "profile": "https://github.com/spectatora", + "login": "alefragnani", + "name": "Alessandro Fragnani", + "avatar_url": "https://avatars.githubusercontent.com/u/3781424?v=4", + "profile": "https://twitter.com/alefragnani", "contributions": [ - "agents", - "maintenance" + "code" ] }, { @@ -203,6 +330,34 @@ "instructions" ] }, + { + "login": "krushideep", + "name": "krushideep", + "avatar_url": "https://avatars.githubusercontent.com/u/174652083?v=4", + "profile": "https://github.com/krushideep", + "contributions": [ + "prompts" + ] + }, + { + "login": "mihsoft", + "name": "devopsfan", + "avatar_url": "https://avatars.githubusercontent.com/u/53946345?v=4", + "profile": "https://github.com/mihsoft", + "contributions": [ + "agents" + ] + }, + { + "login": "tgrall", + "name": "Tugdual Grall", + "avatar_url": "https://avatars.githubusercontent.com/u/541250?v=4", + "profile": "http://tgrall.github.io/", + "contributions": [ + "instructions", + "prompts" + ] + }, { "login": "OrenMe", "name": "Oren Me", @@ -283,12 +438,11 @@ ] }, { - "login": "askpt", - "name": "André Silva", - "avatar_url": "https://avatars.githubusercontent.com/u/2493377?v=4", - "profile": "https://asilva.dev/", + "login": "markdav-is", + "name": "Mark Davis", + "avatar_url": "https://avatars.githubusercontent.com/u/311063?v=4", + "profile": "http://markdav.is/", "contributions": [ - "agents", "instructions" ] }, @@ -319,6 +473,15 @@ "agents" ] }, + { + "login": "pkarda", + "name": "Peter Karda", + "avatar_url": "https://avatars.githubusercontent.com/u/12649718?v=4", + "profile": "https://github.com/pkarda", + "contributions": [ + "prompts" + ] + }, { "login": "sdolgin", "name": "Saul Dolgin", @@ -359,16 +522,6 @@ "agents" ] }, - { - "login": "tgrall", - "name": "Tugdual Grall", - "avatar_url": "https://avatars.githubusercontent.com/u/541250?v=4", - "profile": "http://tgrall.github.io/", - "contributions": [ - "instructions", - "prompts" - ] - }, { "login": "doggy8088", "name": "Will 保哥", @@ -388,6 +541,15 @@ "instructions" ] }, + { + "login": "anschnapp", + "name": "anschnapp", + "avatar_url": "https://avatars.githubusercontent.com/u/17565996?v=4", + "profile": "https://github.com/anschnapp", + "contributions": [ + "agents" + ] + }, { "login": "hizahizi-hizumi", "name": "hizahizi-hizumi", @@ -436,6 +598,16 @@ "instructions" ] }, + { + "login": "askpt", + "name": "André Silva", + "avatar_url": "https://avatars.githubusercontent.com/u/2493377?v=4", + "profile": "https://asilva.dev/", + "contributions": [ + "agents", + "instructions" + ] + }, { "login": "agreaves-ms", "name": "Allen Greaves", @@ -455,6 +627,15 @@ "agents" ] }, + { + "login": "BBoyBen", + "name": "BBoyBen", + "avatar_url": "https://avatars.githubusercontent.com/u/34445365?v=4", + "profile": "https://github.com/BBoyBen", + "contributions": [ + "instructions" + ] + }, { "login": "brooke-hamilton", "name": "Brooke Hamilton", @@ -567,19 +748,10 @@ ] }, { - "login": "markdav-is", - "name": "Mark Davis", - "avatar_url": "https://avatars.githubusercontent.com/u/311063?v=4", - "profile": "http://markdav.is/", - "contributions": [ - "instructions" - ] - }, - { - "login": "pelikhan", - "name": "Peli de Halleux", - "avatar_url": "https://avatars.githubusercontent.com/u/4175913?v=4", - "profile": "https://github.com/pelikhan", + "login": "msalaman", + "name": "msalaman", + "avatar_url": "https://avatars.githubusercontent.com/u/28122166?v=4", + "profile": "https://github.com/msalaman", "contributions": [ "code" ] @@ -696,14 +868,32 @@ ] }, { - "login": "dgh06175", - "name": "이상현", - "avatar_url": "https://avatars.githubusercontent.com/u/77305722?v=4", - "profile": "https://github.com/dgh06175", + "login": "STRUDSO", + "name": "Søren Trudsø Mahon", + "avatar_url": "https://avatars.githubusercontent.com/u/1543732?v=4", + "profile": "https://github.com/STRUDSO", "contributions": [ "instructions" ] }, + { + "login": "semperteneo", + "name": "Tj Vita", + "avatar_url": "https://avatars.githubusercontent.com/u/14024037?v=4", + "profile": "http://enakdesign.com/", + "contributions": [ + "agents" + ] + }, + { + "login": "pelikhan", + "name": "Peli de Halleux", + "avatar_url": "https://avatars.githubusercontent.com/u/4175913?v=4", + "profile": "https://github.com/pelikhan", + "contributions": [ + "code" + ] + }, { "login": "paulomorgado", "name": "Paulo Morgado", @@ -823,10 +1013,19 @@ ] }, { - "login": "mfairchild365", - "name": "Michael Fairchild", - "avatar_url": "https://avatars.githubusercontent.com/u/498678?v=4", - "profile": "https://a11ysupport.io/", + "login": "giomartinsdev", + "name": "Giovanni de Almeida Martins", + "avatar_url": "https://avatars.githubusercontent.com/u/125399281?v=4", + "profile": "https://github.com/giomartinsdev", + "contributions": [ + "instructions" + ] + }, + { + "login": "dgh06175", + "name": "이상현", + "avatar_url": "https://avatars.githubusercontent.com/u/77305722?v=4", + "profile": "https://github.com/dgh06175", "contributions": [ "instructions" ] @@ -959,6 +1158,26 @@ "agents" ] }, + { + "login": "BenoitMaucotel", + "name": "BenoitMaucotel", + "avatar_url": "https://avatars.githubusercontent.com/u/54392431?v=4", + "profile": "https://github.com/BenoitMaucotel", + "contributions": [ + "code" + ] + }, + { + "login": "benjisho-aidome", + "name": "benjisho-aidome", + "avatar_url": "https://avatars.githubusercontent.com/u/218995725?v=4", + "profile": "https://github.com/benjisho-aidome", + "contributions": [ + "agents", + "instructions", + "prompts" + ] + }, { "login": "yukiomoto", "name": "Yuki Omoto", @@ -1013,6 +1232,15 @@ "agents" ] }, + { + "login": "vlahanas", + "name": "Vasileios Lahanas", + "avatar_url": "https://avatars.githubusercontent.com/u/19361558?v=4", + "profile": "https://www.ferryhopper.com/", + "contributions": [ + "instructions" + ] + }, { "login": "udayakumarreddyv", "name": "Udaya Veeramreddygari", @@ -1032,37 +1260,28 @@ ] }, { - "login": "twitthoeft-gls", - "name": "Troy Witthoeft (glsauto)", - "avatar_url": "https://avatars.githubusercontent.com/u/132710946?v=4", - "profile": "http://glsauto.com/", - "contributions": [ - "instructions" - ] - }, - { - "login": "tmeschter", - "name": "Tom Meschter", - "avatar_url": "https://avatars.githubusercontent.com/u/10506730?v=4", - "profile": "https://github.com/tmeschter", + "login": "tsubasaogawa", + "name": "Tsubasa Ogawa", + "avatar_url": "https://avatars.githubusercontent.com/u/7788821?v=4", + "profile": "https://tsubasaogawa.me/", "contributions": [ "code" ] }, { - "login": "semperteneo", - "name": "Tj Vita", - "avatar_url": "https://avatars.githubusercontent.com/u/14024037?v=4", - "profile": "http://enakdesign.com/", + "login": "twitthoeft-gls", + "name": "Troy Witthoeft (glsauto)", + "avatar_url": "https://avatars.githubusercontent.com/u/132710946?v=4", + "profile": "http://glsauto.com/", "contributions": [ - "agents" + "instructions" ] }, { - "login": "STRUDSO", - "name": "Søren Trudsø Mahon", - "avatar_url": "https://avatars.githubusercontent.com/u/1543732?v=4", - "profile": "https://github.com/STRUDSO", + "login": "jfversluis", + "name": "Gerald Versluis", + "avatar_url": "https://avatars.githubusercontent.com/u/939291?v=4", + "profile": "https://jfversluis.dev/", "contributions": [ "instructions" ] @@ -1073,7 +1292,7 @@ "avatar_url": "https://avatars.githubusercontent.com/u/145904?v=4", "profile": "https://github.com/geoder101", "contributions": [ - "code" + "prompts" ] }, { @@ -1213,15 +1432,6 @@ "agents" ] }, - { - "login": "BBoyBen", - "name": "BBoyBen", - "avatar_url": "https://avatars.githubusercontent.com/u/34445365?v=4", - "profile": "https://github.com/BBoyBen", - "contributions": [ - "instructions" - ] - }, { "login": "artemsaveliev", "name": "Artem Saveliev", @@ -1303,6 +1513,15 @@ "agents" ] }, + { + "login": "AIAlchemyForge", + "name": "AIAlchemyForge", + "avatar_url": "https://avatars.githubusercontent.com/u/253636689?v=4", + "profile": "https://github.com/AIAlchemyForge", + "contributions": [ + "instructions" + ] + }, { "login": "4regab", "name": "4regab", @@ -1312,6 +1531,24 @@ "instructions" ] }, + { + "login": "MiguelElGallo", + "name": "Miguel P Z", + "avatar_url": "https://avatars.githubusercontent.com/u/60221874?v=4", + "profile": "https://github.com/MiguelElGallo", + "contributions": [ + "doc" + ] + }, + { + "login": "mfairchild365", + "name": "Michael Fairchild", + "avatar_url": "https://avatars.githubusercontent.com/u/498678?v=4", + "profile": "https://a11ysupport.io/", + "contributions": [ + "instructions" + ] + }, { "login": "michaelvolz", "name": "Michael A. Volz (Flynn)", @@ -1357,15 +1594,6 @@ "agents" ] }, - { - "login": "codemillmatt", - "name": "Matt Soucoup", - "avatar_url": "https://avatars.githubusercontent.com/u/2053639?v=4", - "profile": "https://codemilltech.com/", - "contributions": [ - "infra" - ] - }, { "login": "marknoble", "name": "Mark Noble", @@ -1402,6 +1630,15 @@ "instructions" ] }, + { + "login": "saikoumudi", + "name": "Sai Koumudi Kaluvakolanu", + "avatar_url": "https://avatars.githubusercontent.com/u/22682497?v=4", + "profile": "https://github.com/saikoumudi", + "contributions": [ + "agents" + ] + }, { "login": "whiteken", "name": "Kenny White", @@ -1530,39 +1767,39 @@ ] }, { - "login": "hashimwarren", - "name": "Hashim Warren", - "avatar_url": "https://avatars.githubusercontent.com/u/6027587?v=4", - "profile": "https://github.com/hashimwarren", + "login": "hunterhogan", + "name": "Hunter Hogan", + "avatar_url": "https://avatars.githubusercontent.com/u/2958419?v=4", + "profile": "https://github.com/hunterhogan", "contributions": [ "agents" ] }, { - "login": "0GiS0", - "name": "Gisela Torres", - "avatar_url": "https://avatars.githubusercontent.com/u/175379?v=4", - "profile": "https://hachyderm.io/@0gis0", + "login": "hashimwarren", + "name": "Hashim Warren", + "avatar_url": "https://avatars.githubusercontent.com/u/6027587?v=4", + "profile": "https://github.com/hashimwarren", "contributions": [ "agents" ] }, { - "login": "giomartinsdev", - "name": "Giovanni de Almeida Martins", - "avatar_url": "https://avatars.githubusercontent.com/u/125399281?v=4", - "profile": "https://github.com/giomartinsdev", + "login": "Arggon", + "name": "Gonzalo", + "avatar_url": "https://avatars.githubusercontent.com/u/20962238?v=4", + "profile": "https://github.com/Arggon", "contributions": [ - "instructions" + "prompts" ] }, { - "login": "jfversluis", - "name": "Gerald Versluis", - "avatar_url": "https://avatars.githubusercontent.com/u/939291?v=4", - "profile": "https://jfversluis.dev/", + "login": "0GiS0", + "name": "Gisela Torres", + "avatar_url": "https://avatars.githubusercontent.com/u/175379?v=4", + "profile": "https://hachyderm.io/@0gis0", "contributions": [ - "instructions" + "agents" ] } ] diff --git a/.github/workflows/contributors.yml b/.github/workflows/contributors.yml index e8310bf51..6f2dc6eb8 100644 --- a/.github/workflows/contributors.yml +++ b/.github/workflows/contributors.yml @@ -16,7 +16,7 @@ jobs: - name: Checkout uses: actions/checkout@v6 with: - fetch-depth: 0 # Required: add-missing-contributors.js needs full git history + fetch-depth: 0 - name: Extract Node version from package.json id: node-version diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 40af0d506..2a11bd47d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -255,7 +255,8 @@ We welcome many kinds of contributions, including the custom categories below: | --- | --- | :---: | | **Instructions** | Custom instruction sets that guide GitHub Copilot behavior | 🧭 | | **Prompts** | Reusable or one-off prompts for GitHub Copilot | ⌨️ | -| **Agents (Chat Modes)** | Defined Copilot roles or personalities | 🎭 | +| **Agents (Chat Modes)** | Defined GitHub Copilot roles or personalities | 🎭 | +| **Skills** | Specialized knowledge of a task for GitHub Copilot | 🧰 | | **Collections** | Curated bundles of related prompts, agents, or instructions | 🎁 | In addition, all standard contribution types supported by [All Contributors](https://allcontributors.org/emoji-key/) are recognized. diff --git a/README.md b/README.md index bb87f8950..a79c465ac 100644 --- a/README.md +++ b/README.md @@ -132,110 +132,137 @@ Thanks goes to these wonderful people ([emoji key](./CONTRIBUTING.md#contributor
Aaron Powell
Aaron Powell

💻 🚧 📆 📣
Muhammad Ubaid Raza
Muhammad Ubaid Raza

💻
Harald Kirschner
Harald Kirschner

💻
Matteo Bianchi
Matteo Bianchi

💻
Aung Myo Kyaw
Aung Myo Kyaw

💻
Daniel Scott-Raynsford
Daniel Scott-Raynsford

💻
Burke Holland
Burke Holland

💻
Aaron Powell
Aaron Powell

🎭 🎁 📖 🚇 🧭 🚧 ⌨️
Troy Simeon Taylor
Troy Simeon Taylor

🎭 🎁 🧭 ⌨️
Peter Strömberg
Peter Strömberg

🎭 🎁 🧭 ⌨️
Daniel Scott-Raynsford
Daniel Scott-Raynsford

🎭 🎁 🧭 ⌨️
John Haugabook
John Haugabook

🧭 ⌨️
Muhammad Ubaid Raza
Muhammad Ubaid Raza

🎭 🧭
Aung Myo Kyaw
Aung Myo Kyaw

🎭 ⌨️
Peter Strömberg
Peter Strömberg

💻
Daniel Meppiel
Daniel Meppiel

💻
James Montemagno
James Montemagno

💻
Vamshi Verma
Vamshi Verma

💻
Yohan Lasorsa
Yohan Lasorsa

💻
Oren Me
Oren Me

💻
Mike Rousos
Mike Rousos

💻
Harald Kirschner
Harald Kirschner

📖 🚧
Burke Holland
Burke Holland

🎭 🚇 🧭 ⌨️
Daniel Meppiel
Daniel Meppiel

⌨️
James Montemagno
James Montemagno

🎭 📖 🧭 ⌨️
Vamshi Verma
Vamshi Verma

🧭 ⌨️
Yohan Lasorsa
Yohan Lasorsa

🧭 ⌨️
spectatora
spectatora

🎭 🚧
Guilherme do Amaral Alves
Guilherme do Amaral Alves

💻
Troy Simeon Taylor
Troy Simeon Taylor

💻
Ambily
Ambily

💻
Tugdual Grall
Tugdual Grall

💻
Tianqi Zhang
Tianqi Zhang

💻
Shubham Gaikwad
Shubham Gaikwad

💻
Saul Dolgin
Saul Dolgin

💻
Ambily
Ambily

🎭 🧭
Oren Me
Oren Me

🎭 🧭
Mike Rousos
Mike Rousos

🧭 ⌨️
Justin Yoo
Justin Yoo

🧭
Guilherme do Amaral Alves
Guilherme do Amaral Alves

🧭
Griffin Ashe
Griffin Ashe

🎭 🎁
Ashley Childress
Ashley Childress

🎭 📖 🧭
NULLchimp
NULLchimp

💻
Matt Vevang
Matt Vevang

💻
Justin Yoo
Justin Yoo

💻
Gisela Torres
Gisela Torres

💻
Debbie O'Brien
Debbie O'Brien

💻
Allen Greaves
Allen Greaves

💻
Amelia Payne
Amelia Payne

💻
Adrien Clerbois
Adrien Clerbois

🎭 📖 ⌨️
ANGELELLI David
ANGELELLI David

🎭
André Silva
André Silva

🎭 🧭
Matt Vevang
Matt Vevang

🧭
Maximilian Irro
Maximilian Irro

🧭
NULLchimp
NULLchimp

🎭
Saul Dolgin
Saul Dolgin

🎭 🧭 ⌨️
Sebastien DEGODEZ
Sebastien DEGODEZ

💻
Sebastian Gräf
Sebastian Gräf

💻
Salih İbrahimbaş
Salih İbrahimbaş

💻
Robert Altman
Robert Altman

💻
Rob Simpson
Rob Simpson

💻
Rick Smit
Rick Smit

💻
Peter Smulovics
Peter Smulovics

💻
Shubham Gaikwad
Shubham Gaikwad

🎭 🧭 ⌨️
Theo van Kraay
Theo van Kraay

🧭
Tianqi Zhang
Tianqi Zhang

🎭
Tugdual Grall
Tugdual Grall

🧭 ⌨️
Will 保哥
Will 保哥

🎭 ⌨️
Yuta Matsumura
Yuta Matsumura

🧭
hizahizi-hizumi
hizahizi-hizumi

🧭
黃健旻 Vincent Huang
黃健旻 Vincent Huang

⌨️
Bruno Borges
Bruno Borges

🎁 🧭
Steve Magne
Steve Magne

📖 🧭
Shane Neuville
Shane Neuville

🎭 🧭
Allen Greaves
Allen Greaves

🎭 🧭
Amelia Payne
Amelia Payne

🎭
Brooke Hamilton
Brooke Hamilton

🧭
Christopher Harrison
Christopher Harrison

🧭
Dan
Dan

🧭
Dan Wahlin
Dan Wahlin

🎭
Debbie O'Brien
Debbie O'Brien

🎭 🧭 ⌨️
Ed Harrod
Ed Harrod

⌨️
Genevieve Warren
Genevieve Warren

⌨️
Guillaume
Guillaume

🎭 ⌨️
Henrique Nunes
Henrique Nunes

⌨️
Jeremiah Snee
Jeremiah Snee

💻
Kartik Dhiman
Kartik Dhiman

🧭
Kristiyan Velkov
Kristiyan Velkov

🎭
Mark Davis
Mark Davis

🧭
Peli de Halleux
Peli de Halleux

💻
Paulo Morgado
Paulo Morgado

💻
Nick Taylor
Nick Taylor

💻
Mike Parker
Mike Parker

💻
Mike Kistler
Mike Kistler

💻
Michael Fairchild
Michael Fairchild

💻
Michael A. Volz (Flynn)
Michael A. Volz (Flynn)

💻
Per Søderlind
Per Søderlind

🧭
Peter Smulovics
Peter Smulovics

🧭
Ravish Rathod
Ravish Rathod

🧭
Rick Smit
Rick Smit

🎭
Rob Simpson
Rob Simpson

🧭
Robert Altman
Robert Altman

🧭
Salih
Salih

🧭
Sebastian Gräf
Sebastian Gräf

🎭 🧭
4regab
4regab

💻
Theo van Kraay
Theo van Kraay

💻
Troy Witthoeft (glsauto)
Troy Witthoeft (glsauto)

💻
Tài Lê
Tài Lê

💻
Udaya Veeramreddygari
Udaya Veeramreddygari

💻
Waren Gonzaga
Waren Gonzaga

💻
Will 保哥
Will 保哥

💻
Sebastien DEGODEZ
Sebastien DEGODEZ

🧭
Sergiy Smyrnov
Sergiy Smyrnov

⌨️
SomeSolutionsArchitect
SomeSolutionsArchitect

🎭
Stu Mace
Stu Mace

🎭 🎁 🧭
이상현
이상현

🧭
Paulo Morgado
Paulo Morgado

⌨️
Paul Crane
Paul Crane

🎭
Yuki Omoto
Yuki Omoto

💻
Meii
Meii

💻
samqbush
samqbush

💻
sdanzo-hrb
sdanzo-hrb

💻
voidfnc
voidfnc

💻
Pamela Fox
Pamela Fox

⌨️
Oskar Thornblad
Oskar Thornblad

🧭
Nischay Sharma
Nischay Sharma

🎭
Nikolay Marinov
Nikolay Marinov

🎭
Nik Sachdeva
Nik Sachdeva

🎭 🎁
Nick Taylor
Nick Taylor

💻
Nick Brady
Nick Brady

🎭
Nathan Stanford Sr
Nathan Stanford Sr

🧭
Máté Barabás
Máté Barabás

🧭
Mike Parker
Mike Parker

🧭
Mike Kistler
Mike Kistler

⌨️
Michael Fairchild
Michael Fairchild

🧭
Ankur Sharma
Ankur Sharma

⌨️
Wendy Breiding
Wendy Breiding

💻
Ankur Sharma
Ankur Sharma

💻
黃健旻 Vincent Huang
黃健旻 Vincent Huang

💻
이상현
이상현

💻
Abdi Daud
Abdi Daud

💻
Adrien Clerbois
Adrien Clerbois

💻
Alan Sprecacenere
Alan Sprecacenere

💻
André Silva
André Silva

💻
Antoine Rey
Antoine Rey

💻
voidfnc
voidfnc

🎭
shane lee
shane lee

🧭
sdanzo-hrb
sdanzo-hrb

🎭
sauran
sauran

🧭
samqbush
samqbush

⌨️
pareenaverma
pareenaverma

🎭
oleksiyyurchyna
oleksiyyurchyna

🎁 ⌨️
Artem Saveliev
Artem Saveliev

💻
Bruno Borges
Bruno Borges

💻
Christophe Peugnet
Christophe Peugnet

💻
Chtive
Chtive

💻
Craig Bekker
Craig Bekker

💻
Dan
Dan

💻
Eldrick Wega
Eldrick Wega

💻
oceans-of-time
oceans-of-time

🧭
kshashank57
kshashank57

🎭 🧭
Meii
Meii

🎭
factory-davidgu
factory-davidgu

💻
dangelov-qa
dangelov-qa

🎭
Yuki Omoto
Yuki Omoto

🧭
Will Schultz
Will Schultz

🎭
Felix Arjuna
Felix Arjuna

💻
Furkan Enes
Furkan Enes

💻
Genevieve Warren
Genevieve Warren

💻
Waren Gonzaga
Waren Gonzaga

🎭
Vincent Koc
Vincent Koc

🎭
Victor Williams
Victor Williams

🎭
Ve Sharma
Ve Sharma

🎭
Udaya Veeramreddygari
Udaya Veeramreddygari

🧭
Tài Lê
Tài Lê

⌨️
Troy Witthoeft (glsauto)
Troy Witthoeft (glsauto)

🧭
Tom Meschter
Tom Meschter

💻
Tj Vita
Tj Vita

🎭
Søren Trudsø Mahon
Søren Trudsø Mahon

🧭
George Dernikos
George Dernikos

💻
Giovanni de Almeida Martins
Giovanni de Almeida Martins

💻
Ioana A
Ioana A

💻
Jakub Jareš
Jakub Jareš

💻
Gautam
Gautam

🎭
Furkan Enes
Furkan Enes

🧭
Florian Mücke
Florian Mücke

🎭
Felix Arjuna
Felix Arjuna

🧭
Eldrick Wega
Eldrick Wega

⌨️
Dobri Danchev
Dobri Danchev

⌨️
Diego Gamboa
Diego Gamboa

⌨️
Derek Clair
Derek Clair

🎭 ⌨️
David Ortinau
David Ortinau

💻
Daniel Abbatt
Daniel Abbatt

🧭
CypherHK
CypherHK

🎭 ⌨️
Craig Bekker
Craig Bekker

💻
Christophe Peugnet
Christophe Peugnet

🧭
Christian Lechner
Christian Lechner

🧭
Chris Harris
Chris Harris

🎭
BBoyBen
BBoyBen

🧭
Artem Saveliev
Artem Saveliev

🧭
Antoine Rey
Antoine Rey

⌨️
Ankit Das
Ankit Das

🧭
Aline Ávila
Aline Ávila

🧭
Alexander Martinkevich
Alexander Martinkevich

🎭
Aleksandar Dunchev
Aleksandar Dunchev

🎭
Alan Sprecacenere
Alan Sprecacenere

🧭
Akash Kumar Shaw
Akash Kumar Shaw

🧭
Abdi Daud
Abdi Daud

🎭
4regab
4regab

🧭
Michael A. Volz (Flynn)
Michael A. Volz (Flynn)

⌨️
Michael
Michael

🧭
Mehmet Ali EROL
Mehmet Ali EROL

🎭
Max Prilutskiy
Max Prilutskiy

🎭
Matteo Bianchi
Matteo Bianchi

🎭
Matt Soucoup
Matt Soucoup

🚇
Mark Noble
Mark Noble

🎭
Manish Jayaswal
Manish Jayaswal

🎭
Luke Murray
Luke Murray

🎭
Louella Creemers
Louella Creemers

🧭
Kenny White
Kenny White

🧭
KaloyanGenev
KaloyanGenev

🎭
Joe Watkins
Joe Watkins

💻
John Papa
John Papa

💻
Joseph Gonzales
Joseph Gonzales

💻
José Antonio Garrido
José Antonio Garrido

💻
Kim Skov Rasmussen
Kim Skov Rasmussen

💻
Kenny White
Kenny White

💻
Louella Creemers
Louella Creemers

💻
Julien Dubois
Julien Dubois

⌨️
José Antonio Garrido
José Antonio Garrido

🧭
Joseph Gonzales
Joseph Gonzales

🧭 ⌨️
Jorge Balderas
Jorge Balderas

🧭
John Papa
John Papa

💻
John
John

🎭
Luke Murray
Luke Murray

💻
Mark Noble
Mark Noble

💻
Per Søderlind
Per Søderlind

💻
Henrique Nunes
Henrique Nunes

💻
Jeremiah Snee
Jeremiah Snee

💻
spectatora
spectatora

💻
Michael
Michael

💻
Joe Watkins
Joe Watkins

🧭
Jan de Vries
Jan de Vries

🎭
Jakub Jareš
Jakub Jareš

⌨️
Jackson Miller
Jackson Miller

🧭
Ioana A
Ioana A

🧭
Hashim Warren
Hashim Warren

🎭
Gisela Torres
Gisela Torres

🎭
Christian Lechner
Christian Lechner

💻
Jan de Vries
Jan de Vries

💻
Giovanni de Almeida Martins
Giovanni de Almeida Martins

🧭
Gerald Versluis
Gerald Versluis

🧭
- + + + + + + + + + + - + + + - - - - + + + + + + + + + + + + + - - + + - + - - + + + - - - + + + + + + + - - + + - - + + - - + - - + + - - + + - + + + + - + - - + + @@ -254,94 +281,98 @@ Thanks goes to these wonderful people ([emoji key](./CONTRIBUTING.md#contributor - - + + + + + + + + + + + - - - - - - - - - + + - - + - + + + + + + - - - + + + - - + + - - + + + + - - - - diff --git a/eng/contributor-report.mjs b/eng/contributor-report.mjs index 7f44f8a2b..0e72282ed 100644 --- a/eng/contributor-report.mjs +++ b/eng/contributor-report.mjs @@ -39,6 +39,9 @@ export const TYPE_PATTERNS = { 'chatmodes/*.chatmode.md', 'agents/*.agent.md' ], + skills: [ + 'skills/' + ], collections: [ 'collections/*.collection.yml' ], @@ -263,11 +266,30 @@ export const getMissingContributors = () => { return filteredUsernames; } catch (error) { - console.error('❌ Error checking for missing contributors:', error.message); - if (error.message.includes('command not found') || error.message.includes('not recognized')) { + const stderr = String(error?.stderr ?? ''); + const stdout = String(error?.stdout ?? ''); + const details = [stderr, stdout, String(error?.message ?? '')].join('\n'); + + // Never print token values. Just print actionable guidance. + if (details.toLowerCase().includes('bad credentials') || details.includes('401')) { + console.error('❌ all-contributors authentication failed (Bad credentials / 401).'); + console.error('💡 Set a valid token in PRIVATE_TOKEN (all-contributors-cli) and/or GH_TOKEN (gh CLI).'); + console.error('💡 In GitHub Actions, you can usually use: secrets.GITHUB_TOKEN'); + throw new Error('contributors:check failed due to invalid credentials'); + } + + console.error('❌ Error checking for missing contributors:', String(error?.message ?? error)); + if (details.trim()) { + console.error('--- all-contributors output (truncated) ---'); + console.error(details.slice(0, 2000)); + console.error('--- end output ---'); + } + + if (String(error?.message ?? '').includes('command not found') || String(error?.message ?? '').includes('not recognized')) { console.error('💡 Make sure all-contributors-cli is installed: npm install all-contributors-cli'); } - return []; + + throw error; } }; @@ -540,6 +562,11 @@ const main = () => { process.env.GITHUB_TOKEN = process.env.PRIVATE_TOKEN; } + // gh prefers GH_TOKEN; if we only have GITHUB_TOKEN, make GH_TOKEN explicit. + if (process.env.GITHUB_TOKEN && !process.env.GH_TOKEN) { + process.env.GH_TOKEN = process.env.GITHUB_TOKEN; + } + const args = new Set(process.argv.slice(2)); const includeAllFiles = args.has('--include-all-pr-files'); From f078f4540ddb4966efd878c96859377375cf5e69 Mon Sep 17 00:00:00 2001 From: Christopher Harrison Date: Thu, 15 Jan 2026 14:13:10 -0800 Subject: [PATCH 39/43] Update Svelte instructions with Svelte 5 best practices - Added latest Svelte 5 runes best practices (.by, .pre, untrack) - Added type-safe context with createContext() pattern - Added transitions and animations section - Emphasized effect best practices (prefer over ) - Added function bindings for two-way binding - Restructured document for better readability with logical groupings - Organized into clear sections: Core Concepts, Reactivity, SvelteKit, UI, TypeScript, Production - Consolidated related topics (data loading, forms, tooling) - Updated to align with official Svelte 5 and SvelteKit documentation --- instructions/svelte.instructions.md | 141 ++++++++++++++++++---------- 1 file changed, 93 insertions(+), 48 deletions(-) diff --git a/instructions/svelte.instructions.md b/instructions/svelte.instructions.md index 646b4baf4..7f2dfed5b 100644 --- a/instructions/svelte.instructions.md +++ b/instructions/svelte.instructions.md @@ -15,7 +15,7 @@ Instructions for building high-quality Svelte 5 and SvelteKit applications with - Progressive enhancement and performance-first approach - Modern build tooling (Vite) with optimizations -## Development Standards +## Core Concepts ### Architecture - Use Svelte 5 runes system for all reactivity instead of legacy stores @@ -25,45 +25,76 @@ Instructions for building high-quality Svelte 5 and SvelteKit applications with - Implement proper component composition with slots and snippets - Use SvelteKit's file-based routing with proper load functions -### TypeScript Integration -- Enable strict mode in `tsconfig.json` for maximum type safety -- Define interfaces for component props using `$props()` syntax -- Type event handlers, refs, and SvelteKit's generated types -- Use generic types for reusable components -- Leverage `$types.ts` files generated by SvelteKit -- Implement proper type checking with `svelte-check` - ### Component Design - Follow single responsibility principle for components - Use `
Aaron Powell
Aaron Powell

🎭 🎁 📖 🚇 🧭 🚧 ⌨️
Aaron Powell
Aaron Powell

🎭 💻 🎁 📖 🚇 🧭 🚧 ⌨️
Matt Soucoup
Matt Soucoup

🚇
Troy Simeon Taylor
Troy Simeon Taylor

🎭 🎁 🧭 ⌨️
Abbas
Abbas

🎭 🧭
Peter Strömberg
Peter Strömberg

🎭 🎁 🧭 ⌨️
Daniel Scott-Raynsford
Daniel Scott-Raynsford

🎭 🎁 🧭 ⌨️
John Haugabook
John Haugabook

🧭 ⌨️
Pavel Simsa
Pavel Simsa

💻
Harald Kirschner
Harald Kirschner

💻 📖 🚧
Muhammad Ubaid Raza
Muhammad Ubaid Raza

🎭 🧭
Tom Meschter
Tom Meschter

💻
Aung Myo Kyaw
Aung Myo Kyaw

🎭 ⌨️
JasonYeMSFT
JasonYeMSFT

💻
Jon Corbin
Jon Corbin

🎭 ⌨️
Harald Kirschner
Harald Kirschner

📖 🚧
troytaylor-msft
troytaylor-msft

💻
Emerson Delatorre
Emerson Delatorre

🧭
Burke Holland
Burke Holland

🎭 🚇 🧭 ⌨️
Kent Yao
Kent Yao

🧭 ⌨️
Daniel Meppiel
Daniel Meppiel

⌨️
James Montemagno
James Montemagno

🎭 📖 🧭 ⌨️
Vamshi Verma
Vamshi Verma

🧭 ⌨️
Yohan Lasorsa
Yohan Lasorsa

🧭 ⌨️
spectatora
spectatora

🎭 🚧
Gordon Lam
Gordon Lam

🧭
Mads Kristensen
Mads Kristensen

🧭
Shinji Takenaka
Shinji Takenaka

💻
spectatora
spectatora

🎭 💻 🚧
Yohan Lasorsa
Yohan Lasorsa

🧭 ⌨️
Vamshi Verma
Vamshi Verma

🧭 ⌨️
James Montemagno
James Montemagno

🎭 📖 🧭 ⌨️
Alessandro Fragnani
Alessandro Fragnani

💻
Ambily
Ambily

🎭 🧭
krushideep
krushideep

⌨️
devopsfan
devopsfan

🎭
Tugdual Grall
Tugdual Grall

🧭 ⌨️
Oren Me
Oren Me

🎭 🧭
Mike Rousos
Mike Rousos

🧭 ⌨️
Justin Yoo
Justin Yoo

🧭
Guilherme do Amaral Alves
Guilherme do Amaral Alves

🧭
Griffin Ashe
Griffin Ashe

🎭 🎁
Ashley Childress
Ashley Childress

🎭 📖 🧭
Griffin Ashe
Griffin Ashe

🎭 🎁
Ashley Childress
Ashley Childress

🎭 📖 🧭
Adrien Clerbois
Adrien Clerbois

🎭 📖 ⌨️
ANGELELLI David
ANGELELLI David

🎭
André Silva
André Silva

🎭 🧭
Mark Davis
Mark Davis

🧭
Matt Vevang
Matt Vevang

🧭
Maximilian Irro
Maximilian Irro

🧭
NULLchimp
NULLchimp

🎭
Saul Dolgin
Saul Dolgin

🎭 🧭 ⌨️
NULLchimp
NULLchimp

🎭
Peter Karda
Peter Karda

⌨️
Saul Dolgin
Saul Dolgin

🎭 🧭 ⌨️
Shubham Gaikwad
Shubham Gaikwad

🎭 🧭 ⌨️
Theo van Kraay
Theo van Kraay

🧭
Tianqi Zhang
Tianqi Zhang

🎭
Tugdual Grall
Tugdual Grall

🧭 ⌨️
Will 保哥
Will 保哥

🎭 ⌨️
Yuta Matsumura
Yuta Matsumura

🧭
hizahizi-hizumi
hizahizi-hizumi

🧭
Yuta Matsumura
Yuta Matsumura

🧭
anschnapp
anschnapp

🎭
hizahizi-hizumi
hizahizi-hizumi

🧭
黃健旻 Vincent Huang
黃健旻 Vincent Huang

⌨️
Bruno Borges
Bruno Borges

🎁 🧭
Steve Magne
Steve Magne

📖 🧭
Shane Neuville
Shane Neuville

🎭 🧭
André Silva
André Silva

🎭 🧭
Allen Greaves
Allen Greaves

🎭 🧭
Amelia Payne
Amelia Payne

🎭
BBoyBen
BBoyBen

🧭
Brooke Hamilton
Brooke Hamilton

🧭
Christopher Harrison
Christopher Harrison

🧭
Dan
Dan

🧭
Dan Wahlin
Dan Wahlin

🎭
Debbie O'Brien
Debbie O'Brien

🎭 🧭 ⌨️
Ed Harrod
Ed Harrod

⌨️
Genevieve Warren
Genevieve Warren

⌨️
Guillaume
Guillaume

🎭 ⌨️
Henrique Nunes
Henrique Nunes

⌨️
Jeremiah Snee
Jeremiah Snee

💻
Kartik Dhiman
Kartik Dhiman

🧭
Kristiyan Velkov
Kristiyan Velkov

🎭
Mark Davis
Mark Davis

🧭
Peli de Halleux
Peli de Halleux

💻
msalaman
msalaman

💻
Per Søderlind
Per Søderlind

🧭
Peter Smulovics
Peter Smulovics

🧭
Ravish Rathod
Ravish Rathod

🧭
Rick Smit
Rick Smit

🎭
Rob Simpson
Rob Simpson

🧭
Robert Altman
Robert Altman

🧭
Salih
Salih

🧭
Sebastian Gräf
Sebastian Gräf

🎭 🧭
Sebastien DEGODEZ
Sebastien DEGODEZ

🧭
Sergiy Smyrnov
Sergiy Smyrnov

⌨️
SomeSolutionsArchitect
SomeSolutionsArchitect

🎭
Stu Mace
Stu Mace

🎭 🎁 🧭
이상현
이상현

🧭
Søren Trudsø Mahon
Søren Trudsø Mahon

🧭
Tj Vita
Tj Vita

🎭
Peli de Halleux
Peli de Halleux

💻
Paulo Morgado
Paulo Morgado

⌨️
Paul Crane
Paul Crane

🎭
Pamela Fox
Pamela Fox

⌨️
Pamela Fox
Pamela Fox

⌨️
Oskar Thornblad
Oskar Thornblad

🧭
Nischay Sharma
Nischay Sharma

🎭
Nikolay Marinov
Nikolay Marinov

🎭
Nik Sachdeva
Nik Sachdeva

🎭 🎁
Nick Taylor
Nick Taylor

💻
Nick Brady
Nick Brady

🎭
Nathan Stanford Sr
Nathan Stanford Sr

🧭
Nathan Stanford Sr
Nathan Stanford Sr

🧭
Máté Barabás
Máté Barabás

🧭
Mike Parker
Mike Parker

🧭
Mike Kistler
Mike Kistler

⌨️
Michael Fairchild
Michael Fairchild

🧭
Giovanni de Almeida Martins
Giovanni de Almeida Martins

🧭
이상현
이상현

🧭
Ankur Sharma
Ankur Sharma

⌨️
Wendy Breiding
Wendy Breiding

💻
Meii
Meii

🎭
factory-davidgu
factory-davidgu

💻
dangelov-qa
dangelov-qa

🎭
Yuki Omoto
Yuki Omoto

🧭
Will Schultz
Will Schultz

🎭
BenoitMaucotel
BenoitMaucotel

💻
benjisho-aidome
benjisho-aidome

🎭 🧭 ⌨️
Yuki Omoto
Yuki Omoto

🧭
Will Schultz
Will Schultz

🎭
Waren Gonzaga
Waren Gonzaga

🎭
Vincent Koc
Vincent Koc

🎭
Victor Williams
Victor Williams

🎭
Ve Sharma
Ve Sharma

🎭
Vasileios Lahanas
Vasileios Lahanas

🧭
Udaya Veeramreddygari
Udaya Veeramreddygari

🧭
Tài Lê
Tài Lê

⌨️
Tsubasa Ogawa
Tsubasa Ogawa

💻
Troy Witthoeft (glsauto)
Troy Witthoeft (glsauto)

🧭
Gerald Versluis
Gerald Versluis

🧭
George Dernikos
George Dernikos

⌨️
Gautam
Gautam

🎭
Tom Meschter
Tom Meschter

💻
Tj Vita
Tj Vita

🎭
Søren Trudsø Mahon
Søren Trudsø Mahon

🧭
George Dernikos
George Dernikos

💻
Gautam
Gautam

🎭
Furkan Enes
Furkan Enes

🧭
Florian Mücke
Florian Mücke

🎭
Felix Arjuna
Felix Arjuna

🧭
Eldrick Wega
Eldrick Wega

⌨️
Dobri Danchev
Dobri Danchev

⌨️
Diego Gamboa
Diego Gamboa

⌨️
Derek Clair
Derek Clair

🎭 ⌨️
David Ortinau
David Ortinau

💻
Daniel Abbatt
Daniel Abbatt

🧭
David Ortinau
David Ortinau

💻
Daniel Abbatt
Daniel Abbatt

🧭
CypherHK
CypherHK

🎭 ⌨️
Craig Bekker
Craig Bekker

💻
Christophe Peugnet
Christophe Peugnet

🧭
Christian Lechner
Christian Lechner

🧭
Chris Harris
Chris Harris

🎭
BBoyBen
BBoyBen

🧭
Artem Saveliev
Artem Saveliev

🧭
Artem Saveliev
Artem Saveliev

🧭
Antoine Rey
Antoine Rey

⌨️
Ankit Das
Ankit Das

🧭
Aline Ávila
Aline Ávila

🧭
Alexander Martinkevich
Alexander Martinkevich

🎭
Aleksandar Dunchev
Aleksandar Dunchev

🎭
Alan Sprecacenere
Alan Sprecacenere

🧭
Akash Kumar Shaw
Akash Kumar Shaw

🧭
Akash Kumar Shaw
Akash Kumar Shaw

🧭
Abdi Daud
Abdi Daud

🎭
AIAlchemyForge
AIAlchemyForge

🧭
4regab
4regab

🧭
Miguel P Z
Miguel P Z

📖
Michael Fairchild
Michael Fairchild

🧭
Michael A. Volz (Flynn)
Michael A. Volz (Flynn)

⌨️
Michael
Michael

🧭
Mehmet Ali EROL
Mehmet Ali EROL

🎭
Max Prilutskiy
Max Prilutskiy

🎭
Matteo Bianchi
Matteo Bianchi

🎭
Matt Soucoup
Matt Soucoup

🚇
Mark Noble
Mark Noble

🎭
Manish Jayaswal
Manish Jayaswal

🎭
Luke Murray
Luke Murray

🎭
Louella Creemers
Louella Creemers

🧭
Sai Koumudi Kaluvakolanu
Sai Koumudi Kaluvakolanu

🎭
Kenny White
Kenny White

🧭
KaloyanGenev
KaloyanGenev

🎭
Kim Skov Rasmussen
Kim Skov Rasmussen

💻
Julien Dubois
Julien Dubois

⌨️
José Antonio Garrido
José Antonio Garrido

🧭
Joseph Gonzales
Joseph Gonzales

🧭 ⌨️
Jorge Balderas
Jorge Balderas

🧭
John Papa
John Papa

💻
John
John

🎭
Joe Watkins
Joe Watkins

🧭
Jan de Vries
Jan de Vries

🎭
Jakub Jareš
Jakub Jareš

⌨️
Jackson Miller
Jackson Miller

🧭
Ioana A
Ioana A

🧭
Hunter Hogan
Hunter Hogan

🎭
Hashim Warren
Hashim Warren

🎭
Gonzalo
Gonzalo

⌨️
Gisela Torres
Gisela Torres

🎭
Giovanni de Almeida Martins
Giovanni de Almeida Martins

🧭
Gerald Versluis
Gerald Versluis

🧭