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

camelagi

v0.5.51

Published

Personal AI agent powered by Claude Agent SDK — manage everything from Telegram

Readme


Install in 30 seconds

npm i -g camelagi
camel setup
camel serve

Use /newagent in Telegram to create your first AI agent.


Why CamelAGI

  • Dual SDK runtime — Claude Agent SDK + Cursor SDK, switchable per session
  • Run Claude Code remotely from Telegram
  • Create and manage multiple AI agents
  • Self-hosted with full control
  • Multi-provider support (Anthropic, OpenRouter, or any OpenAI-compatible endpoint)
  • Alternative to OpenClaw

Quick Start

Requirements: Node.js 23+

| Install | Setup & Run | Update | |:--------|:------------|:-------| | npm i -g camelagi | camel setup | camel update |

camel setup
camel serve
camel chat

Agent Modes

1. LLM Agent (API-based)

Uses your API key (Anthropic, OpenAI, OpenRouter, etc.) to run an AI agent through CamelAGI runtime.

  1. Open admin bot in Telegram
  2. Send /newagent
  3. Pick name → choose model → paste bot token
  4. Start chatting

2. Claude Code Agent (local CLI)

Runs Claude Code directly on your machine, remote-controlled from Telegram. Same experience as the Claude Code CLI, but from your phone.

Requires: Claude Code installed and logged in on the machine running CamelAGI.

npm i -g @anthropic-ai/claude-code
claude login
  1. Open admin bot → /newagent → select Claude Code (local CLI) → paste bot token
  2. Or use /claudecode in any existing agent bot to start on the fly

What Claude Code mode can do

| Category | Capabilities | |----------|-------------| | Session | Start, stop, new session, resume previous sessions | | Models | Switch between Sonnet 4.6, Opus 4.6, Haiku 4.5 | | Code Actions | /review, /fix, /test, /commit, /pr, /refactor, /security, /explain, /init, /doc | | Settings | /model, /effort, /workdir, /tools, /prompt, /budget, /adddir, /worktree | | Voice Input | Send voice messages — transcribed and processed by Claude Code | | Directory Browser | Navigate folders via Telegram inline buttons | | Tool Control | Toggle individual tools on/off (Bash, Read, Write, Edit, etc.) | | Hybrid Mode | Claude Code gets CamelAGI context — SOUL.md personality, MEMORY.md, daily notes, skills, MCP servers | | CamelAGI API | Claude Code can access cron jobs, sessions, agents, config via the gateway API | | Streaming | Real-time response streaming via native Telegram sendMessageDraft | | Pinned Status | "Claude Code ON" pinned in chat, dynamic command menu |


Cursor SDK Runtime

CamelAGI supports the Cursor SDK as an alternative agent runtime alongside Claude Agent SDK. Switch between them at any time — each session remembers which runtime it uses.

Setup

Get your Cursor API key from Cursor Dashboard → Integrations.

# ~/.camelagi/config.yaml
cursorApiKey: "crsr_..."
cursorModel: "composer-2"    # optional, defaults to composer-2

Or set the env var: export CURSOR_API_KEY=crsr_...

Switching runtimes

TUI:

/cursor    — switch to Cursor SDK
/claude    — switch back to Claude SDK

REST API:

curl -X POST http://localhost:18305/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "hello", "sdk": "cursor"}'

WebSocket:

{"type": "chat", "message": "hello", "sdk": "cursor"}

Sessions are sticky — the first message sets the runtime, and all subsequent messages on that session use the same one automatically.


AI Admin Agent

An AI-powered admin agent that replaces wizard-based management with natural language. Instead of clicking through menus, just tell it what to do:

"Create 3 agents: first one called Finance for personal finance with telegram token 123:ABC, second one called Dev for development with the github MCP server, third one called Writer with the writing personality template"

Setup

# ~/.camelagi/config.yaml
agents:
  aiadmin:
    name: AI Admin
    adminTools: true
    model: claude-sonnet-4-20250514
    telegram:
      botToken: "YOUR_BOT_TOKEN"
      allowedUsers: [YOUR_USER_ID]

Set adminTools: true on any agent to give it full admin capabilities via 8 AI tools:

| Tool | Actions | What it does | |------|---------|-------------| | admin_agents | list, create, update, delete | Full agent lifecycle with soul templates | | admin_config | get, set, setup_provider | View/modify config, one-shot provider setup | | admin_mcp | list, add, remove | Manage MCP servers (stdio/http/sse) | | admin_soul | read, write | Read/write agent SOUL.md personality | | admin_bot | status, start, stop, restart | Telegram bot lifecycle | | admin_sessions | list, clear | View and bulk-delete sessions | | admin_usage | — | Per-agent token usage and costs | | admin_pairing | list, approve, deny | Manage user access requests |

The AI admin works alongside the existing wizard admin bot — use both, or just one.


Features

| Feature | Description | |---|---| | Dual SDK Runtime | Claude Agent SDK + Cursor SDK, switchable per session | | AI Admin Agent | Natural language agent management with admin tools | | Claude Code via Telegram | Run Claude Code from your phone | | Telegram Admin Bot | Create and manage agents | | Telegram Agent Bots | One bot per agent | | Discord Bots | Mention-based Discord support | | Terminal UI | Full TUI with streaming | | Agent Memory | MEMORY.md + daily journals | | Voice Transcription | Voice to text support | | MCP Servers | External tool servers | | Extended Thinking | Low / medium / high | | Cron Jobs | Scheduled AI tasks | | Usage Tracking | Cost + token monitoring | | Agent Cloning | Duplicate agent config | | Tool Approvals | Human approval flow | | Web Dashboard | Browser-based control panel |


Web Dashboard

A full 15-page dashboard served locally from the gateway. ChatGPT-style UI with light/dark mode.

camel serve
# Open http://127.0.0.1:18305/dashboard

Auto-connects to the gateway — no URL or token needed for local use.

| Page | What it does | |------|-------------| | Overview | Health stats, uptime, active runs, lane utilization, agents | | Chat | Real-time streaming, tool cards, thinking blocks, markdown, agent/model/thinking/effort selectors, session sidebar, file upload | | Agents | Create, delete, clone agents. Edit SOUL.md inline | | Sessions | Browse history, view messages, delete, export as markdown | | Config | Editable form (model, provider, thinking, effort, system prompt) + raw JSON | | Monitor | Live WebSocket event feed | | Workspace | Edit SOUL.md, TOOLS.md, MEMORY.md, HEARTBEAT.md per agent. Browse daily memory notes | | Cron Jobs | View scheduled tasks with status | | Skills | List installed skills | | Pairing | Approve/deny user access requests | | MCP Servers | Global + per-agent MCP server listing | | Channels | Telegram/Discord bot status | | Voice | Configure transcription provider (Groq/OpenAI/Deepgram) | | Logs | Auto-refreshing server request log | | Settings | Gateway URL/token (for remote connections) |

For remote access, use Tailscale: camel tailscale serve or camel tailscale funnel.


Channels

CamelAGI works across:

  • Telegram
  • Discord
  • Terminal
  • Claude Code via Telegram
  • Web Dashboard

All channels share the same runtime, tools, and memory.


Admin Bot Commands

| Command | Description | |---|---| | /setup | Configure provider | | /newagent | Create agent | | /agents | List agents | | /agent | Edit config | | /mcp | Manage MCP servers | | /usage | Usage summary | | /status | System health |


Agent Bot Commands

| Command | Description | |---|---| | /clear | Clear chat | | /compact | Compact history | | /brief | Toggle short replies | | /model | Switch model | | /think | Thinking depth | | /session | Session info | | /usage | Token usage |


CLI Commands

camel <command>

| Command | Description | |---|---| | setup | Setup wizard | | serve | Start server | | chat | Terminal UI | | agents | List agents | | config | Edit config | | cron | Manage cron jobs | | doctor | Health checks | | update | Update CamelAGI |


Why CamelAGI vs OpenClaw

| | CamelAGI | OpenClaw | |---|---|---| | Runtime | Claude Agent SDK | pi-agent-core | | Telegram Control | Native | Limited | | Claude Code | Built-in | No | | Memory | Two-tier markdown | Vector DB | | Updates | Anthropic runtime improvements | Manual abstraction updates |


Configuration

provider: anthropic
model: claude-sonnet-4
telegramBotToken: "123456:ABC"

agents:
  coder:
    model: claude-sonnet-4
    thinkingLevel: medium

Architecture

Inbound message (TUI / REST / WS / Telegram)
→ SDK resolution (Claude or Cursor, sticky per session)
→ Queue check
→ Context load + compaction
→ Agent execution (Claude Agent SDK or Cursor SDK via gateway)
→ Tool use
→ Save session (with SDK tag)

Documentation

  • DOCS.md
  • GUIDE.md
  • featuresDocs/

License

MIT