Skip to content

feat: Claude Skills installation support#48

Merged
danielmeppiel merged 2 commits into
mainfrom
feature/install-skills
Dec 8, 2025
Merged

feat: Claude Skills installation support#48
danielmeppiel merged 2 commits into
mainfrom
feature/install-skills

Conversation

@danielmeppiel

Copy link
Copy Markdown
Collaborator

This pull request introduces support for Claude Skills as a first-class primitive in APM, allowing users to install and use SKILL.md meta-guides directly as packages. It updates documentation to reflect this new capability, clarifies token and host configuration, and refines the taxonomy of APM primitives. The changes make it easier to install and work with Claude Skills, improve the explanation of authentication and package sources, and provide clearer guides for users.

  • Install Skills directly from awesome-claude-skills
  • Bidirectional format support (APM ↔ Claude Skills)
  • Skills documentation and integration tests

Claude Skills and New Primitives:

  • Added SKILL.md as a first-class primitive to describe what an APM Package does for AI agents, with documentation and usage examples. [1] [2] [3] [4] [5]
  • Enabled direct installation of Claude Skills as APM Packages, including bidirectional format support between APM packages and Claude Skills. [1] [2] [3] [4]
  • Updated dependency types and installation instructions to include Claude Skills and clarify the distinction between APM dependencies, Claude Skills, and virtual packages.

Documentation and User Experience:

  • Added a new docs/skills.md guide and expanded documentation in README.md, docs/cli-reference.md, docs/concepts.md, and docs/primitives.md to cover Claude Skills installation, usage, and conceptual role. [1] [2] [3] [4] [5] [6] [7] [8]

Token and Host Configuration:

  • Refactored token setup instructions to clarify which tokens are needed for public/private modules and for running prompts, and added comprehensive host configuration details for GitHub and Azure DevOps.
  • Improved explanations and examples for installing from multiple sources, including GitHub Enterprise and Azure DevOps, with updated guidance on FQDN and segment formats.

Changelog Updates:

  • Documented all major additions in the CHANGELOG.md for version 0.6.1, including SKILL.md support, Claude Skills installation, bidirectional format support, and new documentation.

- Install Skills directly from awesome-claude-skills
- Bidirectional format support (APM ↔ Claude Skills)
- Skills documentation and integration tests
Copilot AI review requested due to automatic review settings December 8, 2025 22:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces comprehensive support for Claude Skills as first-class primitives in APM, enabling seamless installation and use of SKILL.md-based packages from repositories like awesome-claude-skills. The feature includes bidirectional format support (APM ↔ Claude Skills), extensive documentation, and integration tests.

Key Changes:

  • Added SKILL.md as the fourth APM primitive type (alongside agents, instructions, and contexts)
  • Implemented subdirectory package installation to support Claude Skills in monorepos
  • Added automatic package type detection (APM_PACKAGE, CLAUDE_SKILL, or HYBRID)
  • Created comprehensive Skills documentation and integration test suite

Reviewed changes

Copilot reviewed 23 out of 24 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
pyproject.toml, uv.lock Version bump to 0.6.1
src/apm_cli/primitives/models.py Added Skill dataclass as fourth primitive type with validation
src/apm_cli/primitives/parser.py Added parse_skill_file() function for SKILL.md parsing
src/apm_cli/primitives/discovery.py Added skill discovery logic for local and dependency skills
src/apm_cli/integration/skill_transformer.py New module for transforming SKILL.md to .agent.md format
src/apm_cli/integration/agent_integrator.py Added skill integration with APM metadata tracking
src/apm_cli/models/apm_package.py Added PackageType enum, subdirectory package support, Claude Skill validation
src/apm_cli/deps/github_downloader.py Added download_subdirectory_package() for monorepo skill installation
src/apm_cli/cli.py Added verbose output for package type detection
tests/unit/integration/test_skill_transformer.py Unit tests for skill transformation logic
tests/integration/test_skill_install.py Integration tests for skill installation flows
tests/integration/test_skill_compile.py Integration tests for skill compilation
tests/integration/test_mixed_deps.py Tests for projects with mixed APM and Claude Skill dependencies
tests/unit/test_script_runner.py Updated comment for clarity on invalid virtual package formats
docs/skills.md Comprehensive new guide for Claude Skills usage
docs/primitives.md, docs/concepts.md Updated to include Skills primitive
docs/getting-started.md Refactored token configuration, added Skills installation examples
docs/cli-reference.md Updated with Claude Skills installation syntax
README.md Added Skills installation examples
CHANGELOG.md Documented 0.6.1 release with Skills support
Comments suppressed due to low confidence (1)

src/apm_cli/models/apm_package.py:973

  • This statement is unreachable.
    return result

Comment thread src/apm_cli/models/apm_package.py Outdated
Comment thread src/apm_cli/integration/agent_integrator.py Outdated
Comment thread tests/unit/integration/test_skill_transformer.py Outdated
Comment thread src/apm_cli/integration/skill_transformer.py Outdated
Comment thread src/apm_cli/integration/agent_integrator.py Outdated
Comment thread tests/integration/test_mixed_deps.py Outdated
Comment thread tests/integration/test_skill_install.py Outdated
Comment thread src/apm_cli/models/apm_package.py Outdated
- Remove duplicate return statement in apm_package.py (line 973)
- Fix incorrect variable reference: apm_data -> post.metadata (line 220)
- Remove unused transformer variable in agent_integrator.py
- Fix source attribution placement (move outside YAML frontmatter)
- Remove unnecessary pass statement for subdirectory package validation
- Remove unused platform import in test_skill_transformer.py
- Remove unused has_compliance variable in test_mixed_deps.py
- Remove unused shutil import in test_skill_install.py
@danielmeppiel danielmeppiel merged commit 5e0ded5 into main Dec 8, 2025
22 checks passed
@danielmeppiel danielmeppiel deleted the feature/install-skills branch February 27, 2026 09:41
sergio-sisternes-epam pushed a commit that referenced this pull request May 19, 2026
feat: Claude Skills installation support
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.

2 participants