When you're plugging an LLM agent into an external API, you have three reasonable patterns: hand-rolled HTTP, AgentKit's action provider model, or LangChain's tool calling. They all work. They produce identical outputs against the same input. So which one should you actually use? I built the exact same agent three different ways — answering the same Kelly Criterion question — and the answer to "which one" depends on your stack, your team, and (most underrated) your wallet model. Here's the honest comparison. The test case Question: "I have a 55% win rate, $150 average win, $100 average loss. What's my Kelly fraction?" Answer: f* = 17.5% (full Kelly), or 8.75% (half-Kelly — what most quant funds actually use). The math doesn't care which integration computes it. Kelly is a 1956 formula that fits in a tweet: f* = (p · b − q) / b Enter fullscreen mode Exit fullscreen mode Where p = win probability, q = 1-p, b = avg_win/avg_loss.…