Move C++ File

SkillFiles & storage

Move a C++ source file to a new location, updating all #include references and CMakeLists.txt entries automatically. Use when the user wants to move or rename a C++ file.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Move C++ File skill

What this skill tells your AI

The instructions your AI receives, as published by conceptual-machines/magda-core in .claude/skills/move-file/SKILL.md and read by ahel’s review.

Automates moving a C++ source file and updating all related references.

Usage

Run from the project root:

python3 .claude/skills/move-file/move-file.py [--dry-run] <old-path> <new-path>

Both paths are relative to the project root. Use --dry-run to preview what would change without modifying any files.

Example

# Preview changes first (no files modified)
python3 .claude/skills/move-file/move-file.py --dry-run \
    magda/daw/core/Config.hpp \
    magda/daw/engine/Config.hpp

# Move a header from core/ to engine/
python3 .claude/skills/move-file/move-file.py \
    magda/daw/core/Config.hpp \
    magda/daw/engine/Config.hpp

What It Does

  1. git mv the file (preserves git history)
  2. Updates external #include references in all .cpp/.hpp files:
    • Relative includes ("../core/Config.hpp") → recomputed relative path from referencing file
    • Project-root-relative includes ("magda/daw/core/Config.hpp") → updated path
  3. Updates includes within the moved file (recomputes relative paths from the new location)
  4. Updates magda/daw/CMakeLists.txt source entries (for .cpp files only)

After Running

Review all changes before building:

git diff
make debug

Signals

GitHub stars
206
Forks
24
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
move-file
Source
github.com/conceptual-machines/magda-core