Package ai.confiqure
Annotation Type Confiqure.ToolGate
- Enclosing class:
Confiqure
@Target(TYPE)
@Retention(RUNTIME)
@Repeatable(ToolGates.class)
public static @interface Confiqure.ToolGate
Declarative flow gate on a host tool, declared on the endpoint (root) class: the named tool
is only dispatchable while the
requires() predicate is true over the bound
instance's current values. This enforces call-ordering rules ("never call the analyser before
the credentials are set") without the model having to remember them. Repeatable — declare one
per gated tool. Predicate grammar and semantics are identical to Confiqure.Gate.
@Confiqure(end = "/suppliers", tools = {"SUPPLIER_SITE_ANALYSER"})
@Confiqure.ToolGate(tool = "SUPPLIER_SITE_ANALYSER",
requires = "siteUrl != null && credentialsVerified == true",
message = "I need a verified site URL before I can run the analysis.")
public class SupplierConfig { ... }
-
Required Element Summary
Required ElementsModifier and TypeRequired ElementDescriptionPredicate (seeConfiqure.Gate) that must hold over the bound instance before the tool may be dispatched.The tool name (as referenced inConfiqure.tools()) this gate governs. -
Optional Element Summary
Optional Elements
-
Element Details
-
tool
String toolThe tool name (as referenced inConfiqure.tools()) this gate governs. -
requires
String requiresPredicate (seeConfiqure.Gate) that must hold over the bound instance before the tool may be dispatched. -
message
String messageOptional coaching shown to the conversation when the tool gate blocks a dispatch. Defaults to the predicate text.- Default:
""
-