50% OFF all plans!View Pricing →

Project Configuration

Configure Synoppy on a per-project basis with synoppy.json.

Creating Project Config

Initialize a project configuration file in your project root:

bash
synoppy init

Or use the slash command during a session:

bash
/init

Example Configuration

synoppy.json
{
  "allowedTools": ["read", "write", "bash"],
  "blockedTools": ["delete"],
  "customInstructions": "This is a React project using TypeScript. Follow the existing code patterns.",
  "ignorePatterns": ["node_modules", "dist", ".git", "*.log"],
  "model": "claude-sonnet-4-6",
  "thinkingEnabled": true
}

Configuration Options

OptionTypeDescription
allowedToolsstring[]Tools Synoppy can use without asking
blockedToolsstring[]Tools Synoppy should never use
customInstructionsstringProject-specific instructions for the AI
ignorePatternsstring[]Files/folders to ignore (glob patterns)
modelstringDefault model for this project
thinkingEnabledbooleanEnable extended thinking by default

Custom Instructions

Add project-specific context and guidelines that Synoppy will follow:

json
{
  "customInstructions": "This is a Next.js 14 app with App Router. Use Server Components by default. Follow these conventions:\n- Use TypeScript strict mode\n- Prefer 'const' over 'let'\n- Use Tailwind CSS for styling\n- Place components in src/components"
}

Custom instructions are included with every request to help Synoppy understand your project's conventions.

Ignore Patterns

Prevent Synoppy from reading or modifying certain files:

json
{
  "ignorePatterns": [
    "node_modules",
    "dist",
    "build",
    ".git",
    "*.log",
    "*.env*",
    "secrets/**"
  ]
}

Tip: Use ignore patterns to protect sensitive files and reduce noise in large projects.

Configuration Hierarchy

Settings are applied in this order (later overrides earlier):

  1. Default settings
  2. Global config (~/.synoppy/config.json)
  3. Project config (synoppy.json)
  4. Command line flags
  5. Session commands (/model, etc.)

Next: Permissions

Learn about Synoppy's permission system and how to control tool access.

Permissions