Files
Stirling-PDF/engine/src/stirling/models/agent_tool_models.py
T
2026-05-01 10:19:38 +01:00

37 lines
1.0 KiB
Python

"""Agent tool IDs, parameter models, and registry.
tool_models.py is auto-generated from the Java OpenAPI spec. This file is its
manually-maintained counterpart for tools backed by AI agent pipelines.
"""
from __future__ import annotations
from enum import StrEnum
from stirling.models.base import ApiModel
from stirling.models.tool_models import ParamToolModel, ToolEndpoint
class AgentToolId(StrEnum):
MATH_AUDITOR_AGENT = "/api/v1/ai/tools/math-auditor-agent"
PDF_COMMENT_AGENT = "/api/v1/ai/tools/pdf-comment-agent"
class MathAuditorAgentParams(ApiModel):
tolerance: str = "0.01"
class PdfCommentAgentParams(ApiModel):
prompt: str | None = None
type AgentParamModel = MathAuditorAgentParams | PdfCommentAgentParams
type AnyToolId = ToolEndpoint | AgentToolId
type AnyParamModel = ParamToolModel | AgentParamModel
AGENT_OPERATIONS: dict[AgentToolId, type[AgentParamModel]] = {
AgentToolId.MATH_AUDITOR_AGENT: MathAuditorAgentParams,
AgentToolId.PDF_COMMENT_AGENT: PdfCommentAgentParams,
}