The Synara workspace is the local directory where your code lives. You point Synara at a folder on your machine, and it becomes a project — a root that agents can browse, edit, and commit against. Everything Synara stores — threads, messages, checkpoints, attachments, logs — lives on your machine under a single configurable home directory. There is no Synara cloud account, no remote sync, and no external service that holds your repositories or chat history.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Emanuele-web04/synara/llms.txt
Use this file to discover all available pages before exploring further.
Home directory layout
Synara roots all of its stored state under a base directory. By default that directory is~/.synara/. The userdata/ subdirectory (or dev/ when running from source in development mode) holds the live application state:
deriveServerPaths function in config.ts:
The
SYNARA_HOME environment variable overrides the base directory when you need to run multiple isolated Synara instances or store data on a different volume.What each path stores
state.sqlite
The primary SQLite database. Stores every project, thread, message, orchestration event, checkpoint, pinned message, thread marker, and proposed plan. This is the source of truth for your entire Synara history.
settings.json
Serialized
ServerSettings — provider binary paths, custom model lists, the default thread environment mode, streaming preferences, and skill toggles. Edited through the Settings UI or directly on disk.keybindings.json
User-defined keybinding overrides. Synara merges these on top of the built-in bindings at startup.
worktrees/
One subdirectory per
worktree-mode thread. Each subdirectory is a git worktree add checkout of the thread’s branch. Synara reads the .git pointer file inside each worktree to resolve the originating repository root.attachments/
Image files and assistant-selection snippets attached to chat messages. Referenced by
ChatImageAttachment and ChatAssistantSelectionAttachment records in the database. Maximum attachment size per image is 10 MB.logs/
Structured logs written by the server process (
server.log), individual provider adapter event streams (provider/events.log), and per-session integrated terminal output (terminals/).Projects
A project links Synara to a local repository or directory. You create one by pointing Synara at aworkspaceRoot — an absolute path to the directory the agent should treat as its root.
"project" are full code repositories. Projects of kind "chat" are lightweight containers for conversational threads not tied to a codebase. Up to 3 projects can be pinned to the top of the sidebar at once.
Project scripts
Each project can store a set of runnable commands — build, test, lint, and so on — that appear as one-click buttons in the UI:runOnWorktreeCreate is true, Synara runs the script automatically each time it provisions a new Git worktree for this project — useful for npm install, dependency bootstrapping, or any other setup that needs to happen before an agent starts.
Adding a project base directory
TheaddProjectBaseDirectory setting tells Synara which directory to suggest as the default root when you create a new project:
~/code or ~/projects) and Synara will open the file picker there instead of your home folder.
File indexing and workspace entries
When an agent is running, Synara exposes the project’s file tree through aWorkspaceEntries service. The service supports:
browse— recursive directory listing with configurable depthsearch— fuzzy-search for files by name within the workspace rootlistDirectories— directory-only traversal for tree navigationresolveFileBySuffix— resolve a bare filename or partial path to its unique absolute path within the project
invalidate(cwd) when the filesystem changes.
Privacy: all data stays local
Synara is a local-first workspace layer. It does not operate a cloud backend, does not sync your code or chat history to Synara servers, and does not require a Synara account. The only network traffic Synara initiates on your behalf is the traffic to the provider you chose — the same traffic you’d generate by running that provider’s CLI directly from your terminal. Your prompts, file snippets, and diffs go to the provider’s API endpoint (OpenAI, Anthropic, Google, etc.) and nowhere else.Default chat workspace root
When you first open Synara without an explicit project configured, it suggests a default workspace directory derived from your system home folder:~/Documents/Synara directory is used as the chatWorkspaceRoot — a safe default location for loosely-organized chat-mode projects that aren’t tied to an existing repository.
Settings reference
Full documentation of every field in
settings.json, including provider binary paths, default thread mode, and streaming options.Remote access
How to expose the Synara server on a local network and configure the
host, port, and authToken fields.