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

@codmir/overseer

v1.1.0

Published

Overseer™ - Wake-Up Call AI Agent for autonomous task management and monitoring

Readme

Overseer™ - Wake-Up Call AI

"Wake-Up Call" is a trademark of Codmir

An autonomous AI agent that wakes up to work on tickets, provide status reports, and monitor your projects.

    ╔══════════════════════════════════════════════════════════╗
    ║                                                          ║
    ║   ☀️  OVERSEER WAKE-UP CALL                              ║
    ║                                                          ║
    ║   "Always watching, always ready"                        ║
    ║                                                          ║
    ╚══════════════════════════════════════════════════════════╝

Concept

Overseer is an AI that:

  • Sleeps when there's nothing to do
  • Wakes up on triggers (schedule, new ticket, mention, deadline)
  • Works on assigned tasks autonomously
  • Reports status to keep the team informed
  • Goes back to sleep when done

Installation

pnpm add @codmir/overseer

Quick Start

import { createOverseer, createScheduler } from "@codmir/overseer";

// Create Overseer instance
const overseer = createOverseer({
  organizationId: "org-123",
  enabledTriggers: ["scheduled", "ticket_created", "mention", "standup"],
  autoWork: {
    enabled: true,
    maxTasksPerWakeUp: 3,
    requireApproval: true,
    approvalTimeout: 30,
  },
});

// Listen to events
overseer.on("*", (event) => {
  console.log(`[${event.type}] ${event.message}`);
});

// Create scheduler for automatic wake-ups
const scheduler = createScheduler(overseer);
scheduler.start();

// Manual wake-up
await overseer.wakeUp("manual", { reason: "Testing" });

Wake-Up Triggers

| Trigger | Description | | ---------------- | ------------------------------- | | scheduled | Periodic cron-based wake-up | | ticket_created | New ticket assigned to Overseer | | ticket_updated | Ticket status changed | | mention | @overseer mentioned in comment | | deadline | Deadline approaching | | alert | System alert received | | manual | User requested wake-up | | session_idle | Session inactive too long | | build_failed | CI/CD failure | | pr_review | PR needs review | | standup | Daily standup time |

Default Schedules

// Morning check-in (9 AM Mon-Fri)
{ cron: '0 9 * * 1-5', tasks: ['standup_prep', 'monitoring'] }

// Ticket sweep (every 4 hours)
{ cron: '0 */4 * * *', tasks: ['ticket_work'] }

Task Types

| Task | Description | | ------------------- | ----------------------- | | ticket_work | Work on assigned ticket | | code_review | Review code/PR | | bug_fix | Fix a bug | | feature_implement | Implement feature | | documentation | Write docs | | status_report | Generate report | | standup_prep | Prepare standup | | cleanup | Code cleanup | | monitoring | Monitor systems | | research | Research/investigate |

Status Reports

const report = await overseer.generateStatusReport("daily");

console.log(report.summary);
console.log("Highlights:", report.highlights);
console.log("Blockers:", report.blockers);
console.log("Recommendations:", report.recommendations);

Capabilities Configuration

Control what Overseer can do:

const overseer = createOverseer({
  capabilities: {
    canWriteCode: true, // Can make code changes
    canCreateBranches: true, // Can create git branches
    canCreatePRs: true, // Can create pull requests
    canMerge: false, // Cannot merge PRs
    canDeploy: false, // Cannot deploy
    canCloseTickets: false, // Cannot close tickets
    canAssignTickets: true, // Can assign tickets
  },
});

Approval System

When requireApproval is enabled:

overseer.on("approval_requested", (event) => {
  console.log(`Approval needed for: ${event.data.task.title}`);

  // Approve or deny
  overseer.approve(event.taskId);
  // or
  overseer.deny(event.taskId, "Not now");
});

Webhook Integration

import { processWebhook } from "@codmir/overseer";

// Handle incoming webhook
app.post("/webhooks/overseer", async (req, res) => {
  const result = await processWebhook(overseer, req.body, {
    secret: process.env.WEBHOOK_SECRET,
    enabledSources: ["github", "jira", "slack"],
  });

  res.json(result);
});

Events

overseer.on("wake_up", (e) => console.log("☀️ Waking up"));
overseer.on("sleep", (e) => console.log("🌙 Going to sleep"));
overseer.on("task_start", (e) => console.log("🚀 Starting task"));
overseer.on("task_complete", (e) => console.log("✅ Task done"));
overseer.on("task_fail", (e) => console.log("❌ Task failed"));
overseer.on("report_generated", (e) => console.log("📊 Report ready"));

🔴 Error Tracking (Sentry-like)

Track errors across your apps with automatic grouping and issue creation:

import { createErrorTracker, createIssueManager, GitHubIssueProvider } from "@codmir/overseer";

// Initialize error tracker
const errorTracker = createErrorTracker({
  service: "web-app",
  environment: "production",
  release: "1.2.3",
});

// Capture errors
errorTracker.captureError(new Error("Something went wrong"), {
  tags: { component: "checkout" },
  extra: { cartId: "123" },
});

// Set user context
errorTracker.setUser({ id: "user-123", email: "[email protected]" });

// Add breadcrumbs
errorTracker.addBreadcrumb({
  type: "navigation",
  category: "router",
  message: "/checkout",
  level: "info",
});

// Get error stats
const stats = errorTracker.getStats("24h");
console.log(`${stats.totalErrors} errors, ${stats.affectedUsers} users affected`);

// Auto-create GitHub issues
const issueManager = createIssueManager();
issueManager.registerProvider(new GitHubIssueProvider("owner", "repo", "token"));
issueManager.setDefaultConfig({
  provider: "github",
  projectId: "owner/repo",
  autoCreate: true,
  labels: ["bug", "auto-created"],
});

// Handle new error groups
errorTracker.onNewErrorGroup(async (group) => {
  await issueManager.createFromErrorGroup(group);
});

🎬 Session Replay

Record and playback user sessions for debugging:

import { createReplayRecorder } from "@codmir/overseer";

const replay = createReplayRecorder({
  sessionSampleRate: 0.1, // 10% of sessions
  errorSampleRate: 1.0, // 100% of error sessions
  privacy: {
    maskAllInputs: false,
    maskInputTypes: ["password", "credit-card"],
    maskSelectors: [".sensitive"],
  },
});

// Start recording
const sessionId = replay.start({ userId: "user-123" });

// Link errors to replay
replay.markError("error-id-123");

// Add custom events
replay.addCustomEvent("checkout_started", { cartTotal: 99.99 });

// Handle segments for upload
replay.onSegment((segment) => {
  uploadToServer(segment);
});

// Stop recording
const session = replay.stop();

📊 Monitoring & Metrics

Track service health and performance:

import { createMetricsCollector, createHealthMonitor, createAlertManager } from "@codmir/overseer";

// Metrics
const metrics = createMetricsCollector("api-service");

metrics.increment("http.requests.total");
metrics.gauge("queue.depth", 42);
metrics.histogram("http.latency", 150);

// Time operations
const result = await metrics.timerAsync("db.query", async () => {
  return await db.query("SELECT ...");
});

// Health monitoring
const health = createHealthMonitor("api-service");

health.register("database", async () => ({
  name: "database",
  status: (await db.ping()) ? "healthy" : "unhealthy",
}));

health.register("redis", async () => ({
  name: "redis",
  status: (await redis.ping()) ? "healthy" : "unhealthy",
}));

// Get health status
const status = await health.getHealth(metrics);

// Alerts
const alerts = createAlertManager("api-service");

alerts.addRule({
  name: "High Error Rate",
  metric: "http.errors.total",
  condition: "gt",
  threshold: 100,
  duration: 60000, // 1 minute
  severity: "critical",
});

alerts.onAlertFired((alert) => {
  notifySlack(`🚨 ${alert.name}: ${alert.message}`);
});

🖥️ Client SDK (Browser, Desktop, Voice)

Unified SDK for all platforms:

import { createOverseerClient } from "@codmir/overseer";

const overseer = createOverseerClient({
  dsn: "https://api.codmir.com/overseer",
  service: "desktop-app",
  environment: "production",
  release: "1.0.0",

  // Features
  enableReplay: true,
  enableVoiceTracking: true,
  enablePerformance: true,
});

// Set user
overseer.setUser({ id: "user-123" });

// Capture errors
overseer.captureError(error);

// Track voice commands
overseer.trackVoiceCommand("navigate", {
  transcript: "go to dashboard",
  confidence: 0.95,
  duration: 1200,
  result: "success",
});

// Voice session
overseer.startVoiceSession();
// ... commands ...
const commands = overseer.endVoiceSession();

// Performance
await overseer.timeOperation("api_call", async () => {
  return fetch("/api/data");
});

// Cleanup
await overseer.close();

React Integration

import { useErrorBoundary, usePageTracking, useVoiceTracking } from "@codmir/overseer";

function MyComponent() {
  // Track page views
  usePageTracking("Dashboard");

  // Voice tracking
  const voice = useVoiceTracking();

  const handleVoiceCommand = (transcript: string) => {
    voice.track("search", transcript, 0.92, 1500);
  };

  return <div>...</div>;
}

Architecture

                    ┌─────────────────────────────────────┐
                    │           OVERSEER                   │
                    │       "Wake-Up Call" AI              │
                    └─────────────────────────────────────┘
                                    │
            ┌───────────────────────┼───────────────────────┐
            │                       │                       │
            ▼                       ▼                       ▼
    ┌───────────────┐      ┌───────────────┐      ┌───────────────┐
    │   SCHEDULER   │      │     AGENT     │      │   REPORTER    │
    │               │      │               │      │               │
    │ • Cron jobs   │      │ • Task queue  │      │ • Daily       │
    │ • Webhooks    │─────▶│ • Execution   │─────▶│ • Weekly      │
    │ • Triggers    │      │ • Approval    │      │ • Sprint      │
    └───────────────┘      └───────────────┘      └───────────────┘
                                    │
                                    ▼
                    ┌─────────────────────────────────────┐
                    │          INTEGRATIONS               │
                    │                                     │
                    │  GitHub • Jira • Slack • Linear    │
                    │  Session • Projects • Tickets      │
                    └─────────────────────────────────────┘

License

Proprietary - © Codmir

"Wake-Up Call" and "Overseer" are trademarks of Codmir.