Local-first action assistant for durable, reviewable software work.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · streamable-http · http counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 1043663 · analyzer v33 · 1w ago
skills & prompt files 22
- agent-rules moretea-labs-forge-1043663/.cursor/rules/codegraph.mdc
- agent-rules moretea-labs-forge-1043663/AGENTS.md
- agent-rules moretea-labs-forge-1043663/CLAUDE.md
- skill moretea-labs-forge-1043663/SKILL.md
- agent-rules moretea-labs-forge-1043663/assets/AGENTS.md
- agent-rules moretea-labs-forge-1043663/assets/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/assets/hooks/AGENTS.md
- agent-rules moretea-labs-forge-1043663/assets/hooks/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/assets/reference-configs/AGENTS.md
- agent-rules moretea-labs-forge-1043663/assets/reference-configs/CLAUDE.md
- skill moretea-labs-forge-1043663/assets/skills/claude-review/SKILL.md
- skill moretea-labs-forge-1043663/assets/skills/codex-review/SKILL.md
- agent-rules moretea-labs-forge-1043663/assets/templates/AGENTS.md
- agent-rules moretea-labs-forge-1043663/assets/templates/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/docs/reference-configs/AGENTS.md
- agent-rules moretea-labs-forge-1043663/docs/reference-configs/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/scripts/lib/AGENTS.md
- agent-rules moretea-labs-forge-1043663/scripts/lib/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/src/cli/mcp/transports/AGENTS.md
- agent-rules moretea-labs-forge-1043663/src/cli/mcp/transports/CLAUDE.md
- agent-rules moretea-labs-forge-1043663/tests/AGENTS.md
- agent-rules moretea-labs-forge-1043663/tests/CLAUDE.md
danger signals8
- dynamic code execution new Function() moretea-labs-forge-1043663/tests/runtime/chatgpt-work-continuation.test.ts :495
expect(() => new Function(generatedScript)).not.toThrow(); - over-broad OAuth scope gmail.modify moretea-labs-forge-1043663/src/runtime/plugins/gmail-adapter.ts :96
scopes: ['gmail.modify'], - over-broad OAuth scope gmail.modify moretea-labs-forge-1043663/src/runtime/safe-tooling/google-oauth-broker.ts :42
'https://www.googleapis.com/auth/gmail.modify', - over-broad OAuth scope gmail.modify moretea-labs-forge-1043663/src/runtime/safe-tooling/workspace-auth.ts :17
'https://www.googleapis.com/auth/gmail.modify', - committed secret OpenAI key moretea-labs-forge-1043663/tests/cli/mcp-policy.test.ts :167
sk-SYN…(31 chars, redacted) - committed secret OpenAI key moretea-labs-forge-1043663/tests/runtime/process-runtime.test.ts :679
sk-SYN…(28 chars, redacted) - suspicious bundled script suspicious bundled script moretea-labs-forge-1043663/install.sh :24
if has_command curl; then curl -fsSL https://bun.sh/install | bash - suspicious bundled script suspicious bundled script moretea-labs-forge-1043663/scripts/init-project.sh :93
curl -fsSL https://bun.sh/install | bash
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 1154
filesystem 400
- fs moretea-labs-forge-1043663/adapters/browser/session-authority.ts :2
import { readdirSync, readFileSync, rmSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/access-mode.ts :1
import { existsSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/audit.ts :2
import { appendFileSync, mkdirSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/auth.ts :2
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/multi-repository.ts :7
import { realpathSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/oauth.ts :13
} from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/paths.ts :1
import { existsSync, lstatSync, realpathSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/policy.ts :1
import { existsSync, readFileSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/repo.ts :1
import { existsSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/runtime-gateway/execution-tools.ts :1
import { existsSync, readFileSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/runtime-gateway/runtime-tools.ts :2
import { existsSync, readFileSync, statSync } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/server.ts :23
import { readFileSync } from 'fs';
show 28 more
- fs moretea-labs-forge-1043663/adapters/mcp/setup.ts :2
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs"; - fs moretea-labs-forge-1043663/adapters/mcp/tool-mapping/legacy-tool-service.ts :12
} from "fs"; - fs moretea-labs-forge-1043663/adapters/mcp/transports/http.ts :2
import { existsSync, watch } from 'fs'; - fs moretea-labs-forge-1043663/adapters/mcp/tunnels/openai-secure-tunnel.ts :1
import { readFileSync } from 'fs'; - fs moretea-labs-forge-1043663/assets/templates/helpers/architecture-event.ts :2
import { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/capability-config.ts :2
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/capability-resolver.ts :2
import { existsSync, readdirSync, readFileSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/check-skill-version.ts :12
import { readFileSync, existsSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/contract-run.ts :2
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/inspect-project-state.ts :1
import { existsSync, readFileSync, readdirSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/migrate-workflow-docs.ts :1
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs"; - fs moretea-labs-forge-1043663/assets/templates/helpers/workflow-contract.ts :1
import { existsSync, readFileSync } from "fs"; - fs (weak) moretea-labs-forge-1043663/evaluation/candidate-runner.test.ts :2
import { mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/calibration.ts :2
import { readFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/candidate-artifact.ts :2
import { cpSync, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, readlinkSync, realpathSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/corpus.ts :2
import { existsSync, readFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/execution-evidence.ts :1
import { existsSync, readFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/report.ts :1
import { existsSync, mkdirSync, writeFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/sandbox.ts :2
import { existsSync, mkdirSync, mkdtempSync, realpathSync, rmSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/scenario.ts :2
import { readFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/lib/trace.ts :2
import { existsSync } from 'node:fs'; - fs moretea-labs-forge-1043663/evaluation/run-paired.ts :3
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs'; - fs moretea-labs-forge-1043663/packages/kernel/identity/infrastructure/identity-store.ts :2
import { closeSync, existsSync, fsyncSync, linkSync, mkdirSync, openSync, readFileSync, unlinkSync, writeFileSync } from 'fs'; - fs moretea-labs-forge-1043663/packages/kernel/scheduler/infrastructure/schedule-store.ts :2
import { existsSync, readdirSync, rmSync, statSync } from 'fs'; - fs moretea-labs-forge-1043663/packages/kernel/work/infrastructure/work-contract-store.ts :2
import { existsSync, mkdirSync } from 'fs'; - fs (weak) moretea-labs-forge-1043663/scripts/activate-source-baseline.ts :12
} from 'fs'; - fs (weak) moretea-labs-forge-1043663/scripts/assemble-template.ts :9
import { readFileSync, existsSync, readdirSync } from "fs"; - fs (weak) moretea-labs-forge-1043663/scripts/benchmark-background-check-overlap.ts :13
import { mkdtempSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'fs';
360 more not shown — this panel samples each group; the count above is the real total.
shell / exec 221
- shell moretea-labs-forge-1043663/adapters/mcp/setup.ts :1
import { spawnSync } from "child_process"; - shell moretea-labs-forge-1043663/assets/templates/helpers/capability-config.ts :4
import { spawnSync } from "child_process"; - shell moretea-labs-forge-1043663/assets/templates/helpers/capability-resolver.ts :4
import { spawnSync } from "child_process"; - shell moretea-labs-forge-1043663/assets/templates/helpers/contract-run.ts :4
import { spawnSync } from "child_process"; - shell moretea-labs-forge-1043663/bin/forge-hook.mjs :2
import { spawnSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/bin/forge-runtime-service.mjs :2
import { spawnSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/bin/forge-runtime.mjs :2
import { spawnSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/bin/forge.mjs :2
import { spawnSync } from 'node:child_process'; - shell (weak) moretea-labs-forge-1043663/evaluation/candidate-runner.test.ts :1
import { execFileSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/evaluation/lib/corpus.ts :1
import { execFileSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/evaluation/lib/trace.ts :1
import { spawnSync } from 'node:child_process'; - shell moretea-labs-forge-1043663/evaluation/run-paired.ts :2
import { execFileSync } from 'node:child_process';
show 28 more
- shell (weak) moretea-labs-forge-1043663/scripts/activate-source-baseline.ts :3
import { spawn } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-background-check-overlap.ts :12
import { execFileSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-controller-hotpath.ts :12
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-controller-round2.ts :1
import { execFileSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-operational-memory-activation.ts :2
import { execFileSync } from 'node:child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-quality-harness.ts :3
import { execFileSync, spawn } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-route-session-concurrency.ts :4
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-thin-harness-gateway-ab.ts :23
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-thin-harness-mcp-e2e.ts :22
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-thin-harness.ts :19
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-typescript-navigation.ts :3
import { execFileSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/benchmark-work-efficiency.ts :14
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/canary-controller-semantic-wait.ts :2
import { execFileSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/check-platform-support.mjs :2
import { execFileSync } from "node:child_process"; - shell (weak) moretea-labs-forge-1043663/scripts/check-repository-hygiene.mjs :2
import { execFileSync } from 'node:child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/check-runtime-env.mjs :2
import { spawnSync } from 'node:child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/check-source-duplication.mjs :3
import { execFileSync } from 'node:child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/complete-control-plane-cutover.ts :3
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/forge-uu-remote-rescue-helper.mjs :3
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/forge-windows-host-recovery-helper.mjs :4
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/hook-dispatch-diet-report.ts :5
import { spawnSync } from "child_process"; - shell (weak) moretea-labs-forge-1043663/scripts/install-independent-windows-wsl-recovery.ts :11
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/lib/run-forge-helper.ts :2
import { spawnSync } from "node:child_process"; - shell (weak) moretea-labs-forge-1043663/scripts/migrate-requirement-portfolio.ts :4
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/migrate-windows-wsl-controller-home.ts :14
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/public-release.ts :2
import { spawnSync } from "node:child_process"; - shell (weak) moretea-labs-forge-1043663/scripts/refresh-ios-physical-runtime.ts :1
import { spawnSync } from 'child_process'; - shell (weak) moretea-labs-forge-1043663/scripts/run-bounded-command.mjs :2
import { spawn } from 'node:child_process';
181 more not shown — this panel samples each group; the count above is the real total.
network 46
- net moretea-labs-forge-1043663/adapters/mcp/runtime-gateway/runtime-tools.ts :1664
const response = await fetch(url, { signal: controller.signal, headers: { accept: 'application/json' } }); - net moretea-labs-forge-1043663/adapters/mcp/setup.ts :3
import { isIP } from "net"; - net moretea-labs-forge-1043663/adapters/mcp/transports/http.ts :312
const response = await fetch(url, { - net moretea-labs-forge-1043663/packages/plugin-runtime/external/unix-jsonl-transport.ts :1
import { createConnection, type Socket } from 'net'; - net (weak) moretea-labs-forge-1043663/scripts/forge-uu-remote-rescue-helper.mjs :5
import { createConnection } from 'net'; - net (weak) moretea-labs-forge-1043663/scripts/smoke-browser-cdp-bridge.ts :22
const response = await fetch(new URL('/json/list', new URL(endpoint).origin)); - net (weak) moretea-labs-forge-1043663/scripts/smoke-mcp-http-runtime.ts :3
import { createServer } from 'net'; - net moretea-labs-forge-1043663/src/cli/chatgpt-browser/bind-server.ts :222
const response = await fetch(path, {method: 'POST'}); - net moretea-labs-forge-1043663/src/cli/chatgpt-browser/bridge-extension.ts :58
await fetch(FORGE_CHATGPT_BRIDGE_URL + path, { - net moretea-labs-forge-1043663/src/cli/chatgpt-browser/bridge-provider.ts :478
async fetch(request) { - net moretea-labs-forge-1043663/src/cli/chatgpt-browser/native-provider.ts :2
import { createServer } from 'net'; - net moretea-labs-forge-1043663/src/cli/local-bridge/connector-freshness.ts :192
const response = await fetch(url, {
show 28 more
- net moretea-labs-forge-1043663/src/cli/local-bridge/frontend/src/lib/api.ts :10
const response=await fetch(path,{...init,headers,signal:controller.signal,credentials:'same-origin'});let payload:unknown={};try{payload=await response.json();}catch{} - net moretea-labs-forge-1043663/src/cli/local-bridge/server.ts :4
import { createServer, type Server } from "http"; - net moretea-labs-forge-1043663/src/cli/local-bridge/ui-dist/app.js :10536
const M = await fetch(o, { ...E, headers: _, signal: m.signal, credentials: "same-origin" }); - net moretea-labs-forge-1043663/src/runtime/execution/workspace-agent.ts :96
const fetchImpl: WorkspaceAgentFetch = options.fetchImpl ?? ((input, init) => fetch(input, init)); - net moretea-labs-forge-1043663/src/runtime/platform/fetch-http-server.ts :1
import { createServer, type IncomingMessage, type ServerResponse } from 'http'; - net moretea-labs-forge-1043663/src/runtime/plugins/app-store-connect-adapter.ts :350
const response = await fetch(url, { - net moretea-labs-forge-1043663/src/runtime/plugins/browser-adapter.ts :294
const response = await fetch(url, { signal: controller.signal }); - net moretea-labs-forge-1043663/src/runtime/plugins/external-unix-socket-probe.cjs :4
const net = require('net'); - net moretea-labs-forge-1043663/src/runtime/plugins/google-shared.ts :442
const response = await fetch('https://oauth2.googleapis.com/token', { - net moretea-labs-forge-1043663/src/runtime/plugins/resend-adapter.ts :341
const response = await fetch(`${API_BASE_URL}${path}`, { - net moretea-labs-forge-1043663/src/runtime/root/mcp-transport.ts :2
import type { Server as NodeHttpServer } from 'http'; - net moretea-labs-forge-1043663/src/runtime/root/package-connector-service.ts :118
const response = await fetch(endpoint, { method: 'GET', redirect: 'manual', signal: controller.signal }); - net moretea-labs-forge-1043663/src/runtime/safe-tooling/google-oauth-broker.ts :249
const response = await fetch(GOOGLE_TOKEN_ENDPOINT, { - net moretea-labs-forge-1043663/src/runtime/safe-tooling/resend-oauth.ts :214
const response = await fetch(url, { - net moretea-labs-forge-1043663/src/runtime/shared/idempotent-retry.ts :116
const response = await fetch(input, fetchInit); - net moretea-labs-forge-1043663/src/runtime/standalone-recovery/core.ts :1046
const request = options.request ?? ((url: string, init: { signal: AbortSignal }) => fetch(url, init)); - net moretea-labs-forge-1043663/src/runtime/standalone-recovery/entry.ts :2
import { createServer, type IncomingMessage, type ServerResponse } from 'http'; - net moretea-labs-forge-1043663/src/runtime/standalone-recovery/http-transport.ts :299
const response = await fetch(request.url, { - net moretea-labs-forge-1043663/src/runtime/standalone-recovery/installer.ts :501
const response = await fetch(`http://${input.config.gateway?.host ?? '127.0.0.1'}:${input.config.gateway?.port ?? 8787}/health`, { - net (weak) moretea-labs-forge-1043663/tests/cli/local-bridge.test.ts :164
const response = await fetch(new URL(path, handle.url), { - net (weak) moretea-labs-forge-1043663/tests/cli/mcp-http.test.ts :3
import { createServer } from 'net'; - net (weak) moretea-labs-forge-1043663/tests/cli/mcp-runtime-proxy-routing.test.ts :443
const initializeAttempt = await fetch(runtimeTransport.endpoint, { - net (weak) moretea-labs-forge-1043663/tests/fixtures/isolated-controller-home.ts :2
import { createServer } from 'net'; - net (weak) moretea-labs-forge-1043663/tests/infrastructure/test-runner-e2e.test.ts :6
import { createServer } from 'net'; - net (weak) moretea-labs-forge-1043663/tests/live/browser-native-silent.e2e.ts :82
fetch(request) { - net (weak) moretea-labs-forge-1043663/tests/live/browser-runtime-v3.e2e.ts :156
fetch(request) { - net (weak) moretea-labs-forge-1043663/tests/runtime/canonical-single-runtime.test.ts :294
const unauthorized = await fetch(endpoint!, { - net (weak) moretea-labs-forge-1043663/tests/runtime/computer-interaction-target.test.ts :3
import { createServer, type Server } from 'net';
6 more not shown — this panel samples each group; the count above is the real total.
secrets 6
- secrets moretea-labs-forge-1043663/adapters/mcp/auth.ts :299
if (process.env.FORGE_MCP_TOKEN?.trim()) return process.env.FORGE_MCP_TOKEN.trim(); - secrets moretea-labs-forge-1043663/src/runtime/execution/workspace-agent.ts :47
|| process.env.OPENAI_WORKSPACE_AGENT_ACCESS_TOKEN?.trim() - secrets moretea-labs-forge-1043663/src/runtime/plugins/resend-adapter.ts :102
const forge = stringValue(process.env.FORGE_RESEND_API_KEY); - secrets moretea-labs-forge-1043663/src/runtime/safe-tooling/google-oauth-broker.ts :148
return process.env.FORGE_GOOGLE_WORKSPACE_CLIENT_SECRET?.trim() - secrets (weak) moretea-labs-forge-1043663/tests/runtime/external-plugin-store-integration.test.ts :822
const originalKey = process.env.FORGE_RESEND_API_KEY; - secrets (weak) moretea-labs-forge-1043663/tests/runtime/plan-contract-store.test.ts :71
scopeKey: process.env.SCOPE_KEY,
install hooks 1
- prepack moretea-labs-forge-1043663/package.json :159
node scripts/sync-generated-authority.mjs --check
declared dependencies 22
- @modelcontextprotocol/sdk@^1.28.0
- commander@^14.0.3
- express@^5.2.1
- playwright@^1.54.1
- react@^19.2.0
- react-dom@^19.2.8
- typescript@^6.0.3
- @colbymchenry/codegraph@1.0.1
- @types/bun@latest
- @types/cors@^2.8.19
- @types/express@^5.0.6
- @types/react@^19.2.18
show 10 more
- @types/react-dom@^19.2.4
- @vitejs/plugin-react@^5.2.0
- vite@^7.3.0
- @colbymchenry/codegraph-darwin-arm64@1.0.1
- @colbymchenry/codegraph-darwin-x64@1.0.1
- @colbymchenry/codegraph-linux-arm64@1.0.1
- @colbymchenry/codegraph-linux-x64@1.0.1
- @colbymchenry/codegraph-win32-arm64@1.0.1
- @colbymchenry/codegraph-win32-x64@1.0.1
- agent-device@0.20.2
cursor-plugin 1
- opaque (low) moretea-labs-forge-1043663/.cursor/rules/codegraph.mdc
bundled .cursor/ plugin descriptor (moretea-labs-forge-1043663/.cursor/rules/codegraph.mdc) — presence-detected; review the descriptor
perm:untrusted 3
- untrusted (weak) moretea-labs-forge-1043663/tests/cli/local-bridge.test.ts :526
const progress = await fetch(new URL("/api/progress", handle.url), { headers }).then((response) => response.json()); - untrusted (weak) moretea-labs-forge-1043663/tests/cli/mcp-http.test.ts :160
const health = await fetch(`http://127.0.0.1:${port}/health`).then((response) => response.json()); - untrusted (weak) moretea-labs-forge-1043663/tests/runtime/canonical-single-runtime.test.ts :576
const health = await fetch(new URL('/health', bridge!.endpoint)).then((response) => response.json()) as Record<string, unknown>;