mirror of
https://github.com/Minidoracat/mcp-feedback-enhanced.git
synced 2025-07-27 10:42:25 +08:00
103 lines
2.7 KiB
YAML
103 lines
2.7 KiB
YAML
![]() |
# Pre-commit hooks configuration for mcp-feedback-enhanced
|
||
|
# See https://pre-commit.com for more information
|
||
|
# See https://pre-commit.com/hooks.html for more hooks
|
||
|
|
||
|
repos:
|
||
|
# 通用檔案檢查
|
||
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
||
|
rev: v5.0.0
|
||
|
hooks:
|
||
|
# 移除行尾空白
|
||
|
- id: trailing-whitespace
|
||
|
args: [--markdown-linebreak-ext=md]
|
||
|
# 確保檔案以換行符結尾
|
||
|
- id: end-of-file-fixer
|
||
|
# 檢查合併衝突標記
|
||
|
- id: check-merge-conflict
|
||
|
# 檢查 YAML 語法
|
||
|
- id: check-yaml
|
||
|
args: [--unsafe] # 允許自定義 YAML 標籤
|
||
|
# 檢查 TOML 語法
|
||
|
- id: check-toml
|
||
|
# 檢查 JSON 語法
|
||
|
- id: check-json
|
||
|
# 檢查是否有大檔案
|
||
|
- id: check-added-large-files
|
||
|
args: [--maxkb=1000]
|
||
|
# 檢查檔案名稱
|
||
|
- id: check-case-conflict
|
||
|
# 檢查可執行檔案有 shebang
|
||
|
- id: check-executables-have-shebangs
|
||
|
# 修復混合行結尾
|
||
|
- id: mixed-line-ending
|
||
|
args: [--fix=lf]
|
||
|
|
||
|
# Ruff - Python linting 和 formatting
|
||
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||
|
rev: v0.11.12
|
||
|
hooks:
|
||
|
# Ruff linter with auto-fix
|
||
|
- id: ruff
|
||
|
args: [--fix, --exit-non-zero-on-fix]
|
||
|
types_or: [python, pyi]
|
||
|
# Ruff formatter
|
||
|
- id: ruff-format
|
||
|
types_or: [python, pyi]
|
||
|
|
||
|
# mypy - 靜態類型檢查(暫時禁用,需要修復類型問題)
|
||
|
# - repo: https://github.com/pre-commit/mirrors-mypy
|
||
|
# rev: v1.16.0
|
||
|
# hooks:
|
||
|
# - id: mypy
|
||
|
# additional_dependencies:
|
||
|
# - types-psutil
|
||
|
# - types-aiofiles
|
||
|
# args: [--config-file=pyproject.toml]
|
||
|
# files: ^src/
|
||
|
# exclude: ^tests/
|
||
|
|
||
|
# 檢查 Python 安全性問題(可選,較嚴格)
|
||
|
# - repo: https://github.com/PyCQA/bandit
|
||
|
# rev: 1.7.10
|
||
|
# hooks:
|
||
|
# - id: bandit
|
||
|
# args: ["-c", "pyproject.toml"]
|
||
|
# additional_dependencies: ["bandit[toml]"]
|
||
|
|
||
|
# 全域配置
|
||
|
default_language_version:
|
||
|
python: python3.11
|
||
|
|
||
|
# 排除的檔案和目錄
|
||
|
exclude: |
|
||
|
(?x)^(
|
||
|
\.git/|
|
||
|
\.venv/|
|
||
|
venv/|
|
||
|
build/|
|
||
|
dist/|
|
||
|
node_modules/|
|
||
|
\.trunk/|
|
||
|
\.mypy_cache/|
|
||
|
\.ruff_cache/|
|
||
|
\.pytest_cache/|
|
||
|
__pycache__/|
|
||
|
.*\.egg-info/|
|
||
|
tests/fixtures/.*|
|
||
|
scripts/.*\.js|
|
||
|
src/mcp_feedback_enhanced/web/static/.*
|
||
|
)$
|
||
|
|
||
|
# CI 配置
|
||
|
ci:
|
||
|
autofix_commit_msg: |
|
||
|
[pre-commit.ci] auto fixes from pre-commit.com hooks
|
||
|
|
||
|
for more information, see https://pre-commit.ci
|
||
|
autofix_prs: true
|
||
|
autoupdate_branch: ''
|
||
|
autoupdate_commit_msg: '[pre-commit.ci] pre-commit autoupdate'
|
||
|
autoupdate_schedule: weekly
|
||
|
skip: []
|
||
|
submodules: false
|