wrknv 2025-08-09
Initial extraction of wrknv workspace environment tool from TofuSoup
522 files · 75,898+ · 15,573-

Package extraction and rename from wrkenv to wrknv

4 files changed
  • __init__.py New package root with version and public API exports
  • pyproject.toml Full project metadata, dependencies, CLI entry points, ruff/mypy config
  • hub_cli.py Hub CLI with click-based command routing
  • nested_commands.py Nested command loading for modular CLI architecture
  • Extracted workspace environment management from TofuSoup monorepo into standalone wrknv package with full CLI, config, container, workspace, and task subsystems instantiate architectural
    2 files
    • __init__.py
    • pyproject.toml
  • Renamed all references from wrkenv to wrknv throughout the codebase, updating imports, entry points, and module paths decouple architectural
    2 files
    • __init__.py
    • hub_cli.py

CLI command suite

8 files changed
  • check.py Environment check command for validating tool installations
  • config.py Configuration management commands (init, show, validate)
  • container.py Container lifecycle commands (build, run, exec, logs)
  • doctor.py Diagnostic doctor command for environment health checks
  • gitignore.py Gitignore generation and management commands
  • run.py Task runner command for executing wrknv.toml tasks
  • security.py Security scanning commands (gitleaks, trufflehog)
  • workspace.py Workspace orchestration commands
  • Added 15+ CLI subcommands covering config, container, doctor, gitignore, lock, profile, run, secrets, security, setup, terraform, tools, and workspace operations instantiate behavioral
    4 files
    • check.py
    • config.py
    • container.py
    • run.py

Tool manager hierarchy

5 files changed
  • base.py Abstract base manager with version resolution and binary management
  • base.py Terraform/OpenTofu base manager with version detection and install
  • go.py Go toolchain manager
  • uv.py UV Python package manager integration
  • base.py Secrets management base (Vault/IBM)
  • Established pluggable tool manager hierarchy supporting terraform, tofu, go, uv, bao, and subrosa (Vault/IBM) with shared base for version resolution, download, and binary management instantiate architectural
    3 files
    • base.py
    • base.py
    • go.py

Task system and workspace orchestration

4 files changed
  • registry.py Task registry for wrknv.toml task definitions
  • executor.py Task executor with subprocess management and streaming
  • orchestrator.py Multi-project workspace orchestration
  • discovery.py Workspace project discovery and dependency resolution
  • Added TOML-based task runner with nested task support, composite tasks, environment variable injection, and parallel execution capabilities instantiate architectural
    3 files
    • registry.py
    • executor.py
    • schema.py

Comprehensive test suite

1 file changed
  • conftest.py Shared test fixtures and configuration
  • Added 100+ test modules covering CLI commands, config, container operations, gitignore, managers, tasks, workspace, memray profiling, and security subsystems qualify internal
    3 files
    • conftest.py
    • test_hub_cli.py
    • test_registry.py

CI/CD workflows and documentation

4 files changed
  • ci.yml CI workflow with test, lint, type check, and coverage
  • security.yml Security scanning workflow with gitleaks and trufflehog
  • index.md MkDocs documentation site root
  • mkdocs.yml MkDocs configuration with material theme
  • Added GitHub Actions workflows for CI, security scanning, release, and validation along with full MkDocs documentation site baseline external
    3 files
    • ci.yml
    • security.yml
    • mkdocs.yml