Vis
Back to extensions

blockether/vis-lang-python

Official

Python tools for Vis: ruff formatting and lint, pytest runs and a managed project REPL.

Install

Only approved releases are listed. Each version keeps its reviewed commit. You are viewing a different version from the catalog default.

Approved releases (31)
  1. 1.14.0Oct 24, 202627232020fa0fRelease notes
  2. 1.13.1Oct 22, 2026f2d327243af3Release notes
  3. 1.13.0Oct 19, 202676099faf2d09Release notes
  4. 1.12.0Oct 19, 20264a40242dd443Release notes
  5. 1.11.4Oct 16, 20260802eb932145Release notes
  6. 1.11.3Oct 15, 20268eef5afa844dRelease notes
  7. 1.11.1Oct 14, 2026f63d158abe77Release notes
  8. 1.11.0Oct 14, 202651d86bc9cbb9Release notes
  9. 1.10.1Oct 8, 2026fc73a9b8132aRelease notes
  10. 1.10.0Oct 8, 20267ad1b08931c0Release notes
  11. 1.9.2Oct 7, 202653ce83babad0Release notes
  12. 1.9.1Oct 5, 2026cd3385181d5aRelease notes
  13. 1.9.0Oct 5, 20264bdfb244513eRelease notes
  14. 1.8.0Oct 4, 20266c6f1a9e75fbRelease notes
  15. 1.7.0Oct 4, 2026424d9460f8b7Release notes
  16. 1.6.2Oct 2, 20267cd26c6e4deaRelease notes
  17. 1.6.1Oct 2, 202649cbd974f5beRelease notes
  18. 1.6.0Oct 2, 20260447572d42b8Release notes
  19. 1.5.1Sep 28, 2026c210114004ecRelease notes
  20. 1.5.0Sep 28, 202655449478fbf4Release notes
  21. 1.4.2Sep 28, 20266b49fe680293Release notes
  22. 1.4.1Sep 27, 202686e266f135beRelease notes
  23. 1.4.0Sep 27, 2026c6283df8e6acRelease notes
  24. 1.3.2Sep 23, 202652143565bac1Release notes
  25. 1.3.1Sep 22, 20261ed633724748Release notes
  26. 1.3.0Sep 21, 202606c3f986796cRelease notes
  27. 1.2.0Sep 21, 2026594c4bc70b86Release notes
  28. 1.1.0Sep 20, 2026c4f270e682d3Release notes
  29. 1.0.2Sep 20, 202659385378f49bRelease notes
  30. 1.0.1Sep 20, 202602496b899e94Release notes
  31. 1.0.0Sep 20, 20266c5eeee1d71bRelease notes

This command selects version 1.1.0 at its approved commit. It never follows a moving tag or branch.

Project: run from your project directory to install in .vis/extensions. This command does not add an extensions entry to vis.yml. Add --save to also record the installation. Save an installation in configuration to share the setup.

Review the source first. --trust allows extension code and build backends to run with your permissions.

vis-agent extension install \
  'blockether/vis-lang-python' \
  --version '1.1.0' \
  --project \
  --trust

Then start Vis or use /reload. Dependencies are prepared automatically.

Already installed? Check, update or roll back
vis-agent extension versions 'blockether/vis-lang-python'
vis-agent extension update 'blockether/vis-lang-python' --trust
vis-agent extension rollback 'blockether/vis-lang-python' --trust

Use the identifier shown above, not the Python package name. Add --project for a project installation. Update selects the latest approved stable version; rollback restores the previous pinned source. Choose a specific version and read the lifecycle contract.

Project details

Version
1.1.0
Extension
blockether/vis-lang-python
Project folder
Repository root
License
Apache-2.0
GitHub stars
0
Downloads
1205
Updated
Sep 20, 2026
GitHub owner
Blockether
Reviewed commit
c4f270e682d3
Metadata checked
Sep 20, 2026

Dependencies

Python >=3.11

  • vis-agent>=0.2.10
  • vis-lang-interface @ git+https://github.com/Blockether/vis-lang-interface@v2.0.0
  • ruff>=0.14

README

vis-lang-python

Python tools for Vis: ruff formatting and lint, pytest runs and a REPL that keeps its globals between calls.

Vis knows nothing about Python. This extension does, and it runs the tools your project already uses — its ruff, its pytest, its interpreter — so what you see here matches what your CI sees.

Install

vis-agent extension install Blockether/vis-lang-python --global --trust

Tools

py.format_code(["src"], is_written=True)     # ruff format
py.lint_code(["src"])                        # ruff check, with rule codes
py.run_tests(["tests"], keyword="repl")      # pytest, counted from its JUnit report
py.repl_start(cwd="~/app")                   # the project's own interpreter
py.repl_eval("model = load()", cwd="~/app")  # globals live between calls
py.repl_stop(cwd="~/app")

Which interpreter runs your tests and REPL is decided per project, first match winning: uv (uv.lock or [tool.uv]), Poetry (poetry.lock), a local .venv, then python3. Ruff is taken from the project's virtualenv, then PATH, then the copy installed with this extension.

Requirements

pytest in the project you test. Everything else is installed with the extension.

Development

vis-agent python -m pytest tests -q

Results follow the contract in vis-lang-interface.

Community feedback

Votes and display names are not verified identities. One vote per network address; shared networks share a vote. Select your current choice again to clear it.

Loading feedback…

Comments

Add a comment

Comments appear after moderation. Use a public display name, not private information. Five comments per network address in 24 hours.

BlocketherReview community code before installing.

1 of 2 · Repository

Add a repository

Share a public GitHub project with a published Release. We check its files and metadata before moderation. New releases are discovered after your repository is approved.

Folder containing pyproject.toml and extension.py. Leave empty if they are at the repository root.

Use v1.2.0 or a monorepo tag such as vis-greeting/v1.2.0. Its version must match the manifest. A Git tag alone is not a published Release.

Submissions stay private until approved. The owner is read from GitHub. A listing does not verify the submitter or audit the code.