FAQ & Troubleshooting
uv sync --dev created .venv, but the shell is not activated
uv sync installs the environment, but it does not automatically source it.
Activate it manually:
source .venv/bin/activate
framex run starts, but my plugin is not loaded
Make sure you pass the correct load option.
Use --load-builtin-plugins for built-in plugins, or --load-plugins for your own plugin packages. Both options can be repeated.
framex run --load-builtin-plugins echo
framex run --load-plugins my_plugin --load-plugins another_plugin
pre-commit.ci reports files were modified by this hook
That means the hook reformatted files in CI.
Run the same formatter locally, commit the updated files, and push again:
pre-commit run --all-files
If the repo uses pre-commit.ci, the auto-fix only applies to writable pull request branches. It does not create a new pull request for you.
mypy complains about missing stubs
This usually means a third-party dependency does not ship type information.
There are two practical solutions.
Solution 1: Ignore That Dependency In Mypy
This is not the recommended option, but it is acceptable when no stub package exists.
Add a targeted ignore rule in mypy.ini or pyproject.toml.
For example, for mindforge:
[mypy-mindforge.*]
ignore_missing_imports = True
Avoid disabling missing-import checks globally. Keep the ignore rule scoped to the specific dependency.
Solution 2: Install The Stub Package
This is the recommended option when a matching type stub package exists.
For example:
uv add types-pytz --dev
uv add types-pyyaml --dev
Use this path for libraries such as:
pytz->types-pytzpyyaml->types-pyyaml
If a stub package exists, prefer installing it over adding an ignore rule.