An AST is a tree as much as the directory structure currently encoded in git.
It shouldn't be hard to build a bijective mapping between a file system and AST.
It shouldn't be hard to build a bijective mapping between a file system and AST.
The cli really isn't the greatest either way. But there's lots of infrastructure to make the sharing work reasonably well.