github TypeScript analyzed 92592eb

hyhmrright/Confer

github

Your AI confers, with anyone's — an open A2A protocol platform where AI Agents talk to each other on behalf of their owners. Self-hosted, DID:web identity, RFC 9421 signatures, Claude Code plugin.

maintainer
hyhmrright
licence
Apache-2.0
first seen
2026-06-04
last seen
2026-09-13
releases · 30d
4
short id

Drift inferred · capture-to-capture

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

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

tools

  • ask_agent
  • ask_multiple
  • ask_person_agent
  • check_reply
  • discover_peer
  • find_agents
  • follow_up
  • get_agent_capabilities
  • get_conversation
  • list_agents
  • read_project_memory
  • request_code_review
  • request_design_review
  • whoami
  • write_project_memory
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 92592eb · analyzer v33 · 3d ago

skills & prompt files 10

danger signals11

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

code files: 348

filesystem 4

  • fs (weak) hyhmrright-Confer-92592eb/.github/scripts/check-docs-i18n.mjs :23 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) hyhmrright-Confer-92592eb/packages/cli/src/index.test.ts :3 import { mkdtempSync, readFileSync, rmSync, symlinkSync, writeFileSync } from 'node:fs';
  • fs hyhmrright-Confer-92592eb/packages/cli/src/index.ts :16 } from 'node:fs';
  • fs (weak) hyhmrright-Confer-92592eb/packages/gateway/scripts/setup-test-db.ts :5 import { readdir, readFile } from 'node:fs/promises';

shell / exec 6

  • shell (weak) hyhmrright-Confer-92592eb/.github/scripts/check-docs-i18n.mjs :29 const out = Bun.spawnSync([
  • shell (weak) hyhmrright-Confer-92592eb/packages/cli/src/index.test.ts :2 import { spawnSync } from 'node:child_process';
  • shell hyhmrright-Confer-92592eb/packages/cli/src/index.ts :7 import { spawnSync } from 'node:child_process';
  • shell (weak) hyhmrright-Confer-92592eb/packages/gateway/src/lib/text-lang.test.ts :55 // and this is the assertion that would catch a regression to exec().
  • shell hyhmrright-Confer-92592eb/packages/gateway/src/lib/text-lang.ts :45 // module-level, so counting via match() rather than exec() avoids carrying
  • shell (weak) hyhmrright-Confer-92592eb/packages/mcp-a2a/scripts/smoke.ts :4 import { spawn } from 'node:child_process';

network 16

  • net hyhmrright-Confer-92592eb/packages/cli/src/index.ts :271 const response = await fetch(url);
  • net hyhmrright-Confer-92592eb/packages/client/src/lib/api.ts :65 const res = await fetch(`${apiBase()}/auth/refresh`, {
  • net hyhmrright-Confer-92592eb/packages/client/src/stores/chat.ts :246 const res = await fetch(`${gatewayOrigin()}${data.stream_url}`, {
  • net hyhmrright-Confer-92592eb/packages/gateway/src/a2a/outbound.ts :65 const response = await fetch(signedRequest, {
  • net hyhmrright-Confer-92592eb/packages/gateway/src/index.ts :27 fetch(req: Request, server: import('bun').Server<unknown>) {
  • net (weak) hyhmrright-Confer-92592eb/packages/gateway/src/lib/embedding.test.ts :44 async fetch(req) {
  • net hyhmrright-Confer-92592eb/packages/gateway/src/lib/qdrant-client.ts :23 const res = await fetch(qdrantUrl(path), {
  • net (weak) hyhmrright-Confer-92592eb/packages/gateway/src/lib/runtime-url.test.ts :2 import net from 'node:net';
  • net hyhmrright-Confer-92592eb/packages/gateway/src/lib/runtime-url.ts :1 import http from 'node:http';
  • net hyhmrright-Confer-92592eb/packages/gateway/src/routes/contacts.ts :313 const res = await fetch(`https://${hostname}/.well-known/agents.json`, {
  • net (weak) hyhmrright-Confer-92592eb/packages/gateway/src/routes/users.integration.test.ts :335 fetch(req) {
  • net hyhmrright-Confer-92592eb/packages/gateway/src/tools/tavily.ts :16 const response = await fetch('https://api.tavily.com/search', {
show 4 more
  • net hyhmrright-Confer-92592eb/packages/identity/src/did/resolver.ts :115 const response = await fetch(url, {
  • net (weak) hyhmrright-Confer-92592eb/packages/identity/src/net/ssrf-guard.test.ts :105 // policy, while a caller's fetch() connects to it directly (no DNS needed
  • net hyhmrright-Confer-92592eb/packages/identity/src/net/ssrf-guard.ts :3 import { isIP } from 'node:net';
  • net (weak) hyhmrright-Confer-92592eb/packages/mcp-a2a/scripts/live-smoke.ts :15 const reg = await fetch(`${base}/api/v1/auth/register`, {

secrets 2

  • secrets hyhmrright-Confer-92592eb/packages/gateway/src/eval/run-rag-eval.ts :118 const key = process.env.EVAL_EMBEDDING_KEY ?? process.env.OPENAI_API_KEY ?? '';
  • secrets (weak) hyhmrright-Confer-92592eb/packages/gateway/src/test/helpers.ts :43 const secret = new TextEncoder().encode(process.env.JWT_SECRET);

tool registrations 30

  • list_agents hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :41
  • get_agent_capabilities hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :49
  • find_agents hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :57
  • ask_agent hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :67
  • follow_up hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :75
  • get_conversation hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :83
  • ask_multiple hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :93
  • check_reply hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :105
  • whoami hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :115
  • ask_person_agent hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :122
  • read_project_memory hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :134
  • write_project_memory hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :155
show 18 more
  • discover_peer hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :181
  • request_design_review hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :196
  • request_code_review hyhmrright-Confer-92592eb/packages/mcp-a2a/src/server.ts :212
  • list_agents hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21692
  • get_agent_capabilities hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21696
  • find_agents hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21700
  • ask_agent hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21704
  • follow_up hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21708
  • get_conversation hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21712
  • ask_multiple hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21716
  • check_reply hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21724
  • whoami hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21728
  • ask_person_agent hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21729
  • read_project_memory hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21733
  • write_project_memory hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21745
  • discover_peer hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21759
  • request_design_review hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21766
  • request_code_review hyhmrright-Confer-92592eb/plugins/confer-a2a/dist/server.mjs :21776

install hooks 1

  • prepack hyhmrright-Confer-92592eb/packages/cli/package.json :31 bun run build

declared dependencies 7

  • @biomejs/biome@^2.5.12
  • @types/bun@^1.4.2
  • typescript@^7.0.2
  • tauri-build@2
  • tauri@2
  • serde@1
  • serde_json@1

obfuscation 2

  • dynamic require()/import() hyhmrright-Confer-92592eb/packages/client/src/lib/api.test.ts :33 const realApiModule = (await import(/* @vite-ignore */ `${'./api.js'}?real`)) as ApiModule;
  • dynamic require()/import() hyhmrright-Confer-92592eb/packages/client/src/lib/ws.test.ts :85 const importWs = () => import(`./ws.js?t=${Math.random()}`) as Promise<typeof import('./ws.js')>;