return {
id = "subagent",
namespace = "builtin",
subscriptions = {"Echo"},
output_to_io = true,
elevated = true,
on_request = function(request)
local message = request.payload
if type(message) == "table" then
message = message.message or message.content or ""
end
if type(message) ~= "string" or message == "" then
return { success = false, error = "empty message" }
end
orcs.log("info", "SubAgent received: " .. message:sub(1, 50))
local response = "Hello: " .. message
orcs.output(response)
return {
success = true,
data = {
response = response,
source = "subagent"
}
}
end,
on_signal = function(signal)
if signal.kind == "Veto" then
return "Abort"
end
return "Ignored"
end,
init = function()
orcs.log("info", "subagent component initialized")
end,
shutdown = function()
orcs.log("info", "subagent component shutdown")
end,
}