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

@bell_008/create-agent-app

v0.1.0

Published

Start with a minimal TypeScript LangChain CLI agent, then grow it into an API or chat app.

Readme

create-agent-app

Start with a minimal TypeScript LangChain CLI agent, then grow it into an API or chat app.

pnpm dlx @bell_008/create-agent-app my-agent

Quick Start

pnpm dlx @bell_008/create-agent-app my-agent
cd my-agent
cp .env.example .env
pnpm install
pnpm run typecheck
pnpm run test
pnpm run dev "What's the weather in San Francisco?"

Set OPENAI_API_KEY in .env before running the agent.

Why

LangChain and LangGraph already provide strong TypeScript SDKs, examples, and a LangGraph Server template via npm create langgraph.

create-agent-app focuses on a different path: app-first TypeScript agent projects. Start with a minimal CLI createAgent core, then choose whether you want an HTTP API, a Next.js chat shell, or a deployable single-user product shell.

Use npm create langgraph when you want a LangGraph Server project first. Use create-agent-app when you want a TypeScript agent app that can start small and grow into a product shape.

Want A Web App?

Generate a deployable single-user chat product shell with local Markdown RAG:

pnpm dlx @bell_008/create-agent-app my-chat \
  --template agent-chat-product \
  --capability rag \
  --provider openai \
  --package-manager pnpm \
  --yes
cd my-chat
cp .env.example .env
pnpm install
pnpm run ingest
pnpm run dev

Open http://localhost:3000. The generated project includes data/company-handbook.md, a search_knowledge_base tool, and Sources in the Web UI when the agent uses retrieved context.

Templates

| Template | Shape | Use it for | | --- | --- | --- | | basic-agent | CLI agent core | Learning createAgent, typed tools, env setup, tests | | api-agent | HTTP API | Calling the agent from an existing frontend or backend | | web-chat-agent | Next.js chat app | Teaching, demos, and lightweight prototypes | | agent-chat-product | Next.js product shell | A deployable single-user chat app starting point |

Capabilities

Capabilities add agent behavior without changing the product shell.

| Capability | What it adds | | --- | --- | | rag | Local Markdown knowledge base, sample handbook, search_knowledge_base tool, and pnpm run ingest |

Example:

pnpm dlx @bell_008/create-agent-app my-agent --template agent-chat-product --capability rag --provider openai --package-manager pnpm --yes

Product Chat Example

pnpm dlx @bell_008/create-agent-app my-chat --template agent-chat-product --provider openai --package-manager pnpm --yes
cd my-chat
cp .env.example .env
pnpm install
pnpm run dev

Open http://localhost:3000.

The product shell includes:

  • Next.js app router
  • Streaming /api/chat route
  • Browser message history
  • Loading, error, clear, and abort states
  • Vercel deployment notes
  • LangSmith-ready env variables

It intentionally does not include auth, billing, a database, or multi-user conversation persistence.

RAG Example

pnpm dlx @bell_008/create-agent-app my-rag-chat --template agent-chat-product --capability rag --provider openai --package-manager pnpm --yes
cd my-rag-chat
cp .env.example .env
pnpm install
pnpm run ingest
pnpm run dev

Replace src/rag/retrieve.ts when you are ready to use pgvector, Pinecone, Supabase, or another vector store.

Non-Interactive Usage

pnpm dlx @bell_008/create-agent-app my-agent \
  --template web-chat-agent \
  --capability rag \
  --provider openai \
  --package-manager pnpm \
  --yes

Template Internals

The generator composes templates from reusable parts:

templates/parts/agent-core
templates/parts/cli-shell
templates/parts/api-shell
templates/parts/next-chat-shell
templates/parts/product-chat-shell
templates/capabilities/rag

This keeps every template on the same agent core while allowing different product shells.

Development

pnpm install
pnpm run typecheck
pnpm test
pnpm run test:generated

test:generated builds the CLI and verifies that every public template can generate the expected files. To also install and test each generated project, run:

VERIFY_GENERATED_INSTALL=1 pnpm run test:generated

Publish Check

npm_config_cache=/private/tmp/create-agent-app-npm-cache pnpm run pack:check

The temporary npm cache avoids local npm cache permission issues.

Package Name

This package is published as @bell_008/create-agent-app.

The unscoped npm package name create-agent-app is already published by another owner, so the README uses pnpm dlx @bell_008/create-agent-app as the stable invocation.

License

MIT