NAME

Skilletor::Report - The reports of sync, check and status – their shape, their text, their exit codes (spec §8)

VERSION

version 0.001

SYNOPSIS

use Skilletor::Report qw( report_text exit_code );

my $report = $sk->sync;
print report_text($report) || 'skilletor: up to date', "\n";
exit exit_code( sync => $report );

DESCRIPTION

The reference's report.ts (spec §8), and the text skilletor status and skilletor check print (cli.ts). The reports themselves are plain data – what skilletor sync --json, check --json and status --json print – built by Skilletor::Engine; this module words them for a person or a model's context, line for line as the CLI does: the same marks, the same activation hints (a skill is active at once, an agent or rule after /reload-plugins), every line passed through "display_safe".

report_text

The sync report's text; empty when no scope has anything to say (the CLI then prints skilletor: up to date).

status_text

check_text

changed or up to date.

exit_code

exit_code( sync | check | status => $report );

The CLI's exit code: 2 for a report with an error, 1 for a check that found a reason to sync, else 0.

display_safe

One line with every control character but tab, every bidi control, the line and paragraph separators, the zero-width space, word joiner and BOM escaped the JSON way (\n, \u001b, ‮): a name or a message from a config or a source cannot move the cursor, recolour or reorder what is shown.

empty_scope_report

empty_scope_report('user');

conflict_hint

The text after a conflict's path: already exists (use --force to adopt).

backend_label

git https://…, local /path.

has_changes

True when a sync added, updated or removed an item.

has_notable

True when a sync report has anything a hook would show.

ACTIVATION

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.