github TypeScript re-analysis due

openagentemail/openagentemail

github

Open communication and task handoffs for AI agents — self-hosted email, task threads, approvals, and webhooks over MCP and REST. Apache-2.0.

maintainer
openagentemail
licence
Apache-2.0
first seen
2026-07-30
last seen
2026-09-17
releases · 30d
17
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 25 tools
transport stdio · http verified reported listed in the official MCP registry counts 25 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • mail_list_identities
  • mail_list_messages
  • mail_mark_seen
  • mail_new_identity
  • mail_read_message
  • mail_send
  • mail_wait_for
  • mail_webhook_create
  • mail_webhook_delete
  • mail_webhook_disable
  • mail_webhook_list
  • mail_webhook_test
  • notify_agent
  • notify_check
  • notify_user
  • notify_verify
  • task_claim
  • task_create
  • task_decide
  • task_get
  • task_list
  • task_list_children
  • task_release
  • task_renew
  • task_update
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 612b460 · analyzer v33 · 1d ago

danger signals12

code evidence vv0.7.3 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 401

filesystem 180

  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/correlation-store.ts :1 import { constants, lstat, mkdir, open, readFile, rename, rmdir, stat, unlink, type FileHandle } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/fixture-store.ts :1 import { constants, lstat, mkdir, open, realpath, rename, unlink } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/langgraph.ts :2 import { constants, lstat, mkdir, open, realpath, rename, stat, unlink, type FileHandle } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/openai-agents.ts :1 import { constants, lstat, mkdir, open, readFile, realpath, rename, stat, unlink } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/scenario-cli.ts :1 import { mkdtemp } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/src/scenario-runner.ts :2 import { constants, lstat, mkdir, open, readFile, realpath, rename, stat, unlink } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/correlation-store.test.ts :3 import { access, chmod, mkdtemp, readdir, rename, symlink, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/fixture-store.test.ts :3 import { chmod, mkdtemp, readFile, readdir, rename, symlink, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/fixtures/race-child.ts :1 import { access, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/fixtures/reconcile-child.ts :1 import { readFile, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/input-history-matrix.test.ts :3 import { mkdtemp } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/langgraph.test.ts :3 import { chmod, lstat, mkdtemp, readFile, readdir, rename, symlink, unlink, writeFile } from 'node:fs/promises';
show 28 more
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/lock-boundary-matrix.test.ts :3 import { access, mkdtemp, readFile, rmdir, unlink, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/openai-agents.test.ts :3 import { chmod, mkdir, mkdtemp, readFile, readdir, rename, rmdir, symlink, unlink, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/persisted-string-matrix.test.ts :3 import { mkdtemp, readFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/race-process.test.ts :3 import { mkdtemp } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/reconcile-process.test.ts :3 import { mkdtemp, readFile, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/retry.test.ts :3 import { mkdtemp } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/sanitize.test.ts :7 import { mkdtemp, readFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/adapters/test/scenario-runner.test.ts :3 import { chmod, lstat, mkdir, mkdtemp, readFile, readdir, rename, symlink, unlink, writeFile } from 'node:fs/promises';
  • fs (weak) openagentemail-openagentemail-612b460/examples/listener/listener.mjs :13 import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/config.ts :4 import { closeSync, constants, existsSync, fstatSync, openSync, readFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/dedup.ts :25 } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/fs-replace.ts :3 import { lstatSync, statSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/readiness.ts :3 import { accessSync, constants, lstatSync, statSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/dedup-durability.test.ts :2 import { existsSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/fixtures/fake-orca-context.mjs :7 import { appendFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/fixtures/fake-orca.mjs :7 import { appendFileSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/helpers.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/monitor-alert.test.ts :2 import { chmodSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/proxy-template.test.ts :2 import { readFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r10-gate.test.ts :3 import { chmodSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r12-gate.test.ts :2 import { chmodSync, existsSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r13-gate.test.ts :2 import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r14-gate.test.ts :2 import { chmodSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-fifo-probe.mjs :4 import { mkdtempSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-gate.test.ts :2 import { chmodSync, mkdirSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-sticky-replace.mjs :15 } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-dirsync-fifo-probe.mjs :4 import { mkdtempSync, writeFileSync } from 'node:fs';
  • fs (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-gate.test.ts :2 import { existsSync, writeFileSync } from 'node:fs';

140 more not shown — this panel samples each group; the count above is the real total.

shell / exec 60

  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/correlation-store.test.ts :4 import { execFile } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/langgraph.test.ts :4 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/lock-boundary-matrix.test.ts :4 import { spawn } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/openai-agents.test.ts :4 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/race-process.test.ts :6 import { spawn } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/adapters/test/reconcile-process.test.ts :6 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/wake.ts :11 import { spawn, type ChildProcess } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/fixtures/fake-orca.mjs :6 import { spawn } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/monitor-alert.test.ts :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r10-gate.test.ts :2 import { spawn } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r12-gate.test.ts :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r13-gate.test.ts :4 import { spawnSync } from 'node:child_process';
show 28 more
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-fifo-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-sticky-replace.mjs :16 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-dirsync-fifo-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-secret-fifo-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r16-unacked-fifo-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r17-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r17-legacy-tmp-fifo-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r18-dirsync-fifo-get-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r18-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r19-dirsync-fifo-target-probe.mjs :5 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r19-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r21-dirsync-sticky.mjs :17 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r21-gate.test.ts :8 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r3-gate.test.ts :4 import { spawn } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r5-gate.test.ts :4 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r6-gate.test.ts :4 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r7-gate.test.ts :7 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r8-gate.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/readiness-config.test.ts :3 import { spawnSync } from 'node:child_process';
  • shell openagentemail-openagentemail-612b460/packages/api/dev/acceptance.mjs :10 import { spawn } from 'node:child_process';
  • shell openagentemail-openagentemail-612b460/packages/api/dev/phone-acceptance.mjs :12 import { execFileSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/packages/api/scripts/compare-ui-gold.ts :11 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/packages/api/scripts/run-approval-python-verifier.mjs :2 import { spawnSync } from 'node:child_process';
  • shell (weak) openagentemail-openagentemail-612b460/packages/api/scripts/verify-pairing-qr.ts :22 const probe = Bun.spawnSync([candidate, '-c', 'import cv2; cv2.QRCodeDetector()'], {
  • shell (weak) openagentemail-openagentemail-612b460/packages/api/test/approval-canonical-python.test.ts :7 const verification = Bun.spawnSync({
  • shell (weak) openagentemail-openagentemail-612b460/packages/api/test/approval-publication.test.ts :21 const implicitWrite = Bun.spawnSync({ cmd: ['node', fixtureSyncScript], stdout: 'pipe', stderr: 'pipe' });

20 more not shown — this panel samples each group; the count above is the real total.

network 62

  • net (weak) openagentemail-openagentemail-612b460/examples/adapters/test/scenario-runner.test.ts :55 const input = await scenario('input-resume'); const service = createLocalFakeService(input, environment); const identity = await service.fetch('http://127.0.0.1/v1/identities', { method: 'POST', heade
  • net (weak) openagentemail-openagentemail-612b460/examples/listener/listener.mjs :27 const response = await fetch(`${api}${path}`, {
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/alert.ts :36 const res = await fetch(url, {
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/config.ts :3 import { maxHeaderSize as runtimeMaxHeaderSize } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/monitor.ts :8 import { request as httpRequest } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/src/server.ts :3 import { createServer, type IncomingMessage, type Server, type ServerResponse } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/helpers.ts :142 const res = await fetch(`${receiver.url()}/hooks/${options.routeKey ?? 'canary'}`, {
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/http-integration.test.ts :23 const health = await fetch(`${receiver.url()}/health`);
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/mapping-injection.test.ts :88 const ready = await fetch(`${receiver.url()}/ready`);
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/monitor-alert.test.ts :4 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r10-gate.test.ts :4 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r11-gate.test.ts :2 import { createConnection, createServer } from 'node:net';
show 28 more
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r12-gate.test.ts :3 import { createConnection } from 'node:net';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r12-ipv6-probe.mjs :4 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r14-gate.test.ts :3 import { createConnection } from 'node:net';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r20-gate.test.ts :3 import { createServer as createNetServer, type Socket } from 'node:net';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r3-gate.test.ts :3 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r4-gate.test.ts :3 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r7-gate.test.ts :2 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r7-large-header.mjs :4 import { createConnection } from 'node:net';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/r8-gate.test.ts :2 import { createServer } from 'node:http';
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/readiness-config.test.ts :75 const ready = await fetch(`${receiver.url()}/ready`);
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/request-alert-contract.test.ts :17 const res = await fetch(`${receiver.url()}/hooks/canary`, {
  • net (weak) openagentemail-openagentemail-612b460/examples/webhook-wake/test/route-decode.test.ts :2 import { request } from 'node:http';
  • net openagentemail-openagentemail-612b460/packages/api/dev/acceptance.mjs :30 const response = await fetch(`${candidate}/ui`, { signal: AbortSignal.timeout(2000) });
  • net openagentemail-openagentemail-612b460/packages/api/dev/phone-acceptance.mjs :28 const response = await fetch(`${api}${path}`, {
  • net openagentemail-openagentemail-612b460/packages/api/dev/task-acceptance.mjs :17 const response = await fetch(`${api}${path}`, {
  • net openagentemail-openagentemail-612b460/packages/api/src/app.ts :91 return app.fetch(request);
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/imap.ts :495 for await (const msg of client.fetch(
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/mailserver-reconnect.ts :2 import { isIP } from 'node:net';
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/net.ts :13 import { isIP } from 'node:net';
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/notification-watcher.ts :1562 for await (const message of client.fetch(
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/notify.ts :61 * immediately before fetch(). Return false to abort without sending.
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/oauth-cimd.ts :13 import { isIP } from 'node:net';
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/pinned-fetch.ts :13 import http from 'node:http';
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/tasks-internal.ts :1736 for await (const message of client.fetch(
  • net openagentemail-openagentemail-612b460/packages/api/src/lib/webhook-delivery.ts :26 import { isIP } from 'node:net';
  • net openagentemail-openagentemail-612b460/packages/api/src/mcp/http.ts :421 mcpHandler.fetch(sdkRequest, {
  • net openagentemail-openagentemail-612b460/packages/api/src/ui/client/api.js :136 var response = await fetch(path, init);
  • net openagentemail-openagentemail-612b460/packages/api/src/ui/client/app.js :625 var response = await fetch('/ui/api/session', {

22 more not shown — this panel samples each group; the count above is the real total.

secrets 17

  • secrets (weak) openagentemail-openagentemail-612b460/examples/adapters/src/openai-agents.ts :165 const authorized = dependencies.authorized ?? Boolean(process.env.OPENAI_API_KEY); if (!authorized) return { status: 'skipped-no-key' };
  • secrets (weak) openagentemail-openagentemail-612b460/examples/listener/listener.mjs :17 const key = process.env.OPENAGENTEMAIL_API_KEY;
  • secrets openagentemail-openagentemail-612b460/packages/api/dev/phone-acceptance.mjs :17 const adminKey = process.env.PHONE_ACCEPTANCE_ADMIN_KEY;
  • secrets openagentemail-openagentemail-612b460/packages/api/dev/task-acceptance.mjs :11 const adminKey = process.env.TASK_ACCEPTANCE_ADMIN_KEY;
  • secrets openagentemail-openagentemail-612b460/packages/api/src/mcp/client.ts :299 options?.sendSourceSecret ?? process.env.TASK_SIGNING_SECRET ?? process.env.SMTP_PASS;
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/notification-log.test.ts :14 process.env.TASK_SIGNING_SECRET = 'notify-log-test-secret';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/notify.test.ts :15 process.env.NTFY_ADMIN_PASSWORD = 'ntfy-admin-secret';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/send-history.test.ts :15 const originalEnvTaskSecret = process.env.TASK_SIGNING_SECRET;
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/send-log.test.ts :13 process.env.TASK_SIGNING_SECRET = 'send-log-test-secret';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/task-lease-sigkill.test.ts :11 process.env.TASK_SIGNING_SECRET = FIXTURE_SIGNING_SECRET;
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/webhook-delivery.test.ts :7 process.env.TASK_SIGNING_SECRET = '01234567890123456789012345678901';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/webhook-mcp.test.ts :7 process.env.TASK_SIGNING_SECRET = '01234567890123456789012345678901';
show 5 more
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/webhook-sink.test.ts :7 process.env.TASK_SIGNING_SECRET = '01234567890123456789012345678901';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/webhook-store.test.ts :7 process.env.TASK_SIGNING_SECRET = '01234567890123456789012345678901';
  • secrets (weak) openagentemail-openagentemail-612b460/packages/api/test/webhooks-route.test.ts :7 process.env.TASK_SIGNING_SECRET = '01234567890123456789012345678901';
  • secrets openagentemail-openagentemail-612b460/packages/mcp/src/main.ts :24 const apiKey = process.env.OPENAGENTEMAIL_API_KEY;
  • secrets (weak) openagentemail-openagentemail-612b460/packages/mcp/test/tools.test.ts :42 process.env.OPENAGENTEMAIL_API_KEY = "test-key";

tool registrations 25

  • mail_new_identity openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :341
  • mail_list_identities openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :392
  • mail_list_messages openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :404
  • mail_read_message openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :436
  • mail_mark_seen openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :456
  • mail_wait_for openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :480
  • mail_send openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :528
  • notify_user openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :556
  • notify_agent openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :571
  • notify_check openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :592
  • notify_verify openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :608
  • task_create openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :621
show 13 more
  • task_list_children openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :658
  • task_list openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :675
  • task_get openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :690
  • task_update openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :711
  • task_decide openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :731
  • task_claim openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :747
  • task_renew openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :763
  • task_release openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :780
  • mail_webhook_list openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :797
  • mail_webhook_create openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :812
  • mail_webhook_delete openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :844
  • mail_webhook_test openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :859
  • mail_webhook_disable openagentemail-openagentemail-612b460/packages/api/src/mcp/tools.ts :874

install hooks 3

  • prepack openagentemail-openagentemail-612b460/packages/mcp/package.json :21 node ../api/scripts/sync-approval-publication.mjs --check
  • prepublishOnly openagentemail-openagentemail-612b460/packages/mcp/package.json :22 bun run check:approval-publication && bun run build
  • prepublishOnly openagentemail-openagentemail-612b460/packages/setup/package.json :16 bun run build

declared dependencies 8

  • @langchain/core@1.1.48
  • @langchain/langgraph@1.4.13
  • @langchain/langgraph-checkpoint-sqlite@1.0.4
  • @openai/agents@0.17.0
  • zod@4.2.0
  • @types/node@22.13.4
  • tsx@4.23.13
  • typescript@5.7.3

obfuscation 1

  • dynamic require()/import() openagentemail-openagentemail-612b460/packages/api/test/wait-clock-fallback-warn.test.ts :34 const mod = await import(`../src/lib/wait-clock.ts?warn_once=${Date.now()}`);

transport_posture 3

  • network-listening, binds all interfaces, no auth detected openagentemail-openagentemail-612b460/examples/webhook-wake/test/r15-gate.test.ts :52 expect(() => parseFileConfig({ ...base, listen: { host: '0.0.0.0', port: 0 } })).toThrow(
  • network-listening, binds all interfaces, no auth detected openagentemail-openagentemail-612b460/examples/webhook-wake/test/r21-gate.test.ts :236 expect(() => parseFileConfig({ ...base, listen: { host: '0.0.0.0', port: 0 } })).toThrow(
  • network-listening, binds all interfaces, no auth detected openagentemail-openagentemail-612b460/examples/webhook-wake/test/r3-gate.test.ts :315 const report = inspectReadiness(testConfig({ listen: { host: '0.0.0.0', port: 0 } }));