{ "cookbooks": [ { "id": "copilot-sdk", "name": "GitHub Copilot SDK", "description": "Ready-to-use recipes for building with the GitHub Copilot SDK across multiple languages", "path": "cookbook/copilot-sdk", "featured": true, "languages": [ { "id": "nodejs", "name": "Node.js / TypeScript", "icon": "🟢", "extension": ".ts" }, { "id": "python", "name": "Python", "icon": "🐍", "extension": ".py" }, { "id": "dotnet", "name": ".NET (C#)", "icon": "🟣", "extension": ".cs" }, { "id": "go", "name": "Go", "icon": "🔵", "extension": ".go" } ], "recipes": [ { "id": "error-handling", "name": "Error Handling", "description": "Handle errors gracefully including connection failures, timeouts, and cleanup", "tags": [ "errors", "basics", "reliability" ], "variants": { "nodejs": { "doc": "cookbook/copilot-sdk/nodejs/error-handling.md", "example": "cookbook/copilot-sdk/nodejs/recipe/error-handling.ts" }, "python": { "doc": "cookbook/copilot-sdk/python/error-handling.md", "example": null }, "dotnet": { "doc": "cookbook/copilot-sdk/dotnet/error-handling.md", "example": "cookbook/copilot-sdk/dotnet/recipe/error-handling.cs" }, "go": { "doc": "cookbook/copilot-sdk/go/error-handling.md", "example": "cookbook/copilot-sdk/go/recipe/error-handling.go" } } }, { "id": "multiple-sessions", "name": "Multiple Sessions", "description": "Manage multiple independent conversations simultaneously", "tags": [ "sessions", "advanced", "concurrency" ], "variants": { "nodejs": { "doc": "cookbook/copilot-sdk/nodejs/multiple-sessions.md", "example": "cookbook/copilot-sdk/nodejs/recipe/multiple-sessions.ts" }, "python": { "doc": "cookbook/copilot-sdk/python/multiple-sessions.md", "example": null }, "dotnet": { "doc": "cookbook/copilot-sdk/dotnet/multiple-sessions.md", "example": "cookbook/copilot-sdk/dotnet/recipe/multiple-sessions.cs" }, "go": { "doc": "cookbook/copilot-sdk/go/multiple-sessions.md", "example": "cookbook/copilot-sdk/go/recipe/multiple-sessions.go" } } }, { "id": "managing-local-files", "name": "Managing Local Files", "description": "Organize files by metadata using AI-powered grouping strategies", "tags": [ "files", "organization", "ai-powered" ], "variants": { "nodejs": { "doc": "cookbook/copilot-sdk/nodejs/managing-local-files.md", "example": "cookbook/copilot-sdk/nodejs/recipe/managing-local-files.ts" }, "python": { "doc": "cookbook/copilot-sdk/python/managing-local-files.md", "example": null }, "dotnet": { "doc": "cookbook/copilot-sdk/dotnet/managing-local-files.md", "example": "cookbook/copilot-sdk/dotnet/recipe/managing-local-files.cs" }, "go": { "doc": "cookbook/copilot-sdk/go/managing-local-files.md", "example": "cookbook/copilot-sdk/go/recipe/managing-local-files.go" } } }, { "id": "pr-visualization", "name": "PR Visualization", "description": "Generate interactive PR age charts using GitHub MCP Server", "tags": [ "github", "visualization", "mcp" ], "variants": { "nodejs": { "doc": "cookbook/copilot-sdk/nodejs/pr-visualization.md", "example": "cookbook/copilot-sdk/nodejs/recipe/pr-visualization.ts" }, "python": { "doc": "cookbook/copilot-sdk/python/pr-visualization.md", "example": null }, "dotnet": { "doc": "cookbook/copilot-sdk/dotnet/pr-visualization.md", "example": "cookbook/copilot-sdk/dotnet/recipe/pr-visualization.cs" }, "go": { "doc": "cookbook/copilot-sdk/go/pr-visualization.md", "example": "cookbook/copilot-sdk/go/recipe/pr-visualization.go" } } }, { "id": "persisting-sessions", "name": "Persisting Sessions", "description": "Save and resume sessions across restarts", "tags": [ "sessions", "persistence", "state-management" ], "variants": { "nodejs": { "doc": "cookbook/copilot-sdk/nodejs/persisting-sessions.md", "example": "cookbook/copilot-sdk/nodejs/recipe/persisting-sessions.ts" }, "python": { "doc": "cookbook/copilot-sdk/python/persisting-sessions.md", "example": null }, "dotnet": { "doc": "cookbook/copilot-sdk/dotnet/persisting-sessions.md", "example": "cookbook/copilot-sdk/dotnet/recipe/persisting-sessions.cs" }, "go": { "doc": "cookbook/copilot-sdk/go/persisting-sessions.md", "example": "cookbook/copilot-sdk/go/recipe/persisting-sessions.go" } } } ] } ], "totalRecipes": 5, "totalCookbooks": 1, "filters": { "languages": [ "dotnet", "go", "nodejs", "python" ], "tags": [ "advanced", "ai-powered", "basics", "concurrency", "errors", "files", "github", "mcp", "organization", "persistence", "reliability", "sessions", "state-management", "visualization" ] } }