|
| 1 | +# Power Platform Architect Plugin |
| 2 | + |
| 3 | +A plugin for GitHub Copilot that acts as a **Senior Solution Architect for the Microsoft Power Platform**. Give it business requirements, use case descriptions, or even raw meeting transcripts, and it produces a tailored technical architecture, complete with component recommendations and an optional Mermaid.js diagram. |
| 4 | + |
| 5 | +## Installation |
| 6 | +```bash |
| 7 | +copilot plugin install power-platform-architect@awesome-copilot |
| 8 | +``` |
| 9 | + |
| 10 | +## Demo |
| 11 | +*Click the image below for a quick demo of this agent skill!* |
| 12 | + |
| 13 | +[](https://youtu.be/tn4jEpZ6jiw) |
| 14 | + |
| 15 | +## What's Included |
| 16 | +### Skills |
| 17 | +| Skill | Description | |
| 18 | +| --- | --- | |
| 19 | +| `power-platform-architect` | Generate a functional Power Platform architecture from business requirements | |
| 20 | + |
| 21 | +## How It Works |
| 22 | +The skill guides the agent through a structured, multi-phase process (though the output is presented seamlessly to the user): |
| 23 | + |
| 24 | +1. **Requirements Analysis** — Scans the provided material for stakeholders, data sources, security needs, and functional asks. Documents the current ("As-Is") process and identifies friction points. |
| 25 | +2. **Follow-Up Questions** — The agent asks clarifying questions to fill gaps (e.g., "Is this for mobile field workers or desktop back-office users?", "What triggers this process?"). If the user can't answer, it makes reasonable assumptions. |
| 26 | +3. **Component Recommendation** — Selects only the Power Platform components that serve a real purpose in the solution and explains the role each one plays. It follows a built-in decision framework (e.g., external access → Power Pages, data storage → Dataverse, conversational interface → Copilot Studio). |
| 27 | +4. **Architecture Narrative** — Delivers a business-process-oriented architecture recommendation that tells the "story" of how data flows through the system, which components handle each step, and which user audiences interact at each point. |
| 28 | +5. **Architecture Diagram (Optional)** — On request, generates a Mermaid.js diagram visualizing the architecture, saves it to a `.md` file, and directs the user to [mermaid.ai/live/edit](https://mermaid.ai/live/edit) to render it. |
| 29 | + |
| 30 | +All you have to do: **give a problem statement**! You can even supply it with a meeting transcript in which a problem/need was described: |
| 31 | + |
| 32 | + |
| 33 | + |
| 34 | +The skill covers the full Power Platform ecosystem: **Power Apps** (Canvas, Model-Driven, Code Apps), **Power Pages**, **Copilot Studio**, **Power Automate** (Cloud & Desktop Flows), **AI Builder**, **Dataverse**, **Power BI**, **Connectors**, and **Gateways**. |
| 35 | + |
| 36 | +## Example Prompts |
| 37 | +- *"Review this transcript from our discovery session and tell me how to build it."* |
| 38 | +- *"What Power Platform components should I use for this HR onboarding use case?"* |
| 39 | +- *"Generate an architecture diagram for a Power Apps solution that connects to SQL and uses an approval flow."* |
| 40 | + |
| 41 | +## Example Output Architecture Diagram (rendered in [mermaid](https://mermaid.js.org/)) |
| 42 | + |
| 43 | + |
| 44 | +## Example Output Architecture Summary |
| 45 | +``` |
| 46 | +Solution Architecture — End-to-End Process |
| 47 | +
|
| 48 | +1. Application Submission (Residents & Contractors → Power Pages) |
| 49 | +
|
| 50 | +Residents and solar contractors visit the Evergreen County Solar Permit Portal (Power Pages). The portal presents a |
| 51 | +guided application form with required fields, document upload slots (site plan, electrical diagrams, signed |
| 52 | +checklist), and fee acknowledgment. Built-in form validation prevents submission if mandatory fields are blank or |
| 53 | +required attachments are missing — this is the first line of defense against incomplete applications. |
| 54 | +
|
| 55 | +For walk-in or mailed applications, Marcus's team enters the data directly into the Model-Driven App, which enforces |
| 56 | +the same required-field rules. |
| 57 | +
|
| 58 | +All submitted applications land in Dataverse with a status of Submitted. |
| 59 | +
|
| 60 | +2. Automated Completeness Check (Power Automate + AI Builder) |
| 61 | +
|
| 62 | +Upon submission, a Power Automate cloud flow (automated trigger: new record created) fires immediately. It performs |
| 63 | +a programmatic completeness check — verifying all required attachments are present, fee acknowledgment is recorded, |
| 64 | +and applicant details are complete. |
| 65 | +
|
| 66 | +For uploaded documents, AI Builder's Document Processing model scans the site plan and signed forms to verify that |
| 67 | +signature fields are not blank and key data areas are populated. This catches the subtle defects Marcus described — |
| 68 | +"referenced but not included" attachments and illegible or unsigned documents. |
| 69 | +
|
| 70 | + - If complete: The permit status advances to Under Review and the flow routes it to the assigned plan reviewer |
| 71 | +(Jim's team). |
| 72 | + - If incomplete: The status is set to Incomplete, and Power Automate sends an automated email notification to the |
| 73 | +applicant via the Outlook connector detailing exactly what's missing. The applicant can log back into the Power |
| 74 | +Pages portal to upload corrections. No staff time is consumed. |
| 75 | +
|
| 76 | +3. Plan Review & Approval (Jim's Team → Model-Driven App) |
| 77 | +
|
| 78 | +The assigned plan reviewer opens the permit in the Model-Driven App, which surfaces all applicant data, documents, |
| 79 | +and the AI validation results in a single view. The reviewer evaluates the application and either: |
| 80 | +
|
| 81 | + - Approves → Power Automate advances the status to Approved – Pending Inspection and notifies the applicant via |
| 82 | +email that their permit is approved and an inspection will be scheduled. |
| 83 | + - Requests Revisions → Status set to Revisions Requested, the applicant is emailed with specific feedback, and they |
| 84 | + resubmit through the portal. |
| 85 | + - Denies → Status set to Denied with documented reasoning; applicant is notified. |
| 86 | +
|
| 87 | +4. Inspection Scheduling & Field Work (Sarah's Team → Canvas App Mobile) |
| 88 | +
|
| 89 | +Once a permit reaches Approved – Pending Inspection, Marcus's team schedules an inspection date via the Model-Driven |
| 90 | +App. The applicant is notified of the date through an automated email. |
| 91 | +
|
| 92 | +Before leaving the office, Sarah opens the Canvas App on her phone/tablet and reviews her day's inspection queue. |
| 93 | +Each permit shows its live status — if a fee issue surfaced or the applicant requested a reschedule, Sarah sees it |
| 94 | +immediately and can reroute to a ready site. No more wasted 40-minute drives. |
| 95 | +
|
| 96 | +On-site, Sarah uses the Canvas App to: |
| 97 | +
|
| 98 | + - Complete a structured inspection checklist (roof mounts, junction boxes, conduit, serial plates) |
| 99 | + - Capture photos directly through the app — each photo is automatically linked to the permit record in Dataverse at |
| 100 | + the moment it's taken (no more manual matching from a memory card) |
| 101 | + - Record pass/fail results and notes |
| 102 | +
|
| 103 | +Results sync to Dataverse in real time. The moment Sarah submits, the office has the inspection outcome — not days |
| 104 | +later. |
| 105 | +
|
| 106 | +5. Permit Issuance or Corrective Action (Power Automate) |
| 107 | +
|
| 108 | +When Sarah submits inspection results: |
| 109 | +
|
| 110 | + - Pass → Power Automate sets status to Permit Issued, generates a confirmation, and notifies the applicant that |
| 111 | +their solar installation is approved. |
| 112 | + - Fail → Status set to Inspection Failed – Corrections Required, with Sarah's notes and photos attached. The |
| 113 | +applicant is notified of required corrections and can schedule a re-inspection through the portal. |
| 114 | +
|
| 115 | +6. Self-Service Status Tracking (Residents & Contractors → Power Pages) |
| 116 | +
|
| 117 | +At any point in this process, residents and contractors can log into the Power Pages portal and see their permit's |
| 118 | +current status, what stage it's in, whether payment has been recorded, and what the next step is. This directly |
| 119 | +addresses the top three phone questions Marcus cited: |
| 120 | +
|
| 121 | + 1. ✅ "Did you receive my check?" → Payment status visible on portal |
| 122 | + 2. ✅ "What is the status of my permit?" → Live stage tracking |
| 123 | + 3. ✅ "When is the inspector coming?" → Scheduled date displayed |
| 124 | +
|
| 125 | +7. Live Analytics & Audit Readiness (Elena & Jim → Power BI) |
| 126 | +
|
| 127 | +A Power BI dashboard connects directly to Dataverse and provides: |
| 128 | +
|
| 129 | + - Time-to-Permit metrics (average, median, by stage) |
| 130 | + - Backlog heatmap — how many permits are sitting in each stage right now |
| 131 | + - Inspection throughput — inspections completed per day/week, pass/fail rates |
| 132 | + - "Green Energy" permit counts by quarter — the exact metric the County Auditor requests |
| 133 | + - Incomplete application rate trends — tracking whether the portal validation is reducing the 40% defect rate |
| 134 | +
|
| 135 | +Elena can answer Board and Auditor questions on demand with live data — no staff time diverted to manual counting. |
| 136 | +
|
| 137 | +------------------------------------------------------------------------------------------------------------------- |
| 138 | +
|
| 139 | +Summary |
| 140 | +
|
| 141 | +This architecture replaces the disconnected paper-based process with a single integrated data backbone (Dataverse) |
| 142 | +that every stakeholder touches through the right interface for their role: |
| 143 | +
|
| 144 | +┌──────────────────────────┬─────────────────────┬──────────────────────────┐ |
| 145 | +│ Audience │ Interface │ Purpose │ |
| 146 | +├──────────────────────────┼─────────────────────┼──────────────────────────┤ |
| 147 | +│ Residents & Contractors │ Power Pages Portal │ Submit, track, resubmit │ |
| 148 | +├──────────────────────────┼─────────────────────┼──────────────────────────┤ |
| 149 | +│ Marcus (Intake) │ Model-Driven App │ Review, schedule, manage │ |
| 150 | +├──────────────────────────┼─────────────────────┼──────────────────────────┤ |
| 151 | +│ Jim (Planning/Review) │ Model-Driven App │ Approve/reject permits │ |
| 152 | +├──────────────────────────┼─────────────────────┼──────────────────────────┤ |
| 153 | +│ Sarah (Field Inspectors) │ Canvas App (Mobile) │ Inspect, capture, submit │ |
| 154 | +├──────────────────────────┼─────────────────────┼──────────────────────────┤ |
| 155 | +│ Elena & Jim (Leadership) │ Power BI Dashboards │ Monitor, report, audit │ |
| 156 | +└──────────────────────────┴─────────────────────┴──────────────────────────┘ |
| 157 | +
|
| 158 | +The expected impact directly addresses Elena's four strategic needs and Jim's prediction: cut the backlog in half |
| 159 | +without hiring a single new person. |
| 160 | +``` |
| 161 | + |
| 162 | +## Source |
| 163 | +Created by [Tim Hanewich](https://timh.ai), Senior AI Solution Engineer at Microsoft. |
| 164 | + |
| 165 | +## License |
| 166 | +MIT |
0 commit comments