Skip to content

Conversation

@zhaodongwang-msft
Copy link
Collaborator

Add Claude Code Skill for the repo. SKILL.md is a rewrite of README.md to be more LLM centric. have to add 2 copies: 1 for direct discovery within the repo scope and another for proper installation with pypi. also have some small fixes for README and client.py descriptions

This pull request introduces a Claude Code skill for the PowerPlatform Dataverse Client Python SDK, providing automated best practices, context-aware suggestions, and improved developer guidance when working with Dataverse operations. The main changes include adding a skill definition and installer, updating documentation to explain and support the skill, and modifying packaging to distribute the skill and installer CLI.

Claude Skill Integration and Distribution

  • Added a comprehensive skill definition and guide in .claude/skills/dataverse-sdk/SKILL.md, detailing SDK usage patterns, error handling, and best practices for Dataverse operations.
  • Implemented a skill installer CLI in src/PowerPlatform/Dataverse/_skill_installer.py, allowing users to install, uninstall, and check the status of the Claude skill globally via the dataverse-install-claude-skill command.
  • Updated pyproject.toml to register the installer CLI as a script and include the skill file in package data, ensuring the skill is distributed with the SDK. [1] [2]

Documentation Improvements

  • Enhanced README.md to explain how to install and use the Claude skill, its benefits, and where to find the skill definition. Added instructions for both pip installs and development from source.
  • Clarified usage of bulk delete operations and added examples for table inspection and listing in the documentation. [1] [2]

Copilot AI review requested due to automatic review settings January 20, 2026 18:55
@zhaodongwang-msft zhaodongwang-msft requested a review from a team as a code owner January 20, 2026 18:55
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds Claude Code skill integration to the PowerPlatform Dataverse Client Python SDK. The skill provides LLM-powered guidance, best practices, and context-aware suggestions when working with the SDK through Claude Code.

Changes:

  • Added a comprehensive Claude Code skill definition (SKILL.md) with SDK usage patterns, error handling guidance, and best practices
  • Implemented a CLI installer tool (dataverse-install-claude-skill) to manage global skill installation
  • Updated packaging configuration to distribute the skill and register the installer command
  • Enhanced documentation in README.md with alias information for column types in client.py

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
.claude/skills/dataverse-sdk/SKILL.md New skill definition file for repo-level Claude Code discovery
src/PowerPlatform/Dataverse/claude_skill/__init__.py New package module for bundling the skill with PyPI distribution
src/PowerPlatform/Dataverse/claude_skill/SKILL.md Copy of skill definition for PyPI package distribution
src/PowerPlatform/Dataverse/_skill_installer.py New CLI tool to install/uninstall/check status of the Claude skill globally
pyproject.toml Registered installer CLI script and configured skill file as package data
README.md Added Claude skill installation instructions and clarified bulk delete operation usage
src/PowerPlatform/Dataverse/client.py Enhanced docstrings with type aliases for column types

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

zhaodongwang-msft and others added 9 commits January 20, 2026 11:31
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@tpellissier-msft
Copy link
Collaborator

Is there a way to avoid the need to define the skill file in 2 different places?

@zhaodongwang-msft
Copy link
Collaborator Author

Is there a way to avoid the need to define the skill file in 2 different places?

I did some experiments and its not straightforward. so the .claude one is needed for local Claude Code discovery with no additional setup needed, see
image
now if i want to include that into our pypi package directly, it needs to be added as a data_file in pyproject.toml. but the problem is its not installed at the same place with other files we package but at sys.prefix, see https://stackoverflow.com/a/26056157, which is probably not ideal and makes the installation harder. so i went with the 2 copy approach that have slight maintenance overhead on our side

@tpellissier-msft
Copy link
Collaborator

Is there a way to avoid the need to define the skill file in 2 different places?

I did some experiments and its not straightforward. so the .claude one is needed for local Claude Code discovery with no additional setup needed, see image now if i want to include that into our pypi package directly, it needs to be added as a data_file in pyproject.toml. but the problem is its not installed at the same place with other files we package but at sys.prefix, see https://stackoverflow.com/a/26056157, which is probably not ideal and makes the installation harder. so i went with the 2 copy approach that have slight maintenance overhead on our side

Sounds good, if we find a cleaner way to handle this maybe we can update in a future PR.

@zhaodongwang-msft zhaodongwang-msft merged commit 5a43e5f into main Jan 21, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants