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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@tigrisdata/agent-kit

v0.1.3

Published

Composed workflows for AI agents on Tigris — forks, workspaces, checkpoints, and coordination

Downloads

584

Readme

@tigrisdata/agent-kit

Storage workflows for AI agents on Tigris. Gives agents isolated storage environments, persistent checkpoints, scoped credentials, and event-driven coordination — all backed by Tigris object storage.

Builds on @tigrisdata/storage and @tigrisdata/iam to compose higher-level operations from low-level storage and IAM primitives.

Install

npm install @tigrisdata/agent-kit

Configuration

All functions accept an optional config parameter. When omitted, the underlying SDKs read from environment variables:

TIGRIS_STORAGE_ACCESS_KEY_ID=tid_...
TIGRIS_STORAGE_SECRET_ACCESS_KEY=tsec_...

Or pass config explicitly:

const config = {
  accessKeyId: 'tid_...',
  secretAccessKey: 'tsec_...',
};

All functions return a TigrisResponse<T> — a discriminated union of { data: T } or { error: Error }.

Forks

Give each agent its own isolated copy of a shared dataset using copy-on-write storage forks. Each fork is an independent bucket — agents can read and write freely without affecting the original data or each other. Forks are instant at any size with zero data duplication.

import { createForks, teardownForks } from '@tigrisdata/agent-kit';

// 'my-dataset' must have snapshots enabled
const { data: forkSet, error } = await createForks('my-dataset', 3, {
  prefix: 'experiment-run-42',    // optional, controls fork bucket names
  credentials: { role: 'Editor' }, // optional, creates scoped keys per fork
});

// Each fork is its own bucket with isolated storage
for (const fork of forkSet.forks) {
  console.log(fork.bucket);
  // fork.credentials?.accessKeyId
  // fork.credentials?.secretAccessKey
}

// Clean up — revokes credentials, deletes all fork buckets
await teardownForks(forkSet);

Workspaces

Provision dedicated storage for a single agent — a new bucket with optional TTL for auto-cleanup and scoped credentials for least-privilege access.

import { createWorkspace, teardownWorkspace } from '@tigrisdata/agent-kit';

const { data: workspace } = await createWorkspace('agent-workspace-abc', {
  ttl: { days: 1 },               // auto-expire objects after 1 day
  enableSnapshots: true,           // allow checkpointing later
  credentials: { role: 'Editor' }, // optional scoped access key
});

// Use workspace.bucket and workspace.credentials
// to read/write with @tigrisdata/storage

// Clean up — revokes credentials, deletes bucket
await teardownWorkspace(workspace);

Checkpoints

Capture the state of a bucket at a point in time and restore from it later. Restore creates a copy-on-write fork from that snapshot, leaving the original untouched.

import { checkpoint, restore, listCheckpoints } from '@tigrisdata/agent-kit';

// Take a checkpoint
const { data: ckpt } = await checkpoint('training-data', {
  name: 'epoch-50',  // optional label
});
// ckpt.snapshotId — use this to restore later

// List all checkpoints
const { data: list } = await listCheckpoints('training-data');
for (const c of list.checkpoints) {
  console.log(c.snapshotId, c.name, c.createdAt);
}

// Restore into a new fork from that checkpoint
const { data: restored } = await restore(
  'training-data',
  ckpt.snapshotId,
  { forkName: 'training-data-retry' },
);
// restored.bucket — an independent copy-on-write clone at that point in time

Coordination

Wire up event-driven multi-agent pipelines using bucket notifications. When objects are created, deleted, or modified, Tigris fires a webhook — no polling required.

import { setupCoordination, teardownCoordination } from '@tigrisdata/agent-kit';

// Configure notifications on a bucket
await setupCoordination('pipeline-bucket', {
  webhookUrl: 'https://my-service.com/webhook',
  filter: 'WHERE `key` REGEXP "^results/"',
  auth: { token: 'my-webhook-secret' },
});

// Disable notifications
await teardownCoordination('pipeline-bucket');

API Reference

Forks

| Function | Description | |---|---| | createForks(baseBucket, count, options?) | Snapshot + fork N times + scoped credentials | | teardownForks(forkSet, options?) | Revoke credentials + delete forks |

Workspaces

| Function | Description | |---|---| | createWorkspace(name, options?) | Create bucket + TTL + scoped credentials | | teardownWorkspace(workspace, options?) | Revoke credentials + delete bucket |

Checkpoints

| Function | Description | |---|---| | checkpoint(bucket, options?) | Snapshot a bucket, returns snapshot ID | | restore(bucket, snapshotId, options?) | Fork from a snapshot | | listCheckpoints(bucket, options?) | List all snapshots for a bucket |

Coordination

| Function | Description | |---|---| | setupCoordination(bucket, options) | Configure bucket notifications | | teardownCoordination(bucket, options?) | Clear bucket notifications |

License

MIT