github TypeScript analyzed a491a4e

OraclePersonal/Oracle

github

Oracle Assistant — MCP-powered AI assistant with persistent memory, knowledge base, web access, and multi-agent coordination for Claude Code, opencode, and other agents.

maintainer
OraclePersonal
license
first seen
2026-07-19
last seen
2026-07-19
releases · 30d
0
short id

Drift inferred · capture-to-capture

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

capabilities 58 tools
transport stdio · http counts 58 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • oracle_agent
  • oracle_agent_checkpoint_delete
  • oracle_agent_checkpoints
  • oracle_ask
  • oracle_awareness_show
  • oracle_coordination_recover
  • oracle_docs_add
  • oracle_docs_remove
  • oracle_docs_search
  • oracle_doctor
  • oracle_github_api
  • oracle_github_comment
  • oracle_github_issue_get
  • oracle_github_issue_list
  • oracle_github_pr_diff
  • oracle_github_pr_files
  • oracle_github_pr_get
  • oracle_github_pr_list
  • oracle_github_pr_review
  • oracle_github_pr_review_submit
  • oracle_github_search
  • oracle_history_search
  • oracle_history_sources
  • oracle_identity_show
  • oracle_init
  • oracle_memory_maintain
  • oracle_memory_remember
  • oracle_memory_search
  • oracle_memory_update
  • oracle_msg_ack
  • oracle_msg_agents
  • oracle_msg_heartbeat
  • oracle_msg_inbox
  • oracle_msg_register
  • oracle_msg_search
  • oracle_msg_send
  • oracle_msg_stale
  • oracle_msg_thread
  • oracle_msg_unregister
  • oracle_oracle_list
  • oracle_oracle_register
  • oracle_relay
  • oracle_run
  • oracle_session_get
  • oracle_sessions
  • oracle_task_board
  • oracle_task_breakdown
  • oracle_task_checklist
  • oracle_task_close
  • oracle_task_create
  • oracle_task_get
  • oracle_task_list
  • oracle_task_propose
  • oracle_task_submit
  • oracle_task_update
  • oracle_task_vote
  • oracle_web_fetch
  • oracle_web_search
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit a491a4e · analyzer v33 · 1d ago

skills & prompt files 5

danger signals1

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

code files: 282

filesystem 111

  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/oracle-msg-stop-hook.mjs :21 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/oracle-tmux-push-watcher.mjs :23 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/smoke-cli.mjs :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/smoke-runtime.mjs :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/tool-budget.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/scripts/verify-live.mjs :18 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/checkpoint.test.ts :4 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/agent/checkpoint.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/loop.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/policy.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/agent/policy.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/service.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/symlinkEscape.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/agent/tools.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/agent/tools.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/auth/anthropic-oauth.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/auth/store.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/auth/store.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/chrome.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/chrome.ts :3 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/diagnostics.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/imageArtifacts.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/imageArtifacts.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/cli.ts :3 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/companion/delivery.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/companion/notifier.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/companion/service.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/config/project.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/config/project.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/context/astCompressor.test.ts :7 import fs from "node:fs";
  • fs OraclePersonal-Oracle-a491a4e/src/context/astResolver.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/context/bundleService.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/context/files.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/context/files.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/context/gitFiles.ts :3 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/control/approvalStore.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/control/service.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/coordination/service.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/core/consult.composerTool.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/core/consult.continuation.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/core/consult.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/core/memoryContext.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/core/selfMemory.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/core/souls.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/docs/index.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/docs/reader.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/docs/reader.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/history/scan.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/history/scan.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/identity/profile.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/identity/profile.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/mcp.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/mcp/integration.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/mcp/pipeline/flow.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/mcp/response.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/mcp/tools/oracle.ts :3 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/mcp/tools/util.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/adapter.e2e.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/adapter.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/anchors.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/contentIndex.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/entityGraph.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/entityGraph.ts :13 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/evalHarness.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/evalHarness.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/graphView.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/memoryStore.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/prune.visibility.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/recall.scope.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/sqliteMemoryBackend.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/storeSetup.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/memory/supersede.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/memory/vectorStore.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/messaging/registry.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/messaging/store.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/messaging/store.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/messaging/watch.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/observability/audit.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/observability/audit.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/oracles/registry.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/orchestrator/orchestrator.test.ts :4 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/orchestrator/swarmStore.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/orchestrator/swarmStore.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/providers/browser.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/providers/browser.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/providers/codex.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/providers/codex.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/providers/factory.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/providers/factory.ts :3 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/runtime/control.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/coordinationMigration.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/costTracker.test.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/daemon.test.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/database.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/runtime/database.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/schedulerService.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/runtime/state.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/runtime/swarmClient.ts :2 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/runtime/swarmService.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/scheduler/taskStore.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/session/store.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/session/store.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/setup/mcp.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/setup/mcp.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/skills/pragmatist.ts :227 'read file': 'fs.readFileSync() or fs.promises.readFile()',
  • fs OraclePersonal-Oracle-a491a4e/src/skills/registry.ts :1 import fs from "node:fs/promises";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/tasks/store.test.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/tasks/store.ts :1 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/version.ts :1 import { readFileSync } from "node:fs";
  • fs (weak) OraclePersonal-Oracle-a491a4e/src/wiki/compile.test.ts :2 import fs from "node:fs/promises";
  • fs OraclePersonal-Oracle-a491a4e/src/wiki/compile.ts :1 import fs from "node:fs/promises";

shell / exec 21

  • shell (weak) OraclePersonal-Oracle-a491a4e/examples/workflow-dashboard.mjs :19 import { execFileSync } from 'child_process';
  • shell (weak) OraclePersonal-Oracle-a491a4e/scripts/oracle-tmux-push-watcher.mjs :26 import { execFile } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/scripts/smoke-cli.mjs :4 import { spawnSync } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/scripts/smoke-runtime.mjs :4 import { spawnSync } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/scripts/verify-live.mjs :21 import { spawnSync } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/agent/checkpoint.ts :3 import { exec } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/agent/sandbox.ts :1 import { execFile, exec } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/chrome.ts :1 import { spawn, type ChildProcess } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/src/browser/service.test.ts :2 import type { ChildProcess } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/browser/service.ts :1 import { spawn, type ChildProcess, type SpawnOptions } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/cli.ts :1601 const { spawn } = await import("node:child_process");
  • shell (weak) OraclePersonal-Oracle-a491a4e/src/companion/notifier.test.ts :120 const { spawn } = await import("node:child_process");
  • shell OraclePersonal-Oracle-a491a4e/src/companion/notifier.ts :1 import { spawn } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/context/gitFiles.ts :1 import { execFile } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/github/gh.ts :1 import { execFileSync } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/src/memory/adapter.e2e.test.ts :5 import { execFile } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/memory/anchors.ts :4 import { execFile } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/providers/codex.ts :1 import { spawn } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/runtime/control.ts :4 import { spawn } from "node:child_process";
  • shell (weak) OraclePersonal-Oracle-a491a4e/src/sandbox/runner.ts :2 import { spawn } from "node:child_process";
  • shell OraclePersonal-Oracle-a491a4e/src/scheduler/cronEngine.ts :1 import { exec } from "node:child_process";

network 19

  • net OraclePersonal-Oracle-a491a4e/src/auth/anthropic-oauth.ts :45 return fetch(`${AUTH_BASE}${path}`, {
  • net OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/accountMemoryApi.ts :39 const s = await fetch("/api/auth/session", { headers: { accept: "application/json" } });
  • net OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/chrome.ts :4 import http from "node:http";
  • net OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/response.ts :773 const response = await fetch(source, { credentials: "include" });
  • net (weak) OraclePersonal-Oracle-a491a4e/src/backends/chatgpt-browser/windowState.test.ts :1 import http from "node:http";
  • net OraclePersonal-Oracle-a491a4e/src/memory/embeddingProviders.ts :24 const res = await fetch(`${this.endpoint}/api/tags`, { signal: AbortSignal.timeout(2000) });
  • net OraclePersonal-Oracle-a491a4e/src/memory/ollama.ts :16 const res = await fetch(`${OLLAMA_HOST}/api/embeddings`, {
  • net OraclePersonal-Oracle-a491a4e/src/memory/reflect.ts :67 const response = await fetch("https://api.anthropic.com/v1/messages", {
  • net OraclePersonal-Oracle-a491a4e/src/providers/gemini.ts :90 const response = await fetch(url, {
  • net OraclePersonal-Oracle-a491a4e/src/runtime/api.ts :5 } from "node:http";
  • net OraclePersonal-Oracle-a491a4e/src/runtime/client.ts :381 const response = await fetch(new URL(pathname, this.baseUrl()), {
  • net (weak) OraclePersonal-Oracle-a491a4e/src/runtime/daemon.test.ts :66 const unauthorized = await fetch(`http://${state.host}:${state.port}/v1/schedules`);
  • net OraclePersonal-Oracle-a491a4e/src/runtime/swarmClient.ts :245 const response = await fetch(new URL(pathname, this.baseUrl), {
  • net OraclePersonal-Oracle-a491a4e/src/skills/pragmatist.ts :235 'http': 'fetch() (browser) or http (Node)',
  • net OraclePersonal-Oracle-a491a4e/src/web/fetchUrl.ts :2 import net from "node:net";
  • net OraclePersonal-Oracle-a491a4e/src/web/providers/agentql.ts :39 response = await fetch(AGENTQL_ENDPOINT, {
  • net OraclePersonal-Oracle-a491a4e/src/web/providers/brave.ts :23 response = await fetch(url, {
  • net OraclePersonal-Oracle-a491a4e/src/web/providers/firecrawl.ts :22 response = await fetch(url, {
  • net OraclePersonal-Oracle-a491a4e/src/web/providers/tavily.ts :19 response = await fetch(TAVILY_ENDPOINT, {

secrets 21

  • secrets OraclePersonal-Oracle-a491a4e/src/cli.ts :196 remoteToken: options.remoteToken ?? process.env.ORACLE_REMOTE_TOKEN,
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/context/secrets.test.ts :24 "token = process.env.API_TOKEN",
  • secrets OraclePersonal-Oracle-a491a4e/src/mcp/runtime.ts :105 remoteToken: process.env.ORACLE_REMOTE_TOKEN
  • secrets OraclePersonal-Oracle-a491a4e/src/memory/embeddingProviders.ts :187 if (process.env.VOYAGE_API_KEY) {
  • secrets OraclePersonal-Oracle-a491a4e/src/memory/reflect.ts :47 const apiKey = opts.apiKey ?? process.env.ANTHROPIC_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/anthropic.ts :107 apiKey = process.env.ANTHROPIC_API_KEY,
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/azure.ts :25 const apiKey = options.apiKey ?? process.env.AZURE_OPENAI_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/factory.ts :114 return new AnthropicProvider(process.env.ANTHROPIC_API_KEY, oauth);
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/gemini.ts :49 const key = apiKey ?? process.env.GEMINI_API_KEY ?? process.env.GOOGLE_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/openai.ts :86 const key = apiKey ?? process.env.OPENAI_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/providers/openrouter.ts :25 const apiKey = options.apiKey ?? process.env.OPENROUTER_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/fetchUrl.test.ts :137 const originalKey = process.env.FIRECRAWL_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/providers/agentql.test.ts :7 const originalKey = process.env.AGENTQL_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/web/providers/agentql.ts :27 const apiKey = process.env.AGENTQL_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/providers/brave.test.ts :7 const originalKey = process.env.BRAVE_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/web/providers/brave.ts :8 const apiKey = process.env.BRAVE_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/providers/firecrawl.test.ts :7 const originalKey = process.env.FIRECRAWL_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/web/providers/firecrawl.ts :8 const apiKey = process.env.FIRECRAWL_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/providers/tavily.test.ts :7 const originalKey = process.env.TAVILY_API_KEY;
  • secrets OraclePersonal-Oracle-a491a4e/src/web/providers/tavily.ts :8 const apiKey = process.env.TAVILY_API_KEY;
  • secrets (weak) OraclePersonal-Oracle-a491a4e/src/web/search.test.ts :24 process.env.BRAVE_API_KEY = "b";

tool registrations 58

  • oracle_msg_register OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :30
  • oracle_msg_agents OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :69
  • oracle_msg_send OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :90
  • oracle_msg_inbox OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :113
  • oracle_msg_ack OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :158
  • oracle_msg_search OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :177
  • oracle_msg_thread OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :212
  • oracle_msg_heartbeat OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :231
  • oracle_msg_stale OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :255
  • oracle_msg_unregister OraclePersonal-Oracle-a491a4e/src/mcp/messagingTools.ts :277
  • oracle_task_board OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :77
  • oracle_task_create OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :104
  • oracle_task_breakdown OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :127
  • oracle_task_list OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :152
  • oracle_task_get OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :175
  • oracle_task_update OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :195
  • oracle_task_checklist OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :217
  • oracle_task_submit OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :237
  • oracle_task_close OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :257
  • oracle_task_propose OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :280
  • oracle_task_vote OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :306
  • oracle_coordination_recover OraclePersonal-Oracle-a491a4e/src/mcp/taskTools.ts :339
  • oracle_agent OraclePersonal-Oracle-a491a4e/src/mcp/tools/agent.ts :22
  • oracle_agent_checkpoints OraclePersonal-Oracle-a491a4e/src/mcp/tools/agent.ts :66
  • oracle_agent_checkpoint_delete OraclePersonal-Oracle-a491a4e/src/mcp/tools/agent.ts :85
  • oracle_ask OraclePersonal-Oracle-a491a4e/src/mcp/tools/consult.ts :25
  • oracle_docs_search OraclePersonal-Oracle-a491a4e/src/mcp/tools/docs.ts :7
  • oracle_docs_add OraclePersonal-Oracle-a491a4e/src/mcp/tools/docs.ts :36
  • oracle_docs_remove OraclePersonal-Oracle-a491a4e/src/mcp/tools/docs.ts :54
  • oracle_run OraclePersonal-Oracle-a491a4e/src/mcp/tools/flow.ts :7
  • oracle_github_pr_get OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :18
  • oracle_github_pr_list OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :37
  • oracle_github_pr_diff OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :61
  • oracle_github_pr_files OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :80
  • oracle_github_pr_review OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :99
  • oracle_github_pr_review_submit OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :154
  • oracle_github_issue_get OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :175
  • oracle_github_issue_list OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :194
  • oracle_github_comment OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :216
  • oracle_github_search OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :236
  • oracle_github_api OraclePersonal-Oracle-a491a4e/src/mcp/tools/github.ts :254
  • oracle_history_sources OraclePersonal-Oracle-a491a4e/src/mcp/tools/history.ts :7
  • oracle_history_search OraclePersonal-Oracle-a491a4e/src/mcp/tools/history.ts :27
  • oracle_identity_show OraclePersonal-Oracle-a491a4e/src/mcp/tools/identity.ts :12
  • oracle_awareness_show OraclePersonal-Oracle-a491a4e/src/mcp/tools/identity.ts :32
  • oracle_memory_remember OraclePersonal-Oracle-a491a4e/src/mcp/tools/memory.ts :30
  • oracle_memory_search OraclePersonal-Oracle-a491a4e/src/mcp/tools/memory.ts :64
  • oracle_memory_update OraclePersonal-Oracle-a491a4e/src/mcp/tools/memory.ts :101
  • oracle_memory_maintain OraclePersonal-Oracle-a491a4e/src/mcp/tools/memory.ts :124
  • oracle_oracle_list OraclePersonal-Oracle-a491a4e/src/mcp/tools/oracle.ts :8
  • oracle_oracle_register OraclePersonal-Oracle-a491a4e/src/mcp/tools/oracle.ts :23
  • oracle_init OraclePersonal-Oracle-a491a4e/src/mcp/tools/oracle.ts :52
  • oracle_relay OraclePersonal-Oracle-a491a4e/src/mcp/tools/relay.ts :32
  • oracle_sessions OraclePersonal-Oracle-a491a4e/src/mcp/tools/session.ts :8
  • oracle_session_get OraclePersonal-Oracle-a491a4e/src/mcp/tools/session.ts :36
  • oracle_doctor OraclePersonal-Oracle-a491a4e/src/mcp/tools/util.ts :21
  • oracle_web_search OraclePersonal-Oracle-a491a4e/src/mcp/tools/web.ts :10
  • oracle_web_fetch OraclePersonal-Oracle-a491a4e/src/mcp/tools/web.ts :34

install hooks 1

  • prepublishOnly OraclePersonal-Oracle-a491a4e/package.json :63 npm run verify

declared dependencies 19

  • @modelcontextprotocol/client@^2.0.0
  • @modelcontextprotocol/server@^2.0.0
  • @anthropic-ai/sdk@^0.111.0
  • @types/node-cron@^3.0.11
  • chokidar@^5.0.0
  • commander@^15.0.0
  • dotenv@^17.4.2
  • fast-glob@^3.3.3
  • node-cron@^3.0.3
  • openai@^6.45.0
  • readdown@^0.2.5
  • ws@^8.21.1
  • zod@^4.4.3
  • @types/node@^26.0.0
  • @types/ws@^8.18.1
  • oxlint@^1.77.0
  • tsx@^4.23.0
  • typescript@^6.0.0
  • vitest@^4.1.0

obfuscation 1

  • dynamic require()/import() OraclePersonal-Oracle-a491a4e/scripts/verify-live.mjs :157 const { MemoryAdapter } = await import(${JSON.stringify(pathToUrl(path.join(repositoryRoot, "dist", "memory", "adapter.js")))});

transport_posture 2

  • network-listening, binds all interfaces, no auth detected OraclePersonal-Oracle-a491a4e/src/config/project.test.ts :42 serve: { host: "0.0.0.0", port: 9474, manualLogin: false }
  • binds all interfaces (0.0.0.0) OraclePersonal-Oracle-a491a4e/src/runtime/daemon.test.ts :414 daemon = new OracleDaemon({ homeDir: home, host: "0.0.0.0", port: 0 });