mirror of
https://github.com/github/awesome-copilot.git
synced 2026-02-20 02:15:12 +00:00
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.
This commit is contained in:
@@ -158,6 +158,8 @@ function getDisplayName(filePath, kind) {
|
||||
return basename.replace(".agent.md", "");
|
||||
} else if (kind === "instruction") {
|
||||
return basename.replace(".instructions.md", "");
|
||||
} else if (kind === "hook") {
|
||||
return basename.replace(".hook.md", "");
|
||||
} else if (kind === "skill") {
|
||||
return path.basename(filePath);
|
||||
}
|
||||
@@ -221,6 +223,23 @@ function generateReadme(collection, items) {
|
||||
lines.push("");
|
||||
}
|
||||
|
||||
// Hooks
|
||||
const hooks = items.filter((item) => item.kind === "hook");
|
||||
if (hooks.length > 0) {
|
||||
lines.push("### Hooks");
|
||||
lines.push("");
|
||||
lines.push("| Hook | Description | Event |");
|
||||
lines.push("|------|-------------|-------|");
|
||||
for (const item of hooks) {
|
||||
const name = getDisplayName(item.path, "hook");
|
||||
const description =
|
||||
item.frontmatter?.description || item.frontmatter?.name || name;
|
||||
const event = item.frontmatter?.event || "N/A";
|
||||
lines.push(`| \`${name}\` | ${description} | ${event} |`);
|
||||
}
|
||||
lines.push("");
|
||||
}
|
||||
|
||||
// Skills
|
||||
const skills = items.filter((item) => item.kind === "skill");
|
||||
if (skills.length > 0) {
|
||||
|
||||
Reference in New Issue
Block a user