@getoncall/node
v0.1.3
Published
OnCall server-side error monitoring for Node.js — Express, Hono, Next.js, and Deno adapters.
Maintainers
Readme
@getoncall/node
Server-side error monitoring for Node — with plain-English diagnoses and verified fix PRs.
OnCall watches your backend, catches the exceptions your users actually hit, explains them in plain English (no stack-trace archaeology), and — when you approve — opens a pull request that fixes the bug and confirms the fix held in production. Built for the apps people ship with Lovable, Bolt, v0, Cursor, and Replit.
- 🟢 Zero dependencies, tiny, framework-agnostic
- 🧩 First-class Express, Hono, Next.js, and Deno adapters
- 🔒 Uses your secret ingest key (
onc_sk_…) from an env var — never a public key
Install — just ask your agent
In Cursor, Claude, Lovable, v0, or any AI editor, paste this (swap in your key):
Add OnCall server-side monitoring to this app: install
@getoncall/node, callinitOncall({ key: process.env.ONCALL_SECRET_KEY })once at startup, and register the framework error handler after my routes. SetONCALL_SECRET_KEYtoonc_sk_your_secret_key.
Connect the OnCall MCP server (npx @getoncall/mcp) and your agent installs and verifies it without you touching the code.
Install
npm install @getoncall/nodeStart OnCall at boot
import { initOncall } from "@getoncall/node";
initOncall({
key: process.env.ONCALL_SECRET_KEY!, // your onc_sk_… secret key
environment: process.env.NODE_ENV,
});Unhandled errors are now captured automatically. Add the framework adapter to catch request errors with route + status context.
Express
import { oncallErrorHandler } from "@getoncall/node/express";
// ...after your routes...
app.use(oncallErrorHandler());Hono
import { oncallErrorHandler } from "@getoncall/node/hono";
app.onError(oncallErrorHandler());Capture manually
import { captureException, flush } from "@getoncall/node";
try {
await chargeCard(order);
} catch (err) {
captureException(err, { route: "/checkout", userId: order.userId });
}
// before a serverless function or script exits:
await flush();Where do I get a key?
Create a project at intaglio.io and copy the secret ingest key (onc_sk_…) from the install screen. Store it in ONCALL_SECRET_KEY — it authenticates your server, so keep it out of source control.
The rest of the family
| Package | For |
|---|---|
| @getoncall/react | Browser errors in React apps |
| @getoncall/next | Next.js App Router (client + server) |
| @getoncall/cli | npx @getoncall/cli init — one command |
| @getoncall/mcp | Let your AI agent install OnCall for you |
Links
- 🌐 Dashboard & docs: intaglio.io
- 🐙 Source: github.com/Booger-Aids/oncall
MIT © OnCall
