Commit Graph

57 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
c8c907815d Add documentation for marketplace.json generation
- Document generate-marketplace.mjs in eng/README.md
- Add plugin folder documentation to AGENTS.md
- Update setup commands to include marketplace generation
- Add plugin checklist to code review guidelines

Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-13 01:51:52 +00:00
copilot-swe-agent[bot]
ec3e0e6651 Add missing plugins to marketplace.json and create automation script
- Add context-engineering, gem-team, and ospo-sponsorship to marketplace.json
- Create eng/generate-marketplace.mjs to automatically generate marketplace.json
- Update package.json build script to include marketplace generation
- Update GitHub workflow to trigger on plugin changes

Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-13 01:49:59 +00:00
Aaron Powell
e80e20b5ec Address PR review comments for hooks implementation
- Fix getResourceType() to match relative paths like hooks/<name>/README.md
  and skills/<name>/SKILL.md using regex instead of string includes
- Extract hook events from hooks.json via parseHookMetadata() instead of
  non-existent frontmatter.event field in plugin README generation
- Update AGENTS.md to describe hooks as folder-based (README.md + hooks.json)
  instead of .hook.md files
- Update session-logger README to accurately reflect what scripts log
  (remove references to sessionId, duration, prompt content)
2026-02-10 14:37:45 +11:00
Aaron Powell
6210128ab1 Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-10 14:31:07 +11:00
Aaron Powell
4ddc77bb36 Update eng/validate-collections.mjs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-10 14:28:47 +11:00
Aaron Powell
99a48a4020 Adding hooks to the website 2026-02-09 17:02:33 +11:00
Aaron Powell
acb5ad4ce8 feat: add hooks functionality with automated workflows
- Introduced hooks to enable automated workflows triggered by specific events during GitHub Copilot sessions.
- Added documentation for hooks in AGENTS.md and README.md.
- Created a new directory structure for hooks, including README.md and hooks.json files.
- Implemented two example hooks: Session Auto-Commit and Session Logger.
- Developed scripts for logging session events and auto-committing changes.
- Enhanced validation and parsing for hook metadata.
- Updated build and validation scripts to accommodate new hooks functionality.
2026-02-09 16:44:53 +11:00
Aaron Powell
4f9e20b13a Merge pull request #655 from github/copilot-plugins
Add plugins for all collections
2026-02-06 10:05:33 +11:00
Aaron Powell
9c4b267576 Adding script to convert collections to plugins 2026-02-05 13:52:59 +11:00
Aaron Powell
5e329d41c0 Merge pull request #649 from github/feature/last-updated-dates
feat(website): Add last updated dates for resources
2026-02-04 08:30:02 +11:00
Aaron Powell
9a2dbf276b Move llms.txt generation to Astro endpoint
- Create website/src/pages/llms.txt.ts as an Astro static endpoint
- Remove generateLlmsTxt function from generate-website-data.mjs
- llms.txt is now generated at build time by Astro alongside other pages
2026-02-03 14:51:28 +11:00
Aaron Powell
42f5dc950a Merge pull request #652 from github/combine-llms-txt-generation
Combine llms.txt generation with website data generation
2026-02-03 14:39:16 +11:00
Aaron Powell
07bc765948 Update eng/generate-website-data.mjs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-03 14:36:53 +11:00
Aaron Powell
b0b5bf9339 Merge pull request #651 from github/naming-normalisation
Cleaning up the name of a lot of agents
2026-02-03 14:31:21 +11:00
Aaron Powell
dc1b93354c Combine llms.txt generation with website data generation
- Move llms.txt generation into generate-website-data.mjs
- Remove standalone generate-llms-txt.mjs script
- Remove llms:generate npm script
- llms.txt now outputs to website/public/data/ alongside other generated files
2026-02-03 14:30:19 +11:00
Aaron Powell
9afab17e01 Cleaning up the name of a lot of agents 2026-02-03 14:11:03 +11:00
copilot-swe-agent[bot]
fd509d2f0d Link skills to SKILL.md files instead of directories
Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-03 02:50:08 +00:00
Aaron Powell
a2bd4fda47 Update eng/generate-llms-txt.mjs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-03 12:48:47 +11:00
copilot-swe-agent[bot]
7e23ac9527 Generate llms.txt in website/public for GitHub Pages
Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-03 01:46:18 +00:00
copilot-swe-agent[bot]
2d996d8ab2 Address code review feedback: improve code quality
Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-03 01:37:35 +00:00
copilot-swe-agent[bot]
3d1d2c1aa0 Fix multiline descriptions in llms.txt to be single-line
Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-03 01:36:00 +00:00
copilot-swe-agent[bot]
fbc72656ab Add llms.txt file generation script and output
Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-02-03 01:35:13 +00:00
Aaron Powell
46256b3a50 feat(website): Add last updated dates for agents, prompts, instructions, and skills
- Add git-dates.mjs utility to extract file modification dates from git history
- Include lastUpdated field in JSON data for all resource types
- Display relative time (e.g., '3 days ago') with full date on hover
- Add 'Recently Updated' sort option to agents, prompts, instructions, and skills pages
- Update deploy-website.yml to use fetch-depth: 0 for full git history

CI overhead: ~20-30s additional for full git checkout
2026-02-03 12:14:45 +11:00
Aaron Powell
79b5c649b5 fix: use skillFile path in search index for skills
When searching for skills on the homepage, clicking a result would fail
to load because the search index stored the folder path (e.g., skills/my-skill)
instead of the SKILL.md file path. This caused fetchFileContent() to fail.

Changed path property to use skill.skillFile which contains the correct
path to the SKILL.md file that can be fetched and displayed in the modal.
2026-02-03 11:27:45 +11:00
Aaron Powell
a1da290d10 Refactor code for consistency and readability
- Standardized string quotes to double quotes across multiple files.
- Improved formatting and indentation for better readability.
- Added a function to format multiline text in tools rendering.
- Enhanced dropdown and action button handlers for better event management.
- Updated the theme application logic to initialize on page load.
- Refactored utility functions for consistency and clarity.
- Improved error handling and user feedback in download and share functionalities.
2026-02-02 16:42:22 +11:00
Aaron Powell
b8d93a0344 feat(website): add samples/cookbook page with recipe browser
Integrates the cookbook/ folder into the website's Samples page:

Data Structure:
- Add cookbook/cookbook.yml manifest defining cookbooks and recipes
- Add .schemas/cookbook.schema.json for validation
- Add COOKBOOK_DIR constant to eng/constants.mjs

Build Integration:
- Add generateSamplesData() to generate samples.json from cookbook.yml
- Include recipe variants with file paths for each language
- Add samples count to manifest.json

Website UI:
- Create samples.ts with FuzzySearch, language/tag filtering
- Replace placeholder samples.astro with functional recipe browser
- Recipe cards with language indicators and action buttons
- Language tabs for switching between implementations
- View Recipe/View Example buttons open modal
- GitHub link for each recipe

Features:
- Search recipes by name/description
- Filter by programming language (Node.js, Python, .NET, Go)
- Filter by tags (multi-select with Choices.js)
- 5 recipes across 4 languages = 20 recipe variants
2026-02-02 15:11:12 +11:00
Aaron Powell
23f08bbb63 Merge branch 'main' into experiment/github-pages-website 2026-02-02 14:58:29 +11:00
Aaron Powell
fa6db250a4 Fixing validation script 2026-01-29 14:11:05 +11:00
Aaron Powell
c8d342cc62 Add tools catalog with YAML schema and website page
- Create website/data/tools.yml with 6 tools:
  - Awesome Copilot MCP Server
  - Awesome GitHub Copilot Browser (VS Code extension)
  - APM - Agent Package Manager (CLI)
  - Workspace Architect (npm CLI)
  - Prompt Registry (VS Code extension)
  - GitHub Node for Visual Studio

- Add .schemas/tools.schema.json for YAML validation
- Update eng/generate-website-data.mjs to generate tools.json
- Add parseYamlFile() to eng/yaml-parser.mjs
- Refactor tools.astro to use external TypeScript module
- Create website/src/scripts/pages/tools.ts with:
  - FuzzySearch integration for search
  - Category filtering
  - Copy configuration functionality
2026-01-29 13:48:42 +11:00
Aaron Powell
f76f63866a fix: parse featured field from display.featured in collections
The collection YAML files have featured nested under display object,
not at the top level. Updated generate-website-data.mjs to check both
data.featured and data.display?.featured.
2026-01-28 16:56:41 +11:00
Aaron Powell
aa42998e29 chore: rename website-astro to website, update gitignore
- Rename website-astro/ to website/
- Add website/dist/ and website/.astro/ to gitignore
- Update generate-website-data.mjs output path
2026-01-28 16:42:32 +11:00
Aaron Powell
875219812e Add multi-select filters, light/dark theme, and skill ZIP downloads
- Add multi-select dropdown component for all filter fields
- Implement light/dark theme toggle with system preference detection
- Add client-side ZIP download for skills using JSZip
- Include file lists in skills metadata for download feature
- Add title tooltips to multi-select options for long values
- Update all pages with consistent theme toggle in header
2026-01-28 14:59:19 +11:00
Aaron Powell
f8829be835 feat: Add GitHub Pages website for browsing resources
- Add static website with pages for agents, prompts, instructions, skills, and collections
- Implement client-side fuzzy search across all resources
- Add file viewer modal with copy-to-clipboard and install-to-editor functionality
- Add Tools page for MCP server and future tools
- Add Samples page placeholder for copilot-sdk cookbook migration
- Add metadata JSON generation script (eng/generate-website-data.mjs)
- Add GitHub Actions workflow for automated Pages deployment
- Update package.json with website build scripts
2026-01-28 13:43:41 +11:00
Aaron Powell
92dbe54cc6 Cleaning up some legacy around chat modes 2026-01-23 10:51:55 +11:00
Aaron Powell
a2525e3112 fix: enhance markdown table cell formatting for descriptions in README and skills 2026-01-23 10:06:44 +11:00
Ashley Childress
dc5a0e0735 Merge branch 'github:main' into add-custom-contributors 2026-01-15 22:14:08 -05:00
Ashley Childress
80886dd7cc 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 <copilot@github.com>
Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com>
2026-01-15 08:54:51 -05:00
Ashley Childress
f9e981e4cd 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 <copilot@github.com>
Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com>
2026-01-15 08:54:51 -05:00
Ashley Childress
dcaff75b1a 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 <copilot@github.com>
Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com>
2026-01-15 08:54:51 -05:00
copilot-swe-agent[bot]
7ad7653270 Fix confusing instruction file path in README
Updated the instructionsUsage template in constants.mjs to clarify that task-specific instruction files should be created in the .github/instructions/ folder with the pattern *.instructions.md (e.g., .github/instructions/my-csharp-rules.instructions.md), instead of the confusing original wording that mentioned both .github/.instructions.md files and .github/instructions folder.

Co-authored-by: aaronpowell <434140+aaronpowell@users.noreply.github.com>
2026-01-11 22:13:39 +00:00
Matt Soucoup
9affe6b06a Merge branch 'main' into add-custom-contributors 2026-01-07 15:01:11 -10:00
Harald Kirschner
f548156161 Fix: Normalize path separators in skill bundled assets to forward slashes
This fixes cross-platform compatibility issues where skills created on Windows
would have backslashes in bundled asset paths, causing CI failures on Linux.

The build script now normalizes all path separators to forward slashes (/)
regardless of the platform where the skill was created.

Fixes #502
2026-01-05 09:44:52 -08:00
Ashley Childress
d9d99cf3aa 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 <copilot@github.com>
Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com>
2025-12-19 23:12:56 -05:00
Ashley Childress
1322aa2dde 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 <copilot@github.com>
Signed-off-by: Ashley Childress <6563688+anchildress1@users.noreply.github.com>
2025-12-19 20:43:27 -05:00
Tom Meschter (from Dev Box)
d688be1b0b Look for assets in subdirectories
Fixes #503.

When running `npm start` the README.skills.md file will be updated to
include any newly-added skills. This includes the name and description
from the skill's frontmatter, but also a list of assets in the skill--
that is, files other than SKILL.md.

However, the code in yaml-parser.mjs to enumerate the asset files only
looks in the immediate skill directory, not any subdirectories. Those
files will be missing from README.skills.md.

Here we update yaml-parser.mjs to recurse through the subdirectories as
well.
2025-12-19 13:25:18 -08:00
Harald Kirschner
9c69496a14 Final skills URLs 2025-12-18 09:53:16 -08:00
Aaron Powell
2b19cc3a3d Skills rendering in collections 2025-12-18 11:05:39 +11:00
Harald Kirschner
88956de414 New awesome agent primitive 2025-12-17 15:27:05 -08:00
Aaron Powell
e042a641b9 Refactor: Use MCP registry API as source of truth (#492)
- Replace static github-mcp-registry.json with live API calls
- Fetch from https://api.mcp.github.com/v0.1/servers/ with pagination support
- Extract displayName from GitHub metadata for better matching
- Implement smart matching logic:
  * Case-insensitive comparison
  * Match against both displayName and full name
  * Strip common suffixes like -mcp-server for pattern matching
- Make build process async to support API calls
- Cache registry data to only hit API once per build run
- Remove obsolete github-mcp-registry.json file

Benefits:
- No more manual updates to registry data
- Always uses latest MCP registry information
- Improved server name matching resilience
- Successfully loads all 54 servers from registry
2025-12-16 11:51:26 +11:00
Aaron Powell
b81a3dc5a4 Updated the MCP registry list and fixed some links (#461) 2025-12-05 10:36:38 +11:00