Vix language project management & build tool. CLI name: very.
- Python >=3.13, uv-managed, setuptools build
- Entrypoint:
main.py→main:main(installed asveryviapyproject.toml[project.scripts]) - Commands:
add,del,list,prune,init,search,install,update,run— registered incmds/__init__.py, all extendCommandfromcmds/base.py
uv tool install . # install `very` CLI
very add <package> # git-clone into .vix/libs/
very del <package> # rm -rf from .vix/libs/
very list [-t|--tree] # list installed packages
very prune [--empty-only | --invalid-only]
very init <name> # scaffold new vix project
very search [keyword] [--sort stars|updated|name] [--limit N] [--no-cache] [--clear-cache] [--cache-status]
very build [vixc options...] # compile main.vix; if gcc is available, use vixc -obj + gcc link, else direct vixc
very run [-k|--keep] [vixc options...] # build + run + cleanup (keep with -k)
very install # install deps from vindex.toml
very update [<package>] # git pull package(s)parse_pack_name() handles many shorthand forms:
| Input | Resolves to |
|---|---|
fexcode.vnet |
github.com/fexcode/vnet |
fexcode.vnet@master |
github.com/fexcode/vnet branch master |
gitee.com:fexcode.vnet |
gitee.com/fexcode/vnet |
gitee:fexcode.vnet |
gitee.com/fexcode/vnet (.com auto-added) |
@fexcode.vnet |
gitee.com/fexcode/vnet (@ prefix → gitee) |
vnet (bare name) |
github.com/vixlang/vlib-vnet |
ruff check . # linter (dev dep)
black . # formatter (dev dep)Test framework: pytest (dev dep). Run: uv run pytest tests/ (100 tests, all passing).
VIX_HOMEenv var overrides default.vix/(gitignored)- Installed packages:
$VIX_HOME/libs/{host}/{user}/{repo}/ - Package validity: must contain
vindex.toml - Search cache:
$VIX_HOME/cache/search_cache.json(1 h expiry)
- Runtime:
gitpython,rich,tqdm - Dev:
ruff,black
PyPI index defaults to Tsinghua mirror (commented out in pyproject.toml; uncomment [[tool.uv.index]] to enable).
uv.lock is gitignored — run uv lock to regenerate.
- 任何修改都要及时 git 提交
- 任何代码/功能修改后必须更新版本号 (pyproject.toml)
- 对于探索类型任务, 拆分模块发动多个 subagent 并发探索, 不要只用单个 agent