machichdigital

IDE-Tools · Foto: Homedust, CC BY 2.0

RegelCursor RulesLizenz: CC0 1.0frei kopierbar

Python GitHub Setup

Zuletzt aktualisiert:

⬇ Als Datei laden

⧉ –× kopiert⬇ –× heruntergeladenBewertung:

Typ

Regel

Lizenz

CC0 1.0

Anwendungsfeld

Cursor Rules

Voraussetzungen

Keine besonderen — direkt loslegen.

Cursor-Regel für Python-Repos: einheitliche Struktur, Commit-Konventionen und Branching auf GitHub.

Original-Beschreibung der Autoren: Cursor rules for Python development with GitHub setup integration.

Die Regel

---
description: "Cursor rules for Python development with GitHub setup integration."
globs: **/*
alwaysApply: false
---
{
    "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"
    }
}

So nutzt du sie

Die Regel kopieren (Button oben) oder als Datei herunterladen und im Projekt unter .cursor/rules/ ablegen — Cursor lädt sie beim nächsten Start automatisch. Ältere Cursor-Versionen lesen alternativ eine einzelne .cursorrules-Datei im Projektstamm; dort einfach den Regel-Text ohne den Kopfblock zwischen den ----Zeilen einfügen.

Der Regel-Text ist englisch — Cursor versteht ihn unabhängig von der Sprache, in der Sie mit dem Editor chatten.

Im Detail

Diese Regel gibt Cursor vor, wie ein Python-Projekt auf GitHub organisiert sein soll: Ordnerstruktur, Commit-Nachrichten nach festem Schema und ein klares Branching-Modell (z. B. main/feature-Branches). Statt bei jedem neuen Projekt die Konventionen neu festzulegen oder inkonsistent zu committen, hält sich Cursor automatisch an den vorgegebenen Workflow. Das lohnt sich besonders für Entwickler, die mehrere Python-Repos parallel pflegen oder im Team arbeiten, wo einheitliche Commit-Historie und Branch-Namen die Zusammenarbeit erleichtern. Für ein privates Wegwerf-Skript ohne Versionskontrolle-Anspruch ist der Nutzen gering.

Praxis-Tipp

Nutzen Sie die Regel direkt bei der Repo-Initialisierung, etwa mit dem Prompt „Richte ein neues Python-Projekt mit Git-Struktur ein“, damit Ordner- und Commit-Konventionen von Anfang an stimmen.

Lizenz & Quelle

Inhalt ansehen (python-github-setup.mdc)
Lade …

Erfahrungen & Kommentare.

Funktioniert der Regel bei Ihnen? Tipps, Stolperfallen, Varianten — teilen Sie es mit der Community.

Lade Kommentare …

Ihre IP-Adresse wird zum Schutz vor Missbrauch gespeichert und nach 14 Tagen automatisch entfernt (Datenschutz).

Passt dazu.