Open-source Object Context for software teams and AI agents. Maps real code into business objects, logic and dependencies, shows change impact, serves relevant context over MCP, and verifies outcomes. Local-first.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport 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 db15d70 · analyzer v33 · 6d ago
danger signals1
- dynamic code execution new Function() gitmir-hello-gitmir-local-db15d70/server.ts :1750
new Function(js);
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 25
filesystem 15
- fs gitmir-hello-gitmir-local-db15d70/bin/gitmir.mjs :15
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lab-keys-check.ts :10
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/audit.js :22
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/connector.js :18
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/findings.js :20
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/lab.js :14
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/progress.js :13
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/read.js :17
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/usage.js :19
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/lib/write.js :10
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/mcp-check.ts :20
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/mcp.ts :24
import fs from 'node:fs';
show 3 more
- fs gitmir-hello-gitmir-local-db15d70/relay-client.mjs :29
import fs from "node:fs"; - fs gitmir-hello-gitmir-local-db15d70/relay.ts :25
import fs from 'node:fs'; - fs gitmir-hello-gitmir-local-db15d70/server.ts :13
import fs from 'node:fs';
shell / exec 6
- shell gitmir-hello-gitmir-local-db15d70/bin/gitmir.mjs :13
import { spawn, execFileSync } from 'node:child_process'; - shell gitmir-hello-gitmir-local-db15d70/lab-keys-check.ts :14
import { spawn } from 'node:child_process'; - shell gitmir-hello-gitmir-local-db15d70/lib/audit.js :24
import { execFileSync } from 'node:child_process'; - shell gitmir-hello-gitmir-local-db15d70/lib/connector.js :22
import { spawn } from 'node:child_process'; - shell gitmir-hello-gitmir-local-db15d70/mcp-check.ts :18
import { spawn } from 'node:child_process'; - shell gitmir-hello-gitmir-local-db15d70/server.ts :16
import { execFile, execFileSync, spawn } from 'node:child_process';
network 8
- net gitmir-hello-gitmir-local-db15d70/bin/gitmir.mjs :14
import net from 'node:net'; - net (weak) gitmir-hello-gitmir-local-db15d70/examples/refund-shop/src/pages/Order.tsx :20
fetch(`/api/orders/${order.id}/refund`, { method: 'POST' }); - net gitmir-hello-gitmir-local-db15d70/lab-keys-check.ts :9
import http from 'node:http'; - net gitmir-hello-gitmir-local-db15d70/lib/connector.js :65
const r = await fetch(lab().home + '/connector/latest', { headers: { authorization: 'Bearer ' + k } }); - net gitmir-hello-gitmir-local-db15d70/lib/lab.js :241
const res = await fetch(lab().home + '/view/' + what + (qs ? '?' + qs : ''), { - net gitmir-hello-gitmir-local-db15d70/mcp.ts :711
const res = await fetch(`http://localhost:${port}/api/add`, { - net gitmir-hello-gitmir-local-db15d70/public/app.js :40
const r = await fetch('/api/projects'); const d = await r.json(); - net gitmir-hello-gitmir-local-db15d70/server.ts :11
import http from 'node:http';
secrets 2
- secrets gitmir-hello-gitmir-local-db15d70/lab-keys-check.ts :28
delete process.env.GITMIR_LAB_KEY; - secrets gitmir-hello-gitmir-local-db15d70/lib/lab.js :97
const env = (process.env.GITMIR_LAB_KEY || '').trim();
declared dependencies 2
- @types/node@^26.1.2
- typescript@^5.8.0