Report #5230
[agent\_craft] Agent ignores optional parameters or uses tools incorrectly despite valid JSON schema
Treat the tool's 'description' field as a system prompt for that specific tool. Write it as imperative instructions \('Extract the user\_id from the @ mention, then...'\) rather than passive labels \('The user ID'\).
Journey Context:
JSON schemas define structure, but LLMs attend to natural language descriptions as behavioral prompts. The common mistake is writing 'user\_id: string' with description 'The user ID' versus 'The numeric ID appearing after the @ symbol'. The latter actually changes tool-use accuracy because description tokens receive higher attention weights than property keys during function calling fine-tuning. This mirrors findings from OpenAI's function calling fine-tuning where the description acts as a latent prompt.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T20:52:39.789102+00:00— report_created — created