feat(tools): add description and parametersSchema to Tool interface; wire FileWriteTool materialization
This commit is contained in:
@@ -5,9 +5,13 @@ import com.correx.core.events.events.ToolRequest
|
||||
import com.correx.core.tools.contract.Tool
|
||||
import com.correx.core.tools.contract.ToolCapability
|
||||
import com.correx.core.tools.contract.ValidationResult
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
import kotlinx.serialization.json.buildJsonObject
|
||||
|
||||
class EchoTool : Tool {
|
||||
override val name: String = "echo"
|
||||
override val description: String = "Echo tool for testing"
|
||||
override val parametersSchema: JsonObject = buildJsonObject {}
|
||||
override val tier: Tier = Tier.T0
|
||||
override val requiredCapabilities: Set<ToolCapability> = emptySet()
|
||||
override fun validateRequest(request: ToolRequest): ValidationResult = ValidationResult.Valid
|
||||
|
||||
@@ -5,9 +5,13 @@ import com.correx.core.events.events.ToolRequest
|
||||
import com.correx.core.tools.contract.Tool
|
||||
import com.correx.core.tools.contract.ToolCapability
|
||||
import com.correx.core.tools.contract.ValidationResult
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
import kotlinx.serialization.json.buildJsonObject
|
||||
|
||||
class FailingTool : Tool {
|
||||
override val name: String = "failing"
|
||||
override val description: String = "Failing tool for testing"
|
||||
override val parametersSchema: JsonObject = buildJsonObject {}
|
||||
override val tier: Tier = Tier.T2
|
||||
override val requiredCapabilities: Set<ToolCapability> = emptySet()
|
||||
override fun validateRequest(request: ToolRequest): ValidationResult =
|
||||
|
||||
@@ -5,9 +5,13 @@ import com.correx.core.events.events.ToolRequest
|
||||
import com.correx.core.tools.contract.Tool
|
||||
import com.correx.core.tools.contract.ToolCapability
|
||||
import com.correx.core.tools.contract.ValidationResult
|
||||
import kotlinx.serialization.json.JsonObject
|
||||
import kotlinx.serialization.json.buildJsonObject
|
||||
|
||||
class RejectedTool : Tool {
|
||||
override val name: String = "rejected"
|
||||
override val description: String = "Rejected tool for testing"
|
||||
override val parametersSchema: JsonObject = buildJsonObject {}
|
||||
override val tier: Tier = Tier.T4
|
||||
override val requiredCapabilities: Set<ToolCapability> = emptySet()
|
||||
override fun validateRequest(request: ToolRequest): ValidationResult = ValidationResult.Valid
|
||||
|
||||
Reference in New Issue
Block a user