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

@vito_liu93/kelp-agent

v0.1.9

Published

Personal TUI agent built with Bun + Claude Messages API

Readme

Kelp Agent

Personal TUI agent built from scratch with Bun + Claude Messages API. A learning project inspired by openclaw and claude agent sdk.

Features

Core

  • One-shot chat: Directly ask questions from the command line
  • Persistent bash session: Execute shell commands in a long-running context
  • Tool execution pipeline: Native support for Claude tool use
  • Subagent delegation: Delegate focused subtasks to independent agent instances
  • Interactive mode: Ask user for clarification or confirmation when needed
  • Skill system: Extensible skill loading from configured directories

Tools Built-in

  • bash: Execute commands in a persistent shell session
  • delegate_task: Delegate subtasks to subagents with independent context
  • str_replace_based_edit_tool: View, create, and edit files
  • ask_user: Request user input or confirmation during execution

Skills Built-in

| Skill | Description | |-------|-------------| | image-magick | Process images using ImageMagick - resize, format conversion, crop, compression | | web-fetch | Fetch and read any URL as clean markdown | | hello-world | Demo skill that greets the user | | create-skill | Scaffold new Agent Skills, including MCP-based skills | | yt-dlp-subtitle | Download subtitles from video URLs with multi-language support | | web-search | Search the web for general topics - news, recipes, travel, product research | | github-cli | Wrapper for GitHub CLI - clone repos, view issues, create PRs, manage releases | | exa-code | Search for code examples, documentation, and programming solutions |

Tech Stack

  • Powered by Bun - fast runtime, easy bundling, TypeScript support out of the box
  • Uses Anthropic Claude Messages API for AI interactions
  • MCP (Model Context Protocol) ready for extended tool integrations

Installation

bun install -g @vito_liu93/kelp-agent

Usage

Basic chat

kelp "what's the weather today in Shanghai?"

Pipe input

cat README.md | kelp "summarize this file"

Interactive mode (TTY)

kelp "create a new react project"

Agent will ask for confirmation before executing potentially dangerous commands.

Configuration

Environment Variables

| Variable | Description | Default | |----------|-------------|---------| | KELP_BASE_URL | Custom API endpoint | - | | KELP_API_KEY | Custom API key | - | | KELP_DEFAULT_MODEL | Default model to use | anthropic/claude-haiku-4.5 |

OpenRouter Support

Kelp can use OpenRouter as an alternative API provider:

export OPENROUTER_API_KEY="your-openrouter-key"
export KELP_DEFAULT_MODEL="anthropic/claude-sonnet-4-20250514"

.env file

You can create a .env file in your project directory:


## Build from source

```bash
bun install
bun run build:bin
# Binary will be at dist/kelp

Development

bun dev "your prompt here"

License

MIT