IntelLabs / IntelLabs/Xe-Forge
Rename xe_forge.skills to xe_forge.tools with backward-compatible CLI migration
- Dominant language
- Python
- Stars
- 21
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
Rename the package path from `src/xe_forge/skills` to `src/xe_forge/tools` so naming aligns with agentic AI terminology (tools as callable capabilities), while preserving current user workflows.
## Motivation
The current package is functionally a tool surface, but the term `skills` is overloaded in agent ecosystems. Using tools improves clarity for:
- Internal architecture and import paths
- Agent prompt/template language
- Future interoperability with tool-calling conventions
## Current References
Primary wiring points today:
- Entry point script target: pyproject.toml
- Skill router and imports: __init__.py
- Internal imports to update: __init__.py
- Agent template command references: CLAUDE.md.j2
- Tool-runner template references: tool-runner.md.j2
- Script allowlist template references: settings.json.j2
## Proposal
- Rename package directory from src/xe_forge/skills to src/xe_forge/tools.
- Update imports from xe_forge.skills.* to xe_forge.tools.*.
- Keep existing CLI command xe-forge-skill as a compatibility alias for at least one release cycle.
- Add new alias xe-forge-tool (optional but recommended).
- Update generated templates and docs to prefer xe-forge-tool language over time.
## Scope
- Python package path and import updates
- Project script entry points
- Core templates under src/xe_forge/claude/templates
- Top-level docs that show command usage (README/VTUNE guidance)
## Out of Scope
- Removing xe-forge-skill immediately
- Bulk cleanup of archived/generated workspace snapshots unless explicitly requested
## Implementation Tasks
- [ ] Move src/xe_forge/skills to src/xe_forge/tools
- [ ] Update module imports in router and tool modules
- [ ] Update script target in pyproject.toml
- [ ] Add dual CLI script names (xe-forge-skill + xe-forge-tool) during transition
- [ ] Update wording in __init__.py equivalent after move
- [ ] Update agent templates:
- [ ] CLAUDE.md.j2
- [ ] tool-runner.md.j2
- [ ] settings.json.j2
- [ ] Update user docs:
- [ ] README.md
- [ ] VTUNE.md
- [ ] Add/adjust tests for CLI entry points and import resolution
## Backward Compatibility Plan
Phase 1:
- Keep xe-forge-skill fully functional.
- Introduce xe-forge-tool alias and document as preferred.
Phase 2:
- Emit deprecation notice for xe-forge-skill in a later release.
Phase 3:
- Remove xe-forge-skill only after downstream templates/workspaces are migrated.
## Acceptance Criteria
- Both xe-forge-skill and xe-forge-tool execute successfully and route to the same handlers.
- No runtime import errors after package move.
- Generated Claude templates reference the preferred command naming.
- Documentation examples are updated and consistent.
- CI/tests pass for CLI and module imports.
## Risks
- Breaking downstream automation that hardcodes xe-forge-skill.
- Missing references in generated workspace artifacts.
- Packaging regressions if script target/import path updates are incomplete.
## Notes
A staged migration minimizes disruption while modernizing terminology for agentic workflows.
Contributor guide
Research direction
Start with pyproject.toml and src/xe_forge/skills/__init__.py to trace the current entry point, router, and imports. Then review CLAUDE.md.j2, tool-runner.md.j2, settings.json.j2, README.md, and VTUNE.md for command references. Done means both CLI names work, imports resolve, generated templates and docs use the preferred name, and CLI/import tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100