NAME
Skilletor::Render - Build an item in memory – the copy half of the reference's render.ts
VERSION
version 0.001
SYNOPSIS
use Skilletor::Render qw( build executables templates_of );
my $output = build( $catalog_item, $source_dir ); # [ [ 'skills/foo/SKILL.md', $bytes ], ... ]
my $exec = executables( $catalog_item, $source_dir ); # { 'skills/foo/run.sh' => 1 }
DESCRIPTION
The reference's render.ts without Nunjucks (spec §5): every file of an item is copied byte for byte to its install path – a skill's files under skills/<name>/, an agent's or rule's under agents/ or rules/, wherever the item lies in its source – and a skill's files keep their source's executable bit (k99).
The Perl port renders no templates. "build" refuses an item with a .njk file; Skilletor::Engine never asks it to, and leaves such an item as it is installed (see "Templates" in Skilletor::Engine).
build
build( $item, $source_dir );
The item's output as an ordered list of [ install path, bytes ]; croaks for a templated item.
executables
executables( $item, $source_dir );
The install paths, as a hash set, of the files whose source has the owner's executable bit.
install_path
install_path( $item, 'plugins/x/skills/foo/SKILL.md' ); # skills/foo/SKILL.md
templates_of
The item's .njk files, relative to its source tree.
SUPPORT
CONTRIBUTING
Contributions are welcome! Please fork the repository and submit a pull request.
AUTHOR
Torsten Raudssus <getty@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.