SynapseOrch 2.0 is a release candidate; the stable release is 1.9.3. How to try 2.0

Code Repositories

SynapseOrch can index code repositories and give agents the ability to search them semantically and lexically.

Agents describe what they want in plain language and receive file names, line numbers, and relevant code snippets. They can also grep, glob, and read line ranges — see Code Search for the full tool list.

How it works

  1. You add a repo by its absolute path on the server.
  2. SynapseOrch walks the directory tree and splits files into overlapping chunks, following each language's structure where it can.
  3. Each chunk is embedded with your embedding model and stored in PostgreSQL + pgvector.
  4. Agents call the code search toolkit (search_codebase, grep, glob, …) at run time.
  5. SynapseOrch returns ranked chunks for semantic queries, or exact matches for lexical queries.

Prerequisites

  • PostgreSQL with the pgvector extension
  • An Embedding model selected in Settings → Models. There is no default — indexing fails with "Embedding model is not configured" until one is set. See Embedding models.

Setting up PostgreSQL + pgvector

In Settings → General, toggle Code repository indexing on. SynapseOrch inspects your machine and shows the right next step:

What SynapseOrch findsWhat it shows
Working PostgreSQL with pgvectorNothing more — you're done
PostgreSQL not installedOS-specific install instructions
No database configuredA form for host, port, username, password, database name. Click Create database to provision it and enable pgvector
pgvector missingInstructions to run CREATE EXTENSION vector; plus OS package install commands
Connection brokenThe credentials form pre-filled, with the failing URL surfaced — click Save & connect

If you'd rather set it up by hand:

CREATE DATABASE synapse;
\c synapse
CREATE EXTENSION vector;

…and then point SynapseOrch at it via the same Settings → General toggle.

The toggle and the connection are stored as the settings embed_code and sql_connection_string. This database holds the code index only; it is separate from SynapseOrch's own store.

Adding a repository

Go to Settings → Repos and click Add repo:

FieldDefaultDescription
Repo name—Display name (e.g. "Frontend App")
Absolute directory path—Full path to the repo on the host
Interconnection description—Hint for the LLM about what this repo contains
Extra excluded patterns (Advanced settings)—One per line. Names match anywhere; paths anchor; *.ext works as a glob
Included file types (Advanced settings)the list belowGlobs, one per line — only matching files are indexed

Default included file types: *.py, *.ts, *.tsx, *.js, *.jsx, *.rs, *.go, *.java, *.md, *.html, *.vue, *.svelte, *.css, *.scss, *.cpp, *.c.

Excluded by default: dotfiles, node_modules, __pycache__, venv, .git, *.pyc — plus about fifty patterns that are always excluded (build output, dependencies, caches, editor folders, lock files, logs, minified files). Always excluded automatically in the form lists them.

Click Save repository.

Indexing

Saving a repository starts indexing straight away, as long as the path exists and Code repository indexing is on — there is no separate Index button. The card shows the status:

indexing → indexed

— or stopping, stopped or error. While it runs, the card counts chunks indexed so far. Stop indexing cancels it. Large repos (10k+ files) may take several minutes.

Re-indexing

After significant code changes, click Re-index on the repo card. Only changed files are processed, unless the embedding model's vector size has changed, which forces a full rebuild.

Assigning repos to agents

Open the agent in Agents, set Agent Type to Code, and click the repos it should search under Linked Repositories. Only Code agents keep linked repositories. Their system prompt lists the repos and nudges them to use the code search tools early in the loop.

Advanced: equivalent agent JSON

{ "type": "code", "repos": ["repo_1726412345678"] }

Filesystem access

A Filesystem server is built in and starts with SynapseOrch. It is rooted at every configured repository's path, the vault, and any Allowed directories in Settings → General, and it restarts when you add or remove a repository. You don't add it yourself.

Every agent gets its read tools by default — read_file, read_multiple_files, search_files, list_directory, get_file_info. The engine's own file tools — grep, glob, read_file_by_lines — read from the same folders and nowhere else; see Code Search → Where they can read. Its write tools, such as write_file and edit_file, reach only agents that are given them — enabled in the agent's Tools section, or through an all tool list. Together, search_codebase (find the relevant files) and the filesystem tools (read and edit them) give an agent a complete software engineering loop.

Embedding models

Pick the model in Settings → Models → Embedding model. The list offers the embedding models of the providers you have configured. For OpenAI Compatible and Local V1 Compatible endpoints, name the models under the card's Embedding model names (comma-separated) first.

SynapseOrch knows the vector size of these models:

ProviderModels
Geminigemini-embedding-001, text-embedding-004
OpenAItext-embedding-3-small, text-embedding-3-large, text-embedding-ada-002
Bedrockbedrock.amazon.titan-embed-text-v2:0, bedrock.amazon.titan-embed-text-v1, bedrock.cohere.embed-english-v3, bedrock.cohere.embed-multilingual-v3
Ollamanomic-embed-text, mxbai-embed-large, all-minilm

Other models work too; SynapseOrch measures their vector size with a test call.

On this page