Skip to main content

Keyboard-driven TUI frontend for AiiDA verdi CLI

Project description

lazyverdi

键盘驱动的 AiiDA verdi 命令 TUI 前端,让你像用 lazygit 一样优雅地管理 AiiDA

为什么做这个

verdi 命令行的几个痛点:

  • 低效: 反复输入 verdi process list → 筛选 → verdi process kill PK → 查看日志
  • 无状态: 命令之间不断丢失上下文
  • 批量操作困难: 需要编写脚本

参考 lazygit/lazydocker 设计的 TUI 工具,做到:

  • 键盘驱动,操作跟手
  • 异步执行,不打断心流
  • 多选和批量操作(vim 快捷键)

安装

lazyverdi 依赖 aiida-core 库,请安装到包含它的虚拟环境

uv pip install lazyverdi
lazyverdi

开发

uv pip install -e ".[dev]"
pre-commit install
pytest tests/  # 需要 ≥70% 覆盖率

功能状态

  • ✅ 7 面板 UI 布局 + 异步命令执行
  • ✅ Vim 风格键盘导航
  • ✅ 配置系统(~/.config/lazyverdi/config.yaml

限制:仅支持查询命令(list/show/status),不支持交互式命令

配置规则

配置文件位置 ~/.config/lazyverdi/config.yaml,遵从 yaml 语法

参数名称 类型 默认值 可选值 说明
theme str monokai 任意 Textual 主题 配色主题
auto_refresh_interval float 10 ≥0.1 或 ≤0 自动刷新间隔,单位秒;支持浮点数;设置为 0 或负数表示禁用
auto_refresh_on_startup bool true true/false 应用启动时是否启用自动刷新
left_panel_width_percent int 40 1-99 左侧面板宽度百分比(右侧面板自动占用剩余空间)
results_panel_height_percent int 80 1-99 结果面板(panel-0)高度百分比
focused_panel_height_percent int 50 1-99 面板获得焦点时的高度百分比
show_line_numbers bool false true/false 是否在文本区域显示行号
soft_wrap bool true true/false 是否启用长行软换行
scrollbar_vertical_width int 1 1-3 垂直滚动条宽度(字符数)
scrollbar_horizontal_height int 1 1-3 水平滚动条高度(字符数)
show_welcome_message bool true true/false 启动时是否显示欢迎消息
initial_focus_panel int 0 0-6 启动时默认聚焦的面板(0=details, 1-5=左侧面板, 6=状态面板)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lazyverdi-0.9.0.tar.gz (139.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lazyverdi-0.9.0-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file lazyverdi-0.9.0.tar.gz.

File metadata

  • Download URL: lazyverdi-0.9.0.tar.gz
  • Upload date:
  • Size: 139.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lazyverdi-0.9.0.tar.gz
Algorithm Hash digest
SHA256 18cf850c19033fa907077e37326b71a22045c4b07d1da459e664e22d0b5a01db
MD5 e3801e70d2a68ba368d4db7ddae8eed3
BLAKE2b-256 d5a1d00467187ac426768701dc8ab5f88e7b12347e9259d60a6a737f82442b72

See more details on using hashes here.

Provenance

The following attestation bundles were made for lazyverdi-0.9.0.tar.gz:

Publisher: publish.yml on xbugs221/lazyverdi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lazyverdi-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: lazyverdi-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lazyverdi-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fd07ac7a5848ae0f601ce0c57681701fbf7704853ba51ed6f436803f4155250b
MD5 e8e32038493a59b754ea7c6748f22a64
BLAKE2b-256 d03e7db4550070b83b85a8f32849207f9b7e78db1c300ca3db244fe4d85c0ac7

See more details on using hashes here.

Provenance

The following attestation bundles were made for lazyverdi-0.9.0-py3-none-any.whl:

Publisher: publish.yml on xbugs221/lazyverdi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page