summaryrefslogtreecommitdiff
path: root/examples/extensions/echo.lua
blob: 2f2d4de3708ba9d9e884dcaf7a6d6afcb05236b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
-- A trivial Lua tool that echoes back whatever the LLM asks it to.
-- Useful for exercising the panto CLI's Lua extension path end-to-end.

local panto = require("panto")

panto.ext.register_tool {
    name = "echo",
    description = "Echo back the given message. Useful for testing whether tools work.",
    schema = {
        type = "object",
        properties = {
            message = {
                type = "string",
                description = "The text to echo back.",
            },
        },
        required = { "message" },
    },
    handler = function(input)
        return "echo: " .. input.message
    end,
}