• Updates

  • Wickd's first monthly update. What we've built, where we're going, and what shipped in v0.4.0 — concurrent run isolation, async agents, Anthropic streaming, and 292 tests.

    Welcome to the first Wickd update

    This is the beginning of our monthly updates. A place where we talk openly about what we're building, why, and what's next. No fluff, no vanity metrics. Just the work.

    What Wickd is

    AI agents are shipping to production faster than the guardrails around them. Frameworks give you tool-calling, chain-of-thought, and multi-step reasoning. None of them ship budget enforcement. None of them ship kill switches. None of them give you a way to pause an agent and ask a human before it does something irreversible.

    That's what Wickd does.

    One decorator in Python. One wrapper in TypeScript. Your agent gets hard cost ceilings, emergency stops, human approval gates, and a full trace of every LLM call it makes. Everything runs in-process — no infrastructure, no network hops, no external services.

    What we've built so far

    Wickd ships as four packages across two languages:

    • wickd (PyPI) — the Python SDK. pip install wickd-ai, add @wickd.agent(), done.

    • wickd (npm) — the TypeScript SDK. Same API surface, same guarantees.

    • wickd-core (npm) — shared types, cost tables for 28+ models, and the trace schema.

    • wickd proxy — a local LLM proxy that enforces budgets without touching your code. Point your OPENAI_BASE_URL at it and every call is tracked.

    Three providers supported out of the box: OpenAI, Anthropic, and Google. Works with anything built on top of them — Vercel AI SDK, LangChain, LangGraph, CrewAI, OpenAI Agents SDK.

    Where we're going

    Our roadmap has three phases:

    Phase 1 (now) — Nail the agent runtime. Harden the SDK, close edge cases, make the interceptor bulletproof. This is the layer nobody else occupies. Gateways like Portkey and Runlayer protect infrastructure. We protect the agent itself.

    Phase 2 — MCP awareness. Agents don't just call LLMs anymore — they call tools. Wickd will track MCP tool calls in the same trace as LLM calls. Approval gates will work for tools too. Not a gateway. The agent knowing what it's doing.

    Phase 3 — Cloud dashboard. Team-wide budgets, cross-agent analytics, audit trails for compliance, SSO. The monetization layer on top of the open-source SDK.

    What shipped in v0.4.0

    This release is about hardening. Making the runtime tighter, the edges smoother, and the test coverage real.

    Added

    • Concurrent run isolation — per-run budget tracking with ContextVar (Python) and AsyncLocalStorage (TypeScript), so parallel agents never bleed costs

    • arun() for Python async agents — first-class async support

    • Anthropic streaming interception — messages.stream() is now fully tracked

    • TypeScript integration tests with live API calls across all three providers

    Improved

    • Patch failure observability — clear logging when patches fail, no more silent guessing

    • Handler error surfacing — eliminated every silent exception swallowing block

    • Stream finalization across all exception paths, not just StopIteration

    • CLI refactored from 600+ lines into modular components

    • Test suite expanded to 292 tests across unit and integration

    Removed

    • Dead code: CloudTraceSync, unused dashboard components, placeholder URLs

    That's it for April. More next month.