.PHONY: install check test mcp mcp-smoke mcp-docs docs-check upload skill-install skill-check clean

install:
	@uv sync
	@uv run pre-commit install

check:
	@uv lock --locked
	@uv run ruff check .
	@uv run ruff format --check .
	@uv run python -m mypy src
	@uv run deptry .

test:
	@uv run python -m pytest --cov --cov-config=pyproject.toml --cov-report=term-missing

mcp:
	@echo '宿主注册： command=<项目根>/.venv/Scripts/python.exe, args=-m src.mcp.server, cwd=<项目根>, transport=stdio'
	@echo '自检： make mcp-smoke'

mcp-smoke:
	@uv run python scripts/mcp_smoke.py

mcp-docs:
	@uv run python scripts/gen_mcp_docs.py

docs-check:
	@uv run python scripts/gen_mcp_docs.py --check

upload:
	@uv run python -m src.upload.server

skill-install:
	@uv run python scripts/install_skill.py

skill-check:
	@uv run python scripts/install_skill.py --check

clean:
	@rm -rf .venv __pycache__ .pytest_cache .mypy_cache .ruff_cache