NAME

Langertha::Knarr::Protocol::ACP - BeeAI/IBM Agent Communication Protocol (ACP) for Knarr

VERSION

version 1.103

DESCRIPTION

Implements the IBM/BeeAI Linux Foundation ACP protocol on top of Langertha::Knarr::Protocol. Loaded by default.

  • GET /agents — list agents

  • POST /runs — create a run (sync or stream mode)

Streaming mode emits the standard ACP event sequence: run.created, message.created, message.part×N, message.completed, run.completed.

format_stream_error

my $bytes = $proto->format_stream_error( 500, 'boom', $request );

event: run.failed carrying the run with status: failed and an error (code server_error, not_found or invalid_input, and the message). It takes the place of run.completed.

format_error_response

my ($status, $headers, $body) = $proto->format_error_response( 500, 'boom' );

ACP's Error object at the top of the body: {"code":"server_error","message":"boom"}, code being server_error (5xx), not_found (404) or invalid_input (any other status, the 401 included -- ACP has no other code).

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/langertha-knarr/issues.

IRC

Join #langertha on irc.perl.org or message Getty directly.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.