@@ -8,10 +8,47 @@ LOG_LEVEL=debug
88# Go to https://smee.io/new set this to the URL that you are redirected to.
99WEBHOOK_PROXY_URL =
1010
11+ # GitHub App Setup (required)
12+ # Your GitHub App's private key, get this from the GitHub App settings page
13+ # To generate: Go to https://github.com/settings/apps -> Your app -> General -> Private keys -> Generate a private key
14+ #
15+ # You need EITHER Option 1 OR Option 2 below (not both):
16+ #
17+ # OPTION 1: Copy the contents of the downloaded .pem file and paste it here
18+ # For multi-line values in .env, use quotes and \n for line breaks:
19+ PRIVATE_KEY = " -----BEGIN RSA PRIVATE KEY-----
20+ ...
21+ -----END RSA PRIVATE KEY-----"
22+
23+ # OPTION 2: Specify the path to your private key file (recommended for security)
24+ # PRIVATE_KEY_PATH=/path/to/your/private-key.pem
25+
1126# patchmycode Configuration
1227# API keys for LLM services (required for code fixing)
28+ # OpenAI API Key - Required for GPT models
1329OPENAI_API_KEY =
30+ # Anthropic API Key - Required for Claude models
1431ANTHROPIC_API_KEY =
32+ # OpenRouter API Key - Optional for access to multiple models through OpenRouter
33+ OPENROUTER_API_KEY =
34+
35+ # Multiple key setup (optional)
36+ # For load balancing or fallbacks, you can configure multiple API keys
37+ # Separate multiple keys with commas (,)
38+ OPENAI_API_KEYS = key1,key2,key3
39+ ANTHROPIC_API_KEYS = key1,key2,key3
40+
41+ # Model provider configuration
42+ # Explicitly specify which provider to use (openai, anthropic, openrouter)
43+ # This overrides automatic detection based on model name
44+ PATCH_MODEL_PROVIDER = openai
45+
46+ # Mode-specific model providers (optional)
47+ PATCH_MODEL_PROVIDER_ARCHITECT = anthropic
48+ PATCH_MODEL_PROVIDER_PATCHER = openai
49+ PATCH_MODEL_PROVIDER_HYBRID_SECURITY = anthropic
50+ PATCH_MODEL_PROVIDER_HYBRID_PERFORMANCE = openai
51+ PATCH_MODEL_PROVIDER_HYBRID_TYPESCRIPT = openai
1552
1653# Label that triggers patchmycode to fix an issue
1754PATCH_TRIGGER_LABEL = fix:auto
@@ -26,21 +63,37 @@ GIT_TIMEOUT=60000
2663PATCH_PR_LABELS = automated-fix,patchmycode-generated
2764
2865# Comment templates
29- PATCH_PROCESSING_COMMENT = " 🤖 Im working on fixing this issue automatically..."
30- PATCH_SUCCESS_COMMENT = " ✅ Ive created a pull request with a fix for this issue."
31- PATCH_FAILURE_COMMENT = " ❌ I wasnt able to automatically fix this issue."
66+ PATCH_PROCESSING_COMMENT = " 🤖 I'm working on fixing this issue automatically..."
67+ PATCH_SUCCESS_COMMENT = " ✅ I've created a pull request with a fix for this issue."
68+ PATCH_FAILURE_COMMENT = " ❌ I wasn't able to automatically fix this issue."
3269
33- # LLM model to use
34- # For OpenAI models:
70+ # Mode-specific model configuration
71+ # Default model to use for all modes if mode-specific models aren't specified
3572PATCH_MODEL = gpt-4o
36- # For Anthropic/Claude models (MUST use --use-anthropic flag):
37- # PATCH_MODEL=claude-3-7-sonnet-20250219
38- # PATCH_MODEL=claude-3-opus-20240229
39- # PATCH_MODEL=claude-3-sonnet-20240229
73+
74+ # Mode-specific models (optional)
75+ PATCH_MODEL_ARCHITECT = claude-3-7-sonnet-20250219
76+ PATCH_MODEL_PATCHER = gpt-4o
77+ PATCH_MODEL_HYBRID_SECURITY = claude-3-opus-20240229
78+ PATCH_MODEL_HYBRID_PERFORMANCE = gpt-4o-mini
79+ PATCH_MODEL_HYBRID_TYPESCRIPT = gpt-4o
80+
81+ # Default processing mode
82+ PATCH_DEFAULT_MODE = patcher
4083
4184# Additional arguments to pass to the AI engine (comma-separated)
42- # IMPORTANT: When using Claude models, you MUST include --use-anthropic here
43- # PATCH_EXTRA_ARGS=--use-anthropic
85+ # For Claude models, older versions required --use-anthropic but newer versions use --sonnet, --opus, etc. flags
86+ # The appropriate flag will be added automatically based on the model name
87+ PATCH_EXTRA_ARGS =
88+
89+ # Mode-specific extra arguments (comma-separated, optional)
90+ # PATCH_EXTRA_ARGS_ARCHITECT=--extra-arg
91+ # PATCH_EXTRA_ARGS_PATCHER=--timeout=300
92+ # PATCH_EXTRA_ARGS_HYBRID_SECURITY=--security-focus
93+
94+ # Multi-pass processing configuration
95+ PATCH_ENABLE_MULTIPASS = true
96+ PATCH_MULTIPASS_SEQUENCE = architect,patcher
4497
4598# Branch configuration
4699PATCH_BRANCH_PREFIX = patch-fix-
@@ -54,3 +107,6 @@ PATCH_PR_DRAFT=false
54107PATCH_INCLUDE_FILES =
55108# Files to exclude from analysis (glob patterns, comma-separated)
56109PATCH_EXCLUDE_FILES = node_modules/**,.git/**
110+
111+ # Repository specific configuration path
112+ PATCH_CONFIG_PATH = .patchmycode/config.json
0 commit comments