# Python Development Rules

```json
    {
    "general": {
        "coding_style": {
            "language": "Python",
            "use_strict": true,
            "indentation": "4 spaces",
            "max_line_length": 120,
            "comments": {
                "style": "# for single-line, ''' for multi-line",
                "require_comments": true
            }
        },
        
        "naming_conventions": {
            "variables": "snake_case",
            "functions": "snake_case",
            "classes": "PascalCase",
            "interfaces": "PascalCase",
            "files": "snake_case"
        },
        
        "error_handling": {
            "prefer_try_catch": true,
            "log_errors": true
        },
        
        "testing": {
            "require_tests": true,
            "test_coverage": "80%",
            "test_types": ["unit", "integration"]
        },
        
        "documentation": {
            "require_docs": true,
            "doc_tool": "docstrings",
            "style_guide": "Google Python Style Guide"
        },
        
        "security": {
            "require_https": true,
            "sanitize_inputs": true,
            "validate_inputs": true,
            "use_env_vars": true
        },
        
        "configuration_management": {
            "config_files": [".env"],
            "env_management": "python-dotenv",
            "secrets_management": "environment variables"
        },
        
        "code_review": {
            "require_reviews": true,
            "review_tool": "GitHub Pull Requests",
            "review_criteria": ["functionality", "code quality", "security"]
        },
        
        "version_control": {
            "system": "Git",
            "branching_strategy": "GitHub Flow",
            "commit_message_format": "Conventional Commits"
        },
        
        "logging": {
            "logging_tool": "Python logging module",
            "log_levels": ["debug", "info", "warn", "error"],
            "log_retention_policy": "7 days"
        },
        
        "monitoring": {
            "monitoring_tool": "Not specified",
            "metrics": ["file processing time", "classification accuracy", "error rate"]
        },
        
        "dependency_management": {
            "package_manager": "pip",
            "versioning_strategy": "Semantic Versioning"
        },
        
        "accessibility": {
            "standards": ["Not applicable"],
            "testing_tools": ["Not applicable"]
        },
        
        "internationalization": {
            "i18n_tool": "Not applicable",
            "supported_languages": ["English"],
            "default_language": "English"
        },
        
        "ci_cd": {
            "ci_tool": "GitHub Actions",
            "cd_tool": "Not specified",
            "pipeline_configuration": ".github/workflows/main.yml"
        },
        
        "code_formatting": {
            "formatter": "Black",
            "linting_tool": "Pylint",
            "rules": ["PEP 8", "project-specific rules"]
        },
        
        "architecture": {
            "patterns": ["Modular design"],
            "principles": ["Single Responsibility", "DRY"]
        }
    },
    
    "project_specific": {
        "use_framework": "None",
        "styling": "Not applicable",
        "testing_framework": "pytest",
        "build_tool": "setuptools",
        
        "deployment": {
            "environment": "Local machine",
            "automation": "Not specified",
            "strategy": "Manual deployment"
        },
        
        "performance": {
            "benchmarking_tool": "Not specified",
            "performance_goals": {
                "response_time": "< 5 seconds per file",
                "throughput": "Not specified",
                "error_rate": "< 1%"
            }
        }
    },
    
    "context": {
        "codebase_overview": "Python-based file organization tool using AI for content analysis and classification",
        "libraries": [
            "watchdog", "spacy", "PyPDF2", "python-docx", "pandas", "beautifulsoup4", 
            "transformers", "scikit-learn", "joblib", "python-dotenv", "torch", "pytest", 
            "shutil", "logging", "pytest-mock"
        ],
        
        "coding_practices": {
            "modularity": true,
            "DRY_principle": true,
            "performance_optimization": true
        }
    },
    
    "behavior": {
        "verbosity": {
            "level": 2,
            "range": [0, 3]
        },
        "handle_incomplete_tasks": "Provide partial solution and explain limitations",
        "ask_for_clarification": true,
        "communication_tone": "Professional and concise"
    }
}
```
