Create skill tool for Progressive Disclosure Only provides get_skill tool - the agent uses metadata in system prompt to know what skills are available, then loads them on-demand. Args: skills_dir: Skills directory path Returns: Tuple of (list of tools, skill l
(
skills_dir: str = "./skills",
)
| 55 | |
| 56 | |
| 57 | def create_skill_tools( |
| 58 | skills_dir: str = "./skills", |
| 59 | ) -> tuple[List[Tool], Optional[SkillLoader]]: |
| 60 | """ |
| 61 | Create skill tool for Progressive Disclosure |
| 62 | |
| 63 | Only provides get_skill tool - the agent uses metadata in system prompt |
| 64 | to know what skills are available, then loads them on-demand. |
| 65 | |
| 66 | Args: |
| 67 | skills_dir: Skills directory path |
| 68 | |
| 69 | Returns: |
| 70 | Tuple of (list of tools, skill loader) |
| 71 | """ |
| 72 | # Create skill loader |
| 73 | loader = SkillLoader(skills_dir) |
| 74 | |
| 75 | # Discover and load skills |
| 76 | skills = loader.discover_skills() |
| 77 | print(f"✅ Discovered {len(skills)} Claude Skills") |
| 78 | |
| 79 | # Create only the get_skill tool (Progressive Disclosure Level 2) |
| 80 | tools = [ |
| 81 | GetSkillTool(loader), |
| 82 | ] |
| 83 | |
| 84 | return tools, loader |