KI-Gedächtnis & Code-Intelligenz — Semantische Code-Suche, Wissensaustausch und Projekt-Pläne über MCP (Model Context Protocol). Verbindet lokale CLIs (Claude Code, Codex) und Web-KIs (Claude.ai) mit Qdrant + Ollama Embeddings.
Drift inferred · capture-to-capture
- HIGH code analysis flagged hidden prompt content ×2, dynamic code execution in 7blacky7/synapse
- HIGH code analysis flagged hidden prompt content ×2, dynamic code execution in 7blacky7/synapse
- HIGH code analysis flagged dynamic code execution in 7blacky7/synapse
tools
-
ack
Event quittieren (Pflicht bei requires_ack) — Array-Support für mehrere IDs
-
add
Kuratierte Docs indexieren (Breaking Changes, Migrations, Gotchas)
-
capabilities
Verfügbare Modelle + Limits
-
code
Reine Qdrant Semantic Search über Code-Chunks
-
code_with_path
Hybrid: Semantisch + Pfad-Filter
-
create
Kanal für Spezialisten-Gruppen erstellen
-
delete
Memory löschen — Array + dry_run + max_items
-
delete_lines
Zeilenrange löschen
-
detailed_stats
Aufschlüsselung nach Dateityp, Source, Kategorie
-
emit
Steuersignal an Agenten senden
-
exec
Synchrone Ausführung mit Active-Gate (prüft ob Projekt im Daemon aktiviert)
-
feed
Kanal-Nachrichten abrufen (since_id, limit, preview)
-
file
Dateiinhalt direkt aus PG mit from_line, to_line, total_lines, truncate_long_lines (Auto-Trim wenn > 80k Zeichen)
-
find_for_file
Relevante Memories für eine Datei (oder Array von Pfaden)
-
functions
Funktionen einer Datei oder per Name (mit exportedOnly-Filter)
-
get
Einzelnen Job + voller Output
-
get_for_file
Wissens-Airbag: relevante Docs für eine Datei — Array-Support für mehrere Pfade. Liefert warnings + agentCutoff
-
get_stream
Live-Output laufender Jobs lesen
-
history
Vergangene Jobs auflisten (limit, offset, status-Filter)
-
inbox_check
Inbox lesen + als verarbeitet markieren
-
inbox_send
1:1-Nachricht in Inbox eines Spezialisten — Array-Support für to_agent
-
index_media
Bilder und Videos indexieren (Gemini Embedding 2)
-
index_stats
Projekt-Statistiken + automatisches Agent-Onboarding (Regeln + activeAgents)
-
insert_after
Inhalt nach Zeile einfügen
-
list
Alle Memories auflisten
-
log
Zeilen-Range oder Regex-Suche im Job-Output (query, regex, case_sensitive, max_matches)
-
media
Cross-Modal: Bilder/Videos per Text-Query
-
migrate
Embedding-Modell wechseln (Backup → Re-Embed)
-
migrate_paths
Pfad-Normalisierung in code_files (absolute → relative)
-
path
Glob-Pattern-Suche auf Datei-Pfaden (auto relative→absolute Konvertierung)
-
pending
Unbestätigte Events abrufen
-
post
Nachricht in Kanal posten
-
purge
Agent komplett entfernen (Skill-Verzeichnis löschen)
-
read
Inhalt aus PG mit from_line, to_line, total_lines, truncate_long_lines (Auto-Trim wenn Content > 80k Zeichen)
-
read_with_code
Memory + verwandten Code laden
-
references
Definition + alle Cross-File-Imports in einem Call
-
replace_lines
Zeilenrange ersetzen (line_start..line_end)
-
restore
Daten aus JSONL-Backup wiederherstellen
-
search
Search-Fusion — PG-Volltext (ts_rank) + Qdrant-Fallback (live seit 2026-04-26)
-
search_replace
Exakter String-Replace mit Fuzzy-Match-Vorschlägen bei Miss
-
search_replace_batch
Bis zu 50 Edits atomar in einem Call
-
send
Broadcast (alle) oder DM — Array-Support für recipient_id (Multicast)
-
spawn
Spezialisten-Agent starten (detached Subprozess)
-
spawn_batch
Mehrere Spezialisten atomar starten
-
status
Status prüfen — Array-Support
-
stop
Agent stoppen — Array-Support
-
symbols
Filterbar nach symbol_type: function, variable, string, comment, import, export, class, interface, enum, const_object, todo
-
tech_docs
Framework-Docs (mit Context7 Auto-Fetch wenn lokal leer)
-
tree
Projektbaum mit Optionen (show_counts, show_lines, show_functions, show_comments, show_imports, depth, recursive)
-
update
Memory aktualisieren (PG + Re-Embed)
-
update_skill
Skill-Datei aktualisieren — file-Parameter: rules / errors / patterns / context
-
update_status
Status ändern (pending → reviewed → accepted) — Array-Support
-
variables
Variablen-Liste (optional mit Werten)
-
wake
Agent mit Nachricht aufwecken — Array-Support
-
write
Langform-Wissen speichern (Architektur, Regeln, Docs)
analyzed analyzer v18 · 11h ago
skills & prompt files 6
- skill7blacky7-synapse-bf2b9b6/skills/projekt-architektur/SKILL.md
- skill7blacky7-synapse-bf2b9b6/skills/projekt-regeln/SKILL.md
- skill7blacky7-synapse-bf2b9b6/skills/projekt-setup/SKILL.md
- skill7blacky7-synapse-bf2b9b6/skills/projekt-status/SKILL.md
- skill7blacky7-synapse-bf2b9b6/skills/synapse-agent-regeln/SKILL.md
- skill7blacky7-synapse-bf2b9b6/skills/synapse-nutzung/SKILL.md
last analysis: too-large · showing evidence from the last successful analysis (3d ago)
filesystem 38
- fs 7blacky7-synapse-bf2b9b6/packages/agents-antigravity/src/runtime.ts :36
import { readFile, writeFile, appendFile, mkdir } from 'node:fs/promises'; - fs 7blacky7-synapse-bf2b9b6/packages/agents-gemini/src/monitor-server.ts :11
import { readFile } from 'node:fs/promises'; - fs 7blacky7-synapse-bf2b9b6/packages/agents-gemini/src/runtime.ts :22
import { writeFile, appendFile, mkdir, readFile } from 'node:fs/promises'; - fs 7blacky7-synapse-bf2b9b6/packages/agents/src/heartbeat.ts :21
import { readdir, unlink, stat } from 'node:fs/promises' - fs 7blacky7-synapse-bf2b9b6/packages/agents/src/process.ts :5
import { writeFile, mkdir } from 'node:fs/promises' - fs 7blacky7-synapse-bf2b9b6/packages/agents/src/skills.ts :1
import { readFile, writeFile, mkdir, readdir, rename, access, rm } from 'node:fs/promises' - fs 7blacky7-synapse-bf2b9b6/packages/agents/src/status.ts :1
import { readFile, writeFile, mkdir } from 'node:fs/promises' - fs 7blacky7-synapse-bf2b9b6/packages/agents/src/wrapper.ts :23
import { unlinkSync, chmodSync, existsSync } from 'node:fs' - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/backup.ts :27
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/code.ts :40
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/documents.ts :38
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/project-status.ts :28
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/shell-exec.ts :14
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/specialist-respawn.ts :22
import { writeFile, readFile } from 'node:fs/promises'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/services/tech-detection.ts :20
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/watcher/ignore.ts :21
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/core/src/watcher/index.ts :26
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/api.ts :19
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/config.ts :15
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/main.ts :15
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/manager.ts :13
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/project-init-worker.ts :15
import * as fs from 'node:fs' - fs 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/shell-job-worker.ts :16
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/daemon-client.ts :8
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/shell.ts :17
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/watcher.ts :9
import { readFileSync, existsSync } from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/init.ts :28
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/migration.ts :37
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/onboarding.ts :24
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/search.ts :29
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/setup.ts :24
import * as fs from 'fs'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/specialists.ts :7
import { writeFile, mkdir } from 'node:fs/promises'; - fs 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/watcher-daemon.ts :20
import { writeFileSync, unlinkSync, mkdirSync, existsSync } from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/packages/rest-api/src/server.ts :11
import { existsSync } from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/scripts/apply-string-extraction.mjs :11
import { readFile, writeFile, readdir } from 'fs/promises'; - fs 7blacky7-synapse-bf2b9b6/scripts/backfill-flow.mjs :15
import fs from 'node:fs'; - fs 7blacky7-synapse-bf2b9b6/scripts/coordinator-watch-live.mjs :40
import { writeFileSync, unlinkSync, readFileSync, existsSync } from 'fs'; - fs 7blacky7-synapse-bf2b9b6/scripts/index-moo-files.mjs :7
import { readdir, stat } from 'fs/promises';
shell / exec 14
- shell 7blacky7-synapse-bf2b9b6/packages/agents-antigravity/src/runtime.ts :35
import { spawn } from 'node:child_process'; - shell 7blacky7-synapse-bf2b9b6/packages/agents/src/detect.ts :2
import { execSync } from 'node:child_process' - shell 7blacky7-synapse-bf2b9b6/packages/agents/src/process.ts :1
import { spawn, type ChildProcess } from 'node:child_process' - shell 7blacky7-synapse-bf2b9b6/packages/core/src/guide/content.ts :1205
'Langlaufende Aufgabe an Sub-Agent delegieren: spawn (1) oder spawn_batch (mehrere atomar).', - shell 7blacky7-synapse-bf2b9b6/packages/core/src/parser/kotlin.ts :480
// 12. Embedded SQL — Exposed/JDBC: exec("SELECT..."), prepareStatement("..."), - shell 7blacky7-synapse-bf2b9b6/packages/core/src/parser/php.ts :349
// 11. Embedded SQL — PDO::query('...'), $pdo->exec('...'), $pdo->prepare('...') - shell 7blacky7-synapse-bf2b9b6/packages/core/src/services/shell-exec.ts :12
import { spawn } from 'node:child_process'; - shell 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/project-init-worker.ts :18
import { execFileSync } from 'node:child_process' - shell 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/daemon-client.ts :7
import { spawn, execSync } from 'child_process'; - shell 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/shell.ts :8
* - exec (default): Kommando ausfuehren - shell 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/watcher.ts :7
import { spawn } from 'node:child_process'; - shell 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/specialists.ts :6
import { spawn } from 'node:child_process'; - shell 7blacky7-synapse-bf2b9b6/packages/rest-api/src/routes/mcp.ts :1020
description: 'Lifecycle-Management der pro-Projekt Docker-Sandbox-Container (synapse-workspace:latest) auf dem Synapse-Server. ⚠️ FUER SHELL-AUSFUEHRUNG: nutze IMMER das shell-Tool (Auto-Routing: loka - shell 7blacky7-synapse-bf2b9b6/packages/rest-api/src/services/workspace-orchestrator.ts :449
async exec(
network 15
- net 7blacky7-synapse-bf2b9b6/packages/agents/src/heartbeat.ts :20
import { connect, type Socket } from 'node:net' - net 7blacky7-synapse-bf2b9b6/packages/agents/src/wrapper.ts :22
import { createServer, type Server, type Socket } from 'node:net' - net 7blacky7-synapse-bf2b9b6/packages/core/src/embeddings/cohere.ts :3
* Nutzt die Cohere API v2 per fetch (kein SDK noetig) - net 7blacky7-synapse-bf2b9b6/packages/core/src/embeddings/google.ts :61
const response = await fetch(url, init); - net 7blacky7-synapse-bf2b9b6/packages/core/src/embeddings/ollama.ts :26
const response = await fetch(`${this.baseUrl}/api/tags`); - net 7blacky7-synapse-bf2b9b6/packages/core/src/services/context7.ts :75
const response = await fetch(url.toString(), { headers: this.getHeaders() }); - net 7blacky7-synapse-bf2b9b6/packages/core/src/services/shell-exec.ts :90
const res = await fetch( - net 7blacky7-synapse-bf2b9b6/packages/core/src/services/skills.ts :40
const res = await fetch(url, { - net 7blacky7-synapse-bf2b9b6/packages/core/src/services/tech-docs.ts :177
const response = await fetch(`${qdrantUrl}/collections/${collectionName}/points/search`, { - net 7blacky7-synapse-bf2b9b6/packages/file-watcher-daemon-ts/src/project-init-worker.ts :133
const res = await fetch(url, { - net 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/daemon-client.ts :32
const res = await fetch(`http://127.0.0.1:${port}/health`, { - net 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/shell.ts :61
const res = await fetch(url, { - net 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/consolidated/watcher.ts :8
import { createConnection } from 'node:net'; - net 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/watcher-daemon.ts :19
import { createServer, type Socket } from 'node:net'; - net 7blacky7-synapse-bf2b9b6/packages/web-ui/src/api/synapse-client.ts :17
const response = await fetch(`${API_BASE}/projects`);
secrets 4
- secrets 7blacky7-synapse-bf2b9b6/packages/agents-gemini/src/runtime.ts :64
const useEnv = (process.env.SYNAPSE_GEMINI_USE_EMBEDDING_KEY ?? 'true').toLowerCase() !== 'false'; - secrets 7blacky7-synapse-bf2b9b6/packages/core/src/config.ts :19
apiKey: process.env.QDRANT_API_KEY || undefined, - secrets 7blacky7-synapse-bf2b9b6/packages/core/src/services/skills.ts :37
const apiKey = process.env.GOOGLE_API_KEY; - secrets 7blacky7-synapse-bf2b9b6/packages/mcp-server/src/tools/specialists.ts :102
const useEmbeddingKey = (process.env.SYNAPSE_GEMINI_USE_EMBEDDING_KEY ?? 'true').toLowerCase() !== 'false';
database 7
- db 7blacky7-synapse-bf2b9b6/packages/agents/src/wrapper.ts :41
import pg from 'pg' - db 7blacky7-synapse-bf2b9b6/packages/core/src/db/client.ts :17
import { Pool } from 'pg'; - db 7blacky7-synapse-bf2b9b6/packages/rest-api/src/services/workspace-orchestrator.ts :24
import type { PoolClient } from 'pg'; - db 7blacky7-synapse-bf2b9b6/scripts/channel-check.mjs :12
const pg = require('pg'); - db 7blacky7-synapse-bf2b9b6/scripts/chat-check.mjs :12
const pg = require('pg'); - db 7blacky7-synapse-bf2b9b6/scripts/coordinator-watch-live.mjs :23
const pg = require('pg'); - db 7blacky7-synapse-bf2b9b6/scripts/event-check.mjs :12
const pg = require('pg');
declared dependencies 3
- @types/node@^20.10.0
- typescript@^5.3.0
- rimraf@^5.0.0