AI Agent Skills
pptb-agent-skills is a companion repository that teaches AI coding assistants — Claude Code, Cowork, and GitHub Copilot — how to build tools for Power Platform ToolBox. Instead of relying on generic web-app boilerplate, the skill is grounded directly in these docs and in the generator-pptb scaffolding tool.
Overview
The repository ships a single Skill called tool-dev, built on the open SKILL.md standard (YAML frontmatter + Markdown body). Claude Skills and GitHub Copilot Agent Skills both read the same file, so there is no separate entry point per assistant.
Once the skill is installed in your project, you can describe what you want in plain language — scaffold a tool, fix a failing manifest, wire up inter-tool invocation, expose a tool to agents — and the assistant follows the workflow documented in the skill instead of guessing.
This skill is not yet tested end-to-end against real build prompts. Try it against a couple of realistic prompts (see Using the Skill) before relying on it in a pipeline or generator.
What the Skill Teaches
The tool-dev skill walks an assistant through the same lifecycle described throughout this Tool Development section:
- Scaffolding a new tool with
yo pptb/generator-pptband picking an appropriate framework - Fixing
package.jsonandpptb.config.jsonso they passpptb-validate, using the same rules documented in Package Manifest - Wiring up inter-tool invocation (
launchTool,getLaunchContext,returnData) as described in Inter-Tool Invocation - Exposing a tool to AI assistants over MCP — the
agentsblock andinvokeHeadlessentry point covered in Agent Integration
The agent-integration workflow the skill describes can be ahead of what a
given installed desktop-app version actually ships. The skill flags this
inline; treat generated agents/invokeHeadless code the same way you would
treat it if you wrote it by hand — validate it against your installed PPTB
version.
Prerequisites
- Node.js and npm — the workflow runs
yo,generator-pptb, and@pptb/types(which provides thepptb-validateCLI). The skill does not install these for you; the assistant installs them per-project as it works through the steps. - PPTB desktop app installed locally if you want the assistant to exercise the debug loop (
dev-watch→ Load Local Tool) described in Debugging Your Tool. Not required just to scaffold or validate a tool. - Claude Code / Cowork or GitHub Copilot with project or repo skills enabled, so the deployed
SKILL.mdis actually picked up.
Installing the Skill
Clone or download pptb-agent-skills, then copy the tool-dev/ folder into your project in the location your assistant expects.
Claude Code / Cowork
cp -r tool-dev/ <project>/.claude/skills/pptb-tool-dev/
GitHub Copilot
cp -r tool-dev/ <repo>/.github/skills/pptb-tool-dev/
Both assistants read the same SKILL.md and references/ folder directly from either location — there is nothing agent-specific to configure beyond where the folder lives.
Using the Skill
Once deployed, ask your assistant naturally. The description field in tool-dev/SKILL.md is what triggers the skill, so no special command syntax is required. A few example prompts and what the assistant should do in response:
- "Scaffold a PPTB tool that lets me bulk-update account records" → runs
yo pptb, picks a framework, wires updataverseAPIcalls, and writes a manifest that passespptb-validate. - "My tool's
package.jsonkeeps failingpptb-validate, here's the file" → skips scaffolding, reads the actual file, and fixes it against the manifest schema. - "Make my tool launchable from another PPTB tool" → wires up
launchTool/getLaunchContext/returnDatawithout re-scaffolding anything. - "Expose my tool to an agent via MCP" → adds the
agentsblock and aninvokeHeadlessentry point.
Reference Files
SKILL.md is deliberately short. It defers to a references/ folder that is loaded on demand, so the assistant only pulls in the documentation it needs for the task at hand:
| File | Covers |
|---|---|
references/manifest.md | package.json and pptb.config.json schema and validation rules |
references/apis.md | toolboxAPI / dataverseAPI / powerplatformAPI quick reference |
references/build-and-csp.md | IIFE bundling gotchas and CSP configuration |
references/invocation.md | Inter-tool invocation (launchTool / getLaunchContext / returnData) |
references/agent-integration.md | MCP/agent exposure, invokeHeadless, execution modes |
references/debugging-publishing.md | The dev-watch loop, the pptb-validate CLI, npm publish, and registry submission |
If you maintain a tool generator or template, you can drop manifest.md and
build-and-csp.md directly into a scaffolded project (for example as
.ai-context/) so an assistant working inside an already-generated tool has
the manifest and CSP rules on hand without loading the full skill.
Scope and Limitations
- The skill scaffolds via
generator-pptb(yo pptb) only. sample-toolsis intentionally not used as a scaffold source — it is considered outdated by the maintainers.Power-Maverick/PPTB-Toolsis referenced only as a pattern/convention example for real, shipped tools — never as a scaffolding template.