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.

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-pptb and picking an appropriate framework
  • Fixing package.json and pptb.config.json so they pass pptb-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 agents block and invokeHeadless entry point covered in Agent Integration

Prerequisites

  • Node.js and npm — the workflow runs yo, generator-pptb, and @pptb/types (which provides the pptb-validate CLI). 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.md is 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 up dataverseAPI calls, and writes a manifest that passes pptb-validate.
  • "My tool's package.json keeps failing pptb-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 / returnData without re-scaffolding anything.
  • "Expose my tool to an agent via MCP" → adds the agents block and an invokeHeadless entry 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:

FileCovers
references/manifest.mdpackage.json and pptb.config.json schema and validation rules
references/apis.mdtoolboxAPI / dataverseAPI / powerplatformAPI quick reference
references/build-and-csp.mdIIFE bundling gotchas and CSP configuration
references/invocation.mdInter-tool invocation (launchTool / getLaunchContext / returnData)
references/agent-integration.mdMCP/agent exposure, invokeHeadless, execution modes
references/debugging-publishing.mdThe dev-watch loop, the pptb-validate CLI, npm publish, and registry submission

Scope and Limitations

  • The skill scaffolds via generator-pptb (yo pptb) only.
  • sample-tools is intentionally not used as a scaffold source — it is considered outdated by the maintainers.
  • Power-Maverick/PPTB-Tools is referenced only as a pattern/convention example for real, shipped tools — never as a scaffolding template.

Next Steps

Was this page helpful?