feat: Add agentskills.io standard compliance#33
Merged
mrbrandao merged 7 commits intoRedHatProductSecurity:mainfrom Feb 3, 2026
Merged
feat: Add agentskills.io standard compliance#33mrbrandao merged 7 commits intoRedHatProductSecurity:mainfrom
mrbrandao merged 7 commits intoRedHatProductSecurity:mainfrom
Conversation
- Add --module-content flag to `lola mod add` command - Support "/" value to explicitly use root directory - Pass content_dirname through fetch and validation chain - Store content_dirname in .lola-source.yml for updates - Update Module.from_path() to accept content_dirname parameter - Add Module._resolve_content_path() for path resolution logic - Update README with monorepo and flat repo examples - Update marketplace examples to show path field usage - Refactor tests to explicitly test custom content dirs - Remove auto-discovery of lola-module/ (breaking change) BREAKING CHANGE: lola-module/ is no longer auto-discovered. Use --module-content=lola-module or path field in marketplaces. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Extract load_registered_module() helper to consistently read content_dirname from .lola/source.yml. Replace direct Module.from_path() calls across install.py and mod.py when loading registry modules. Preserve direct Module.from_path() for non-registry paths in mod info. Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Add is_single_skill field to Module model to detect and handle single-skill modules (SKILL.md at content root) following the agentskills.io standard. - Detect single skill via SKILL.md at content_path root - Extract skill name from frontmatter metadata or module name - Update _skills_root_dir() and get_skill_paths() for single skills - Update _skill_source_dir() to check single skill before bundles - Maintain backward compatibility with skill bundles and legacy Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add test coverage for single skill functionality (agentskills.io standard) including: - Single skill detection with frontmatter name parsing - Path resolution for root and module/ subdirectory patterns - Validation of single skill structure - Precedence rules between skill bundles and single skills - Custom content directory support - _skill_source_dir() function behavior for all patterns Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Document three module patterns: single skill, skill bundle, AI context module - Add content path detection section - Recommend lola mod init for new modules - Provide clear guidance on when to use each pattern
Remove unused Path import from test_skill_source_dir.py to clean up dependencies.
Collaborator
Author
|
This will allow any module structure to be supported in Lola via the flag example: lola mod add https://github.com/RedHatProductSecurity/secdevai --module-content=templatescc: @jeremychoi |
Contributor
|
Ahh this is amazing! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Related Issues
Fixes #31
Test Plan
Verification steps:
lola mod add https://github.com/user/my-skill.git lola mod info my-skill # Should detect skill from SKILL.md at rootlola mod add https://github.com/user/skill-bundle.git lola mod info skill-bundle # Should detect skills from skills/ subdirectorypytest # All 533 tests passing (515 original + 18 new)Code changes:
src/lola/models.py: Addedis_single_skillfield, updated skill discovery logicsrc/lola/targets/base.py: Updated_skill_source_dir()to detect single skillstests/test_single_skill.py: 13 new tests for single skill functionalitytests/test_skill_source_dir.py: 5 new tests for path resolutionREADME.md: Documented three module patterns with examplesChecklist
pytest) - All 533 tests passingruff check src tests) - No issuesty check) - PassesAI Disclosure
Co-Authored-By: Claude Sonnet 4.5 noreply@anthropic.com