-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.pytoolsrc
More file actions
307 lines (272 loc) · 9.54 KB
/
.pytoolsrc
File metadata and controls
307 lines (272 loc) · 9.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
#
# Code Intelligence Toolkit Configuration
# Project-specific defaults for the development toolkit
#
# Author: Vaibhav-api-code
# Co-Author: Claude Code (https://claude.ai/code)
# Created: 2025-07-24
# Updated: 2025-07-28 # v1.5.0 - Enhanced CI/automation support
# License: Mozilla Public License 2.0 (MPL-2.0)
[defaults]
# Global defaults applied to all tools
all = false
include_build = false
max_depth = 10
quiet = false
ast_context = true
check_compile = true
# Non-interactive defaults - conservative settings for safety
non_interactive = false # Keep interactive for development
assume_yes = false # Require explicit confirmation
force = false # Never auto-confirm dangerous operations
auto_confirm = false # Require user interaction by default
# v1.5.0 - Enhanced interactive behavior
interactive_mode = true # Allow interactive prompts by default
ci_detection = true # Auto-detect CI environments
quiet_errors = false # Show full error messages with hints
# Development-friendly settings
verbose = false # Set to true for debugging
dry_run = false # Set to true to preview operations
backup = true # Always create backups when modifying files
# Path configurations
default_scope = . # Current directory as default
source_directory = src/ # Source code directory
test_directory = test/ # Test directory
output_directory = output/ # Output directory
log_directory = logs/ # Log files directory
backup_directory = .backups/ # Backup directory for safe operations
[paths]
# Project-specific paths (adjust for your project structure)
java_source = src/main/java/ # Java source directory
python_source = . # Python tools are in root
resources = src/main/resources/ # Resources directory
build_output = build/ # Build output directory
documentation = docs/ # Documentation directory
examples = examples/ # Examples directory
archive = archive/ # Archive directory
# Tool paths
tools_directory = . # Where Python tools are located
config_directory = . # Where config files are stored
[smart_ls]
# Enhanced directory listing defaults
sort = name # Sort by name by default
reverse = false
summary = true
show_size = true
default_extensions = py,java,md # Common file types to focus on
[find_files]
# File search defaults
sort = time # Sort by modification time
reverse = true # Newest first
limit = 100 # Reasonable default limit
default_extensions = py,java # Focus on code files
[recent_files]
# Recent files tracker defaults
since = 2d # Show files from last 2 days
show_size = true
by_dir = false
[tree_view]
# Directory tree visualization defaults
show_size = false # Keep tree view clean
show_stats = false
max_depth = 5 # Reasonable depth for overview
[dir_stats]
# Directory analysis defaults
show_files = true
show_dirs = true
show_recent = true
show_empty = false
[replace_text_v9]
# Text replacement defaults (v9 with undo support)
backup = true # Always backup before replacing
whole_word = false
dry_run = false
check_compile = true
track_undo = true # Enable undo tracking by default
interpret_escapes = false # Enable with --interpret-escapes flag
# For automation, set these in environment or use --yes flag
non_interactive = false
assume_yes = false
[replace_text]
# Legacy alias - redirects to v9 settings
backup = true
track_undo = true
non_interactive = false
assume_yes = false
[replace_text_ast_v3]
# AST-based refactoring defaults (v3 with undo support)
dry_run = false
backup = true
language = auto # Auto-detect language
check_compile = true
track_undo = true # Enable undo tracking
scope_aware = true # Enhanced scope analysis
# v1.5.0 - Interactive support
non_interactive = false
assume_yes = false
[replace_text_ast]
# Legacy alias - redirects to v3 settings
dry_run = false
backup = true
track_undo = true
non_interactive = false
assume_yes = false
[text_undo]
# Text undo system defaults (v1.5.0 - interactive_utils support)
non_interactive = false
assume_yes = false
allow_interactive_selection = true # Allow numbered menu selections
max_history_days = 30 # Keep undo history for 30 days
auto_cleanup = true # Automatically clean old entries
[unified_refactor_v2]
# Universal refactoring defaults (v2 with undo support)
backend = auto # Auto-detect: java_scope for .java, python_ast for .py
dry_run = false
backup = true
check_compile = true
track_undo = true # Enable undo tracking
# v1.5.0 - Interactive support
non_interactive = false
assume_yes = false
[unified_refactor]
# Legacy alias - redirects to v2 settings
backend = auto # Auto-detect backend based on file type
dry_run = false
backup = true
track_undo = true
non_interactive = false
assume_yes = false
[navigate_ast]
# AST navigation defaults
context_lines = 10
json = false
highlight = true
[method_analyzer_ast]
# Method analysis defaults
trace_flow = false
show_args = true
max_depth = 3
ast_context = true
[semantic_diff_ast]
# Semantic diff defaults
score = true
risk_threshold = MEDIUM
[cross_file_analysis_ast]
# Cross-file analysis defaults
analyze = true
show_samples = true
max_samples = 3
recursive = false
max_depth = 3
threads = 4 # Parallel processing
[dead_code_detector]
# Dead code detection defaults
confidence = medium
threads = 4
format = text
language = auto
ast_context = true
[trace_calls]
# Call tracing defaults
max_depth = 3
timeout = 30
direction = both
ast_context = true
[safe_file_manager]
# Safe file manager specific settings
non_interactive = false # Interactive by default
assume_yes = false # Require confirmation
force = false # Never auto-force
verify_checksum = true # Enable safety checks
preserve_attrs = true # Preserve file attributes
paranoid_mode = false # Set true for extra safety
# For automation: export SFM_ASSUME_YES=1
[safegit]
# SafeGIT settings (if using through Python wrapper)
non_interactive = false
assume_yes = false
dry_run = false
# For automation: export SAFEGIT_NONINTERACTIVE=1
[git_commit_analyzer]
# Git analysis defaults
non_interactive = false
assume_yes = false
auto_stage = false # Don't auto-stage files
[organize_files]
# File organization defaults
dry_run = false # Set true to preview
by_type = ext # Organize by extension
non_interactive = false
assume_yes = false
[error_analyzer]
# Error analysis defaults
recent = 10 # Show 10 most recent errors
hours = 24 # Look back 24 hours
pattern = "" # No default pattern filter
[log_analyzer]
# Log analysis defaults
tail = false
follow = false
lines = 100
format = text
# ===== AUTOMATION PROFILES =====
# To use different settings for automation, create additional config files:
# - .pytoolsrc.ci - For CI/CD environments
# - .pytoolsrc.test - For testing
# - .pytoolsrc.prod - For production
#
# Then use: export PYTOOLSRC=.pytoolsrc.ci
# ===== ENVIRONMENT VARIABLE OVERRIDES (v1.5.0) =====
# These override config file settings:
#
# SFM_ASSUME_YES=1 - Auto-confirm safe_file_manager
# SAFEGIT_NONINTERACTIVE=1 - Non-interactive git operations
# PYTOOLSRC_NON_INTERACTIVE=1 - Global non-interactive mode
# PYTOOLSRC=/path/to/config - Use different config file
#
# Tool-specific variables (v1.5.0):
# TEXT_UNDO_ASSUME_YES=1 - Auto-confirm text_undo operations
# REPLACE_TEXT_ASSUME_YES=1 - Auto-confirm replace operations
# REPLACE_TEXT_AST_ASSUME_YES=1 - Auto-confirm AST refactoring
# UNIFIED_REFACTOR_ASSUME_YES=1 - Auto-confirm refactoring
# ===== QUICK AUTOMATION SETUP =====
# For temporary automation without changing this file:
#
# export SFM_ASSUME_YES=1
# export SAFEGIT_NONINTERACTIVE=1
# export SAFEGIT_ASSUME_YES=1
# export TEXT_UNDO_ASSUME_YES=1
# export REPLACE_TEXT_ASSUME_YES=1
# export REPLACE_TEXT_AST_ASSUME_YES=1
# export UNIFIED_REFACTOR_ASSUME_YES=1
# # Run your automated tasks...
# unset SFM_ASSUME_YES SAFEGIT_NONINTERACTIVE SAFEGIT_ASSUME_YES TEXT_UNDO_ASSUME_YES REPLACE_TEXT_ASSUME_YES REPLACE_TEXT_AST_ASSUME_YES UNIFIED_REFACTOR_ASSUME_YES
# ===== CI/CD AUTOMATION PROFILE =====
# Complete environment setup for CI/CD environments
# Copy to .pytoolsrc.ci or export these variables:
#
# # Core automation
# export PYTOOLSRC_NON_INTERACTIVE=1
# export CI=true
# export DISABLE_ERROR_LOGGING=1 # Optional: disable error logging in CI
#
# # File operations
# export SFM_ASSUME_YES=1
# export SFM_NON_INTERACTIVE=1
#
# # Git operations
# export SAFEGIT_NONINTERACTIVE=1
# export SAFEGIT_ASSUME_YES=1
#
# # Text operations with undo
# export TEXT_UNDO_ASSUME_YES=1
# export REPLACE_TEXT_ASSUME_YES=1
# export REPLACE_TEXT_AST_ASSUME_YES=1
# export UNIFIED_REFACTOR_ASSUME_YES=1
#
# # Analysis tools
# export FIND_TEXT_NON_INTERACTIVE=1
# export NAVIGATE_AST_NON_INTERACTIVE=1