From code-apps-preview
Adds Excel Online (Business) connector to Power Apps code apps via CLI for reading/writing Excel tables from OneDrive or SharePoint.
npx claudepluginhub microsoft/power-platform-skills --plugin code-apps-previewThis skill is limited to using the following tools:
**๐ Shared Instructions: [shared-instructions.md](${CLAUDE_PLUGIN_ROOT}/shared/shared-instructions.md)** - Cross-cutting concerns.
Adds OneDrive for Business connector to Power Apps code apps for file listing, uploading, downloading, and management.
Scaffolds Vite + React + TypeScript project for Power Apps Code Apps with PAC CLI, SDK integration, connectors, configs, scripts, and sample authenticated UI.
Integrates Power Pages Web API into frontend code sites for Dataverse tables, implementing API clients, CRUD operations, permissions setup, and deployment.
Share bugs, ideas, or general feedback.
๐ Shared Instructions: shared-instructions.md - Cross-cutting concerns.
Check for memory-bank.md per shared-instructions.md.
Ask the user:
First, find the connection ID (see connector-reference.md):
Run the /list-connections skill. Find the Excel Online (Business) connection in the output. If none exists, direct the user to create one using the environment-specific Connections URL โ construct it from the active environment ID in context (from power.config.json or a prior step): https://make.powerapps.com/environments/<environment-id>/connections โ + New connection โ search for the connector โ Create.
Excel Online is a tabular datasource -- requires -c (connection ID), -d (drive), and -t (table name in workbook):
# OneDrive workbook
pwsh -NoProfile -Command "pac code add-data-source -a excelonlinebusiness -c <connection-id> -d 'me' -t 'Table1'"
# SharePoint workbook -- dataset is the document library path
pwsh -NoProfile -Command "pac code add-data-source -a excelonlinebusiness -c <connection-id> -d 'sites/your-site' -t 'Table1'"
Run for each table the user needs.
AddRowIntoTable -- adds a row to an Excel table:
// OneDrive workbook
await ExcelOnlineBusinessService.AddRowIntoTable({
source: "me",
drive: "me",
file: "MyWorkbook.xlsx",
table: "Table1",
body: { column1: "value1", column2: "value2" } // Flat object, NO "items" wrapper
});
// SharePoint workbook
await ExcelOnlineBusinessService.AddRowIntoTable({
source: "sites/your-site",
drive: "drive-id",
file: "SharedWorkbook.xlsx",
table: "Table1",
body: { column1: "value1", column2: "value2" }
});
Key points:
source: "me" and drive: "me" for OneDrive personal filesbody is a flat key-value object matching column headers -- do NOT wrap in { items: ... }Use Grep to find specific methods in src/generated/services/ExcelOnlineBusinessService.ts (generated files can be very large -- see connector-reference.md).
npm run build
Fix TypeScript errors before proceeding. Do NOT deploy yet.
Update memory-bank.md with: connector added, workbook/table configured, build status.