npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@fondation-io/devtools

v1.0.0

Published

AI development tools for debugging and monitoring AI SDKs streams

Downloads

4

Readme

AI SDK Devtools

AI SDK Devtools

A powerful debugging and monitoring tool for AI SDKs that provides real-time insights into AI streaming events, tool calls, and performance metrics.

What it does

AI SDK Devtools helps you debug and monitor AI applications by:

  • Real-time event monitoring - Track all AI streaming events as they happen
  • Tool call debugging - See tool calls, parameters, results, and execution times
  • Performance metrics - Monitor streaming speed (tokens/second, characters/second)
  • Event filtering - Filter events by type, tool name, or search queries
  • Context insights - Visualize token usage and context window utilization
  • Stream interception - Automatically capture events from AI SDK streams
  • State management - Optional integration with @ai-sdk-tools/store for state debugging

Installation

npm install @ai-sdk-tools/devtools

Optional Store Integration

For enhanced state debugging capabilities, you can optionally install the store package:

npm install @ai-sdk-tools/store

The devtools will automatically detect and integrate with the store if available, but it works perfectly fine without it for basic event monitoring.

Note: The store package is an optional peer dependency. If you don't install it, the devtools will work normally but without the State tab for debugging Zustand stores.

Quick Start

Basic Usage

import { AIDevtools } from '@ai-sdk-tools/devtools';

function App() {
  return (
    <div>
      {/* Your AI app components */}
      
      {/* Add the devtools component - only in development */}
      {process.env.NODE_ENV === "development" && <AIDevtools />}
    </div>
  );
}

With useChat Integration

import { useChat } from 'ai/react';
import { AIDevtools } from '@ai-sdk-tools/devtools';
import { DefaultChatTransport } from 'ai';

function ChatComponent() {
  const { messages, input, handleInputChange, handleSubmit } = useChat({
    transport: new DefaultChatTransport({
      api: '/api/chat'
    }),
    ...
  });

  return (
    <div>
      {/* Your chat UI */}
      {process.env.NODE_ENV === "development" && <AIDevtools />}
    </div>
  );
}

Features

Event Monitoring

  • Tool calls - Start, result, and error events
  • Message streaming - Text chunks, completions, and deltas
  • Step tracking - Multi-step AI processes
  • Error handling - Capture and debug errors

Advanced Filtering

  • Filter by event type (tool calls, text events, errors, etc.)
  • Filter by tool name
  • Search through event data and metadata
  • Quick filter presets

Performance Metrics

  • Real-time streaming speed (tokens/second)
  • Character streaming rate
  • Context window utilization
  • Event timing and duration

Visual Interface

  • Resizable panel (drag to resize)
  • Live event indicators
  • Color-coded event types
  • Context circle visualization

Configuration

<AIDevtools
  enabled={true}
  maxEvents={1000}
  modelId="gpt-4o" // For context insights
  config={{
    position: "bottom", // or "right", "overlay"
    height: 400,
    streamCapture: {
      enabled: true,
      endpoint: "/api/chat",
      autoConnect: true
    },
    throttle: {
      enabled: true,
      interval: 100, // ms
      includeTypes: ["text-delta"] // Only throttle high-frequency events
    }
  }}
  debug={false} // Enable debug logging
/>

Advanced Usage

Manual Event Integration

import { useAIDevtools } from '@ai-sdk-tools/devtools';

function MyComponent() {
  const { 
    events, 
    clearEvents, 
    toggleCapturing 
  } = useAIDevtools({
    maxEvents: 500,
    onEvent: (event) => {
      console.log('New event:', event);
    }
  });

  return (
    <div>
      <button onClick={clearEvents}>Clear Events</button>
      <button onClick={toggleCapturing}>Toggle Capture</button>
      <div>Events: {events.length}</div>
    </div>
  );
}

Event Filtering

const { filterEvents, getUniqueToolNames, getEventStats } = useAIDevtools();

// Filter events
const toolCallEvents = filterEvents(['tool-call-start', 'tool-call-result']);
const errorEvents = filterEvents(['error']);
const searchResults = filterEvents(undefined, 'search query');

// Get statistics
const stats = getEventStats();
const toolNames = getUniqueToolNames();

Event Types

The devtools capture these event types:

  • tool-call-start - Tool call initiated
  • tool-call-result - Tool call completed successfully
  • tool-call-error - Tool call failed
  • message-start - Message streaming started
  • message-chunk - Message chunk received
  • message-complete - Message completed
  • text-start - Text streaming started
  • text-delta - Text delta received
  • text-end - Text streaming ended
  • finish - Stream finished
  • error - Error occurred

Development

Debug Mode

Enable debug logging to see detailed event information:

<AIDevtools debug={true} />

Or enable globally:

window.__AI_DEVTOOLS_DEBUG = true;

Requirements

  • React 16.8+
  • AI SDK React package
  • Modern browser with fetch API support

Contributing

Contributions are welcome! See the contributing guide for details.

License

MIT