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

@thyme-labs/cli

v0.3.5

Published

CLI for developing and deploying Thyme tasks

Readme

@thyme-labs/cli

CLI for developing and deploying Thyme Web3 automation tasks.

Installation

npm install -g @thyme-labs/cli

Commands

thyme init [name]

Initialize a new Thyme project.

thyme init my-project
cd my-project
npm install

thyme new [name]

Create a new task in the current project.

thyme new my-task

Creates:

  • functions/my-task/index.ts - Task definition
  • functions/my-task/args.json - Test arguments

thyme run [task]

Run a task locally in a Deno sandbox.

# Interactive task picker
thyme run

# Run specific task
thyme run my-task

# Run with on-chain simulation
thyme run my-task --simulate

Requires Deno to be installed: https://deno.land/

thyme list

List all tasks in the current project.

thyme list

thyme login

Authenticate with Thyme Cloud.

thyme login

Opens your browser to generate an API token, then saves it to .env.

thyme upload [task]

Upload a task to Thyme Cloud.

# Interactive task and organization picker
thyme upload

# Upload specific task (will prompt for organization)
thyme upload my-task

# Upload to specific organization
thyme upload my-task --organization org_123abc

# Short form
thyme upload my-task -o org_123abc

Options:

  • -o, --organization <id> - Organization ID to upload to (skips interactive prompt)

Schema Extraction: When uploading, the CLI automatically extracts the Zod schema from your task definition and converts it to JSON Schema. This allows the frontend dashboard to generate forms for users to input task arguments.

The schema is extracted from the schema field in your defineTask() call:

export default defineTask({
  schema: z.object({
    targetAddress: z.address(),
    amount: z.number(),
  }),
  async run(ctx) {
    // ...
  }
})

The extracted JSON Schema is stored in the database alongside the task code, enabling dynamic form generation in the UI.

Environment Variables

Create a .env file in your project root:

# RPC URL for blockchain reads and simulation
RPC_URL=https://eth-sepolia.g.alchemy.com/v2/your-key

# Simulation settings (for --simulate flag)
SIMULATE_ACCOUNT=0x742d35Cc6634C0532925a3b844Bc454e4438f44e

# Cloud authentication (set by `thyme login`)
THYME_AUTH_TOKEN=your-token

# Cloud API URL (required - your Convex deployment URL)
# Example: https://your-deployment.convex.cloud
THYME_API_URL=https://your-deployment.convex.cloud

Note:

  • RPC_URL is used for:
    • Providing the public client in task context (ctx.client)
    • Running on-chain simulations with --simulate flag
  • THYME_API_URL should be set to your Convex deployment URL (found in your Convex dashboard or .env.local file as VITE_CONVEX_URL)

Requirements

  • Node.js 18+
  • Deno (for local task execution)

License

MIT