Skip to content
  • Workflow SDK now runs natively in Nitro v3

    Workflow SDK's native Nitro v3 integration is now in beta. Steps run inside the same bundled runtime as the rest of your app, instead of a separate bundle. Nitro's useStorage() and other server-side APIs work directly inside "use step" functions.

    workflows/sync-user.ts
    import { useStorage } from "nitro/storage";
    export async function getUserPreferences(userId: string) {
    "use step";
    const storage = useStorage("cache");
    return await storage.getItem(`preferences:${userId}`);
    }

    Reading from Nitro storage inside a step function

    The Nitro dev server also serves the workflow web UI at /_workflow. Open it in your browser to inspect, monitor, and debug workflow runs.

    Workflow routes are now bundled by Nitro as part of the app build. Dependencies are traced, and unused code is tree-shaken, so the output includes only what runs, with faster builds and smaller bundles.

    Get started with Workflow SDK on Nitro.

    Rihan Arfan

  • Kimi K2.7 Code now available on AI Gateway

    Kimi K2.7 Code from Moonshot AI is now available on AI Gateway.

    K2.7 Code is a coding model built for long-horizon programming tasks, generalizing across scenarios including frontend development, DevOps, and performance optimization. The model has a native multimodal architecture that supports text and vision input, and always runs in thinking mode.

    To use K2.7 Code, set model to moonshotai/kimi-k2.7-code in the AI SDK:

    import { streamText } from 'ai';
    const result = streamText({
    model: 'moonshotai/kimi-k2.7-code',
    prompt: 'Refactor this service to remove the N+1 queries.',
    });

    Pass an image alongside a prompt to use the model's multimodal input:

    import { streamText } from 'ai';
    const result = streamText({
    model: 'moonshotai/kimi-k2.7-code',
    messages: [
    {
    role: 'user',
    content: [
    { type: 'text', text: 'Describe the image in detail.' },
    {
    type: 'image',
    image:
    'https://exampleimage.com',
    },
    ],
    },
    ],
    });

    AI Gateway provides a unified API for calling models, tracking usage and cost, and configuring retries, failover, and performance optimizations for higher-than-provider uptime. It includes built-in custom reporting, Zero Data Retention support, budgets for API keys, and more. AI Gateway reflects provider pricing with no markup and does not charge a platform fee on inference, including on Bring Your Own Key (BYOK) requests.

    Learn more about AI Gateway, view the AI Gateway model leaderboard or try it in our model playground.

  • Program Claude Code, Codex, Pi and other agent harnesses with AI SDK

    AI SDK 7 introduces HarnessAgent, a single API for running established agent harnesses, including Claude Code, Codex, and Pi. AI SDK has always let you switch models without rewriting your agent. Now you can switch the harness the same way.

    Write the agent once. Use the best harness available.
    Today. In 3 months. A year from now.

    Harnesses manage the components above a model call, including skills, sandboxes, sessions, permission flows, compaction, runtime configuration, and sub-agents. The AI SDK normalizes access to those capabilities through a unified harness abstraction.

    Initial harness adapters for this experimental release include Claude Code, Codex, and Pi, with more coming soon.

    agent.ts
    import { HarnessAgent } from '@ai-sdk/harness/agent';
    import { claudeCode } from '@ai-sdk/harness-claude-code';
    import { createVercelSandbox } from '@ai-sdk/sandbox-vercel';
    const agent = new HarnessAgent({
    harness: claudeCode,
    sandbox: createVercelSandbox({
    runtime: 'node24',
    ports: [4000],
    }),
    tools: { /* pass custom tools */ },
    skills: [ /* pass custom skills */ ],
    });
    const session = await agent.createSession();
    try {
    const result = await agent.stream({
    session,
    prompt: 'Check the test failures and fix the production code.',
    });
    for await (const part of result.fullStream) {
    if (part.type === 'text-delta') {
    process.stdout.write(part.text);
    }
    }
    } finally {
    await session.destroy();
    }

    Create a harness-backed agent using Claude Code

    Swap claudeCode for codex or pi and keep the same HarnessAgent flow. Every harness runs the agent in a sandboxed workspace, keeping the host environment safe.

    Both HarnessAgent.generate() and HarnessAgent.stream() return AI SDK-compatible results. If your app already uses useChat or related AI SDK tooling, you can swap in HarnessAgent without changing your user interface code.

    HarnessAgent is available on the AI SDK canary release. Read the AI SDK harness documentation to get started.

    Harness packages are experimental. Expect breaking changes between releases as this early API gets further refined.

  • Introducing Vercel Drop

    Vercel Drop dark heroVercel Drop dark hero

    Vercel Drop lets you deploy a file or folder by dragging it into your browser. You don't need Git, the Vercel CLI, or any local setup.

    Drop a project onto vercel.com/drop, pick a team and project name, and select Deploy. Vercel will create a new project, upload your files, and publish them straight to production with a live URL you can share. All in a matter of seconds.

    Vercel Drop handles more than static files:

    - Framework projects: Vercel detects your framework (e.g., Next.js) and builds it. Exports from tools like Bolt.new deploy this way.
    - Static sites: Files with no framework deploy as-is, with no build step. That includes exports from Claude Design and Google Stitch. If your folder has no index.html at the top, you choose which page loads at your site's root.

    Each drop creates a new project. To get automatic deployments on every push, connect a Git repository to the project afterwards.

    Get started at vercel.com/drop or read the documentation.

  • Vercel plugin is now available in Grok Build

    The Vercel plugin is now available in Grok Build.

    Grok can now draw on Vercel knowledge as you work. Real-time activity, including file edits and terminal commands, dynamically injects the relevant knowledge into context, so answers stay aligned with current platform APIs and recommended patterns.

    Install it in either of two ways:

    • Add vercel to your prompt and Grok will recommend installing it in chat

    • Open the Grok Build marketplace with /marketplace, then search for and install Vercel

    Grok recommends the Vercel plugin when a prompt mentions Vercel, then uses it to answer.

    Learn more about the Vercel plugin in the documentation.

  • DeepSeek models now available via Azure on AI Gateway

    Azure is now a provider for DeepSeek V4 Pro and V4 Flash on AI Gateway.

    Requests to either model can route through Azure alongside the existing providers for another failover path. No code changes are required: default routing considers Azure automatically, and if a provider fails the gateway falls back through the remaining list.

    If you want requests to try Azure first, use order in the gateway provider options to prefer Azure while keeping the other providers as fallback for deepseek/deepseek-v4-pro or deepseek/deepseek-v4-flash in the AI SDK:

    import { streamText } from 'ai';
    const result = streamText({
    model: 'deepseek/deepseek-v4-pro',
    prompt: 'Refactor this function to use async/await.',
    providerOptions: {
    gateway: {
    order: ['azure'],
    },
    },
    });

    If you have existing Azure credentials, you can bring your own key and AI Gateway will use it for requests routed to Azure. See API key authentication and BYOK for setup.

    AI Gateway provides a unified API for calling models, tracking usage and cost, and configuring retries, failover, and performance optimizations for higher-than-provider uptime. It includes built-in custom reporting, Zero Data Retention support, budgets for API keys, and more. AI Gateway reflects provider pricing with no markup and does not charge a platform fee on inference, including on Bring Your Own Key (BYOK) requests.

    Learn more about AI Gateway, view the AI Gateway model leaderboard or try it in our model playground.