gradeNot graded
get_decision_stateAnswer
Read the complete current NOVNA decision state. Use this FIRST when helping the user make a purchase decision. It contains the user's goal, budget, urgency, considered products, rejected products, comparisons, inferred preferences and agent insights.
View tool JSON
{
"name": "get_decision_state",
"kind": "answer",
"impl": "imperative",
"description": "Read the complete current NOVNA decision state. Use this FIRST when helping the user make a purchase decision. It contains the user's goal, budget, urgency, considered products, rejected products, comparisons, inferred preferences and agent insights.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_user_goalAnswer
Read the user's current purchase goal, budget, urgency, required use cases and priorities.
View tool JSON
{
"name": "get_user_goal",
"kind": "answer",
"impl": "imperative",
"description": "Read the user's current purchase goal, budget, urgency, required use cases and priorities.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_product_detailsAnswer
Retrieve verified product information for one exact NOVNA laptop configuration. Use this before making product-specific claims.
View tool JSON
{
"name": "get_product_details",
"kind": "answer",
"impl": "imperative",
"description": "Retrieve verified product information for one exact NOVNA laptop configuration. Use this before making product-specific claims.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The exact NOVNA product ID."
}
},
"required": [
"productId"
],
"additionalProperties": false
}
}get_shortlistAnswer
Read the products the user is currently considering. Use this to work with the user's actual behavior rather than restarting the shopping journey.
View tool JSON
{
"name": "get_shortlist",
"kind": "answer",
"impl": "imperative",
"description": "Read the products the user is currently considering. Use this to work with the user's actual behavior rather than restarting the shopping journey.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}search_productsAnswer
Search NOVNA's verified laptop catalog using natural language. Optionally constrain price and minimum memory.
View tool JSON
{
"name": "search_products",
"kind": "answer",
"impl": "imperative",
"description": "Search NOVNA's verified laptop catalog using natural language. Optionally constrain price and minimum memory.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Natural-language search query such as coding, OLED, lightweight, MacBook, or gaming."
},
"maxPriceINR": {
"type": "number",
"description": "Optional maximum price in Indian rupees."
},
"minMemoryGB": {
"type": "number",
"description": "Optional minimum RAM capacity in GB."
}
},
"required": [
"query"
],
"additionalProperties": false
}
}compare_productsAction
Compare up to three exact NOVNA laptop configurations against the user's actual decision goal. Use this when the user is choosing between concrete options.
View tool JSON
{
"name": "compare_products",
"kind": "act",
"impl": "imperative",
"description": "Compare up to three exact NOVNA laptop configurations against the user's actual decision goal. Use this when the user is choosing between concrete options.",
"inputSchema": {
"type": "object",
"properties": {
"productIds": {
"type": "array",
"description": "One to three exact NOVNA product IDs to compare.",
"items": {
"type": "string"
},
"minItems": 1,
"maxItems": 3
}
},
"required": [
"productIds"
],
"additionalProperties": false
}
}find_value_alternativesAnswer
Find alternatives that may be cheaper or better aligned with the user's goal. A cheaper product is not automatically a better decision.
View tool JSON
{
"name": "find_value_alternatives",
"kind": "answer",
"impl": "imperative",
"description": "Find alternatives that may be cheaper or better aligned with the user's goal. A cheaper product is not automatically a better decision.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product for which NOVNA should find alternatives."
},
"direction": {
"type": "string",
"enum": [
"CHEAPER",
"BETTER_FIT",
"EITHER"
],
"description": "Whether to prioritize a cheaper option, better fit, or either."
}
},
"required": [
"productId"
],
"additionalProperties": false
}
}evaluate_wait_vs_buySensitive Action
Evaluate whether buying now or waiting makes sense. NOVNA must never invent future prices, discounts, launches or product releases.
View tool JSON
{
"name": "evaluate_wait_vs_buy",
"kind": "transact",
"impl": "imperative",
"description": "Evaluate whether buying now or waiting makes sense. NOVNA must never invent future prices, discounts, launches or product releases.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "Optional product currently being considered."
},
"reason": {
"type": "string",
"description": "Optional reason the user may be considering waiting."
}
},
"additionalProperties": false
}
}surface_productAction
Bring a specific verified laptop into the user's active decision space. Use this when the agent has found an option worth the user's attention. This changes the human-visible state.
View tool JSON
{
"name": "surface_product",
"kind": "act",
"impl": "imperative",
"description": "Bring a specific verified laptop into the user's active decision space. Use this when the agent has found an option worth the user's attention. This changes the human-visible state.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The exact NOVNA product ID."
}
},
"required": [
"productId"
],
"additionalProperties": false
}
}challenge_decisionAction
Challenge an assumption in the current purchase decision using the user's actual goal, behavior and verified product facts. Use this when the user may be optimizing for price, brand, specifications or status instead of the underlying need.
View tool JSON
{
"name": "challenge_decision",
"kind": "act",
"impl": "imperative",
"description": "Challenge an assumption in the current purchase decision using the user's actual goal, behavior and verified product facts. Use this when the user may be optimizing for price, brand, specifications or status instead of the underlying need.",
"inputSchema": {
"type": "object",
"properties": {
"assumption": {
"type": "string",
"description": "The assumption or decision NOVNA should challenge."
},
"productId": {
"type": "string",
"description": "Optional product associated with the assumption."
}
},
"required": [
"assumption"
],
"additionalProperties": false
}
}update_user_goalAction
Update the user's live NOVNA decision context. Use this only when the conversation or evidence justifies changing the goal, budget, urgency, use cases or priorities. This changes the shared decision state that other NOVNA tools read. Do not silently change the user's intent.
View tool JSON
{
"name": "update_user_goal",
"kind": "act",
"impl": "imperative",
"description": "Update the user's live NOVNA decision context. Use this only when the conversation or evidence justifies changing the goal, budget, urgency, use cases or priorities. This changes the shared decision state that other NOVNA tools read. Do not silently change the user's intent.",
"inputSchema": {
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "The user's updated description of what they are deciding."
},
"budgetMinINR": {
"type": "number",
"minimum": 0,
"description": "Optional minimum budget in Indian rupees."
},
"budgetMaxINR": {
"type": "number",
"minimum": 0,
"description": "Optional maximum budget in Indian rupees."
},
"urgency": {
"type": "string",
"enum": [
"NOW",
"SOON",
"CAN_WAIT"
],
"description": "How urgently the user needs to make the purchase decision."
},
"requiredUseCases": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
},
"description": "The use cases the product must support."
},
"priorities": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
},
"description": "The factors the user currently cares about most."
}
},
"additionalProperties": false
}
}