import {
mergeModelRequirements,
type AgentMiddleware,
type ToolImagesApi
} from '@xpert-ai/plugin-sdk'
export function imageProjection(
images: ToolImagesApi,
toolNames: readonly string[]
): AgentMiddleware {
return {
name: 'verified-tool-images',
wrapModelCall: async (request, handler) => {
const projected = await images.prepareModelInput(request.messages, toolNames)
return handler({
...request,
messages: projected.messages,
requirements: mergeModelRequirements(request.requirements, projected.requirements)
})
}
}
}