You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

dstack-yaml-manager

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dstack-yaml-manager

A Terminal User Interface for managing dstack YAML configurations

0.1.4
Source
pipPyPI
Maintainers
1

dstack Management Tool

A powerful Terminal User Interface (TUI) for managing dstack YAML configurations with virtual file storage, note-taking, and intelligent state restoration.

Features

🌳 Virtual File Tree - Organize dstack YAML files by type (Task, Service, Fleet, Server) and custom groups
📝 Note Taking - Add markdown notes to any file with auto-save functionality
💾 SQLite Storage - All files and metadata stored in a local database
🔄 State Restoration - Automatically restore your session when switching between directories
Fast Navigation - Keyboard shortcuts for all operations
📋 Smart Clipboard - Copy file paths and dstack commands with Ctrl+A
🎯 File Management - Add, delete, and organize files with confirmation dialogs

Installation

Install via pip:

pip install dstack-yaml-manager

Or install from source:

git clone <repository-url>
cd dstack-mgmt-tool
pip install -e .

Configuration

On first run, the tool automatically creates a configuration file at ~/.dstack-mgmt/config.yml:

database:
  path: ~/.dstack-mgmt/dstack_manager.db
  auto_backup: true
  backup_count: 5
ui:
  auto_save_notes: true
  auto_save_delay: 1.0
  restore_state: true
paths:
  default_workspace: ~/
  scan_hidden_dirs: false

Usage

Basic Usage

# Launch in current directory
dstack-yaml-manager

# Launch in specific directory
dstack-yaml-manager ~/my-dstack-project

# Show configuration
dstack-yaml-manager --config

# Reset configuration to defaults
dstack-yaml-manager --reset-config

Keyboard Shortcuts

KeyAction
Ctrl+XSmart quit (saves state and exits)
Ctrl+NAdd new file to database
Ctrl+GCreate new custom group
Ctrl+RRefresh file tree
Ctrl+ANavigate to file (copy paths/commands)
Ctrl+SSave current note
Ctrl+URename selected file or group
Delete / Ctrl+DDelete selected file/group
EscapeExit note editing mode
TabAuto-complete file paths
↑↓←→Navigate tree and scroll preview

File Organization

Files are automatically grouped by type:

  • Task - *.task.dstack.yml
  • Service - *.service.dstack.yml
  • Fleet - *.fleet.dstack.yml
  • Server - *.server.dstack.yml
  • Unknown - Other .dstack.yml files

You can also create custom groups and assign files to them.

Note Taking

Click on the Note tab to add markdown notes to any selected file. Notes are:

  • Auto-saved as you type (1-second delay)
  • Manually saved with Ctrl+S
  • Stored in the SQLite database
  • Persistent across sessions

State Restoration

The tool automatically saves and restores your session state including:

  • Selected file and active tab
  • Expanded tree nodes
  • Last working directory

Database Location

By default, the database is stored at ~/.dstack-mgmt/dstack_manager.db. You can change this in the configuration file.

Development

Install development dependencies:

pip install -e ".[dev]"

Run tests:

pytest

Format code:

black dstack_mgmt/

License

MIT License - see LICENSE file for details.

Contributing

  • Fork the repository
  • Create a feature branch
  • Make your changes
  • Add tests if applicable
  • Submit a pull request

Requirements

  • Python 3.8+
  • textual >= 0.38.0
  • rich >= 13.0.0
  • PyYAML >= 6.0

Keywords

dstack yaml tui management terminal cli

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts