Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions plugins/canvas-apps/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "canvas-apps",
"version": "2.2.0",
"version": "2.1.1",
"description": "Build Power Apps Canvas Apps using the Canvas Authoring MCP server.",
"author": {
"name": "Microsoft",
Expand All @@ -9,7 +9,6 @@
"homepage": "https://github.com/microsoft/power-platform-skills/",
"repository": "https://github.com/microsoft/power-platform-skills/",
"license": "MIT",
"hooks": "hooks/hooks.json",
"keywords": [
"canvas-apps",
"power-apps",
Expand Down
3 changes: 1 addition & 2 deletions plugins/canvas-apps/.plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "canvas-apps",
"version": "2.2.0",
"version": "2.1.1",
"description": "Build Power Apps Canvas Apps using the Canvas Authoring MCP server.",
"author": {
"name": "Microsoft",
Expand All @@ -9,7 +9,6 @@
"homepage": "https://github.com/microsoft/power-platform-skills/",
"repository": "https://github.com/microsoft/power-platform-skills/",
"license": "MIT",
"hooks": "hooks/hooks.json",
"keywords": [
"canvas-apps",
"power-apps",
Expand Down
19 changes: 1 addition & 18 deletions plugins/canvas-apps/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,10 @@ claude --plugin-dir /path/to/plugins/canvas-apps
## Architecture

```
.plugin/plugin.json ← Open Plugins metadata and Copilot hook path
.plugin/plugin.json ← Open Plugins metadata (name, version, keywords)
.mcp.json ← MCP server config (canvas-authoring, auto-registered)
AGENTS.md ← Plugin guidance for AI agents (this file)
CLAUDE.md ← Symlink → AGENTS.md
hooks/
hooks.json ← Claude and Copilot prompt hook registration
inject-sync-reminder.cs ← File-based .NET app that injects a cross-host sync reminder
references/
TechnicalGuide.md ← YAML syntax, control selection, layout strategies, Power Fx patterns
DesignGuide.md ← Aesthetic guidelines, anti-patterns, design process
Expand Down Expand Up @@ -78,20 +75,6 @@ The `canvas-authoring` MCP server exposes the following tools:
| `list_data_sources` | Lists all available data sources in the current authoring session |
| `sync_canvas` | Syncs the current coauthoring session state from the server to a local directory, writing all YAML files |

## Hooks

Hook registration is centralized in `hooks/hooks.json`. It registers Claude Code's
`UserPromptSubmit` event and Copilot's `userPromptTransformed` event. Both invoke the
file-based .NET app at `hooks/inject-sync-reminder.cs` with `dotnet run --file`; the app
emits `modifiedTransformedPrompt` for Copilot and
`hookSpecificOutput.additionalContext` for Claude Code. This avoids requiring Node.js at
plugin runtime. Both paths remind the agent to call `sync_canvas` (targeting the app's
working directory) before acting, so it never edits stale local `.pa.yaml` files. The
reminder is conditional in wording — the agent skips the sync when no coauthoring session
is active or the request is unrelated to a canvas app. Keep the Copilot event name
lowercase: Copilot ignores the PascalCase variant, while Claude Code ignores the
Copilot-only event and continues loading `UserPromptSubmit`.

## Prerequisites

Before the MCP server will start, you need:
Expand Down
27 changes: 0 additions & 27 deletions plugins/canvas-apps/hooks/hooks.json

This file was deleted.

63 changes: 0 additions & 63 deletions plugins/canvas-apps/hooks/inject-sync-reminder.cs

This file was deleted.

16 changes: 16 additions & 0 deletions plugins/canvas-apps/skills/generate-canvas-app/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
name: generate-canvas-app
version: 2.0.0
description: "[DEPRECATED — use canvas-app instead] Generate a complete Power Apps canvas app."
author: Microsoft Corporation
user-invocable: true
allowed-tools: Read
---

# ⚠️ Deprecated — Use `canvas-app`

This skill has been replaced by the unified **`canvas-app`** skill, which handles both
creating and editing canvas apps.

Please use `/canvas-app` instead. It will automatically detect that the app is empty and
run the full generation workflow.
Loading