pumbaa

module
v1.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2026 License: Apache-2.0

README ΒΆ

Pumbaa

A CLI tool for interacting with Cromwell workflow engine and WDL files.

πŸ“– Pumbaa Documentation

Installation

curl -sSL https://raw.githubusercontent.com/lmtani/pumbaa/main/install.sh | bash

Or download from GitHub Releases.

Quick Start

pumbaa config init   # Interactive setup wizard
pumbaa dashboard     # Launch interactive TUI

Development

Prerequisites
  • Go 1.21+
Build
go build -o pumbaa ./cmd/pumbaa

# Run tests
go test ./...
Project Structure
cmd/pumbaa/           # CLI entrypoint
internal/
  β”œβ”€β”€ domain/         # Business entities and ports
  β”œβ”€β”€ application/    # Use cases
  β”œβ”€β”€ infrastructure/ # External services (Cromwell, GCS, LLM)
  └── interfaces/     # CLI commands and TUI
docs/                 # MkDocs documentation

Contributing

Directories ΒΆ

Path Synopsis
cmd
cli command
Package main provides the entry point for the pumbaa CLI.
Package main provides the entry point for the pumbaa CLI.
internal
application
Package application contains error definitions for application layer use cases.
Package application contains error definitions for application layer use cases.
application/bundle
Package create contains the use case for creating WDL bundles.
Package create contains the use case for creating WDL bundles.
application/workflow
Package workflow contains use cases for workflow management operations.
Package workflow contains use cases for workflow management operations.
config
Package config provides application configuration.
Package config provides application configuration.
container
Package container provides dependency injection container.
Package container provides dependency injection container.
domain/bundle
Package bundle contains domain entities for WDL bundle operations.
Package bundle contains domain entities for WDL bundle operations.
domain/ports
Package ports contains domain port (interface) definitions.
Package ports contains domain port (interface) definitions.
domain/wdlindex
Package wdlindex provides domain models for WDL workflow indexing.
Package wdlindex provides domain models for WDL workflow indexing.
domain/workflow
Package workflow contains the domain entities and business logic for workflows.
Package workflow contains the domain entities and business logic for workflows.
infrastructure/chat/agent/tools
Package tools provides implementations of tools for use with Google Agents ADK.
Package tools provides implementations of tools for use with Google Agents ADK.
infrastructure/chat/agent/tools/cromwell
Package cromwell provides action handlers for Cromwell workflow operations.
Package cromwell provides action handlers for Cromwell workflow operations.
infrastructure/chat/agent/tools/gcs
Package gcs provides action handlers for Google Cloud Storage operations.
Package gcs provides action handlers for Google Cloud Storage operations.
infrastructure/chat/agent/tools/types
Package types provides common types shared across tool handlers.
Package types provides common types shared across tool handlers.
infrastructure/chat/agent/tools/wdl
Package wdl provides action handlers for WDL knowledge base operations.
Package wdl provides action handlers for WDL knowledge base operations.
infrastructure/chat/llm
Package llm provides a factory for creating LLM instances based on configuration.
Package llm provides a factory for creating LLM instances based on configuration.
infrastructure/chat/llm/ollama
Package ollama provides an implementation of model.LLM for Ollama, allowing local models to be used with the Google Agents ADK.
Package ollama provides an implementation of model.LLM for Ollama, allowing local models to be used with the Google Agents ADK.
infrastructure/cloudlogging
Package cloudlogging provides Cloud Logging adapter for batch logs.
Package cloudlogging provides Cloud Logging adapter for batch logs.
infrastructure/cromwell
Package cromwell provides an implementation of ports.WorkflowRepository using the Cromwell API.
Package cromwell provides an implementation of ports.WorkflowRepository using the Cromwell API.
infrastructure/session
Package session provides a SQLite-based implementation of the ADK session.Service interface.
Package session provides a SQLite-based implementation of the ADK session.Service interface.
infrastructure/wdl
Package wdl provides WDL indexing infrastructure.
Package wdl provides WDL indexing infrastructure.
interfaces/cli/handler
Package handler provides CLI command handlers.
Package handler provides CLI command handlers.
interfaces/cli/presenter
Package presenter provides terminal output formatting utilities.
Package presenter provides terminal output formatting utilities.
interfaces/tui
Package tui provides the terminal user interface for the application.
Package tui provides the terminal user interface for the application.
interfaces/tui/common
Package common provides shared utilities and styles for the TUI.
Package common provides shared utilities and styles for the TUI.
interfaces/tui/dashboard
Package dashboard provides the dashboard screen for the TUI.
Package dashboard provides the dashboard screen for the TUI.
interfaces/tui/debug
Package debug provides an interactive TUI for debugging Cromwell workflow metadata.
Package debug provides an interactive TUI for debugging Cromwell workflow metadata.
interfaces/tui/debug/tree
Package tree provides tree visualization logic for workflow debugging.
Package tree provides tree visualization logic for workflow debugging.
pkg
wdl
Package wdl provides parsing, analysis, and bundling capabilities for WDL files.
Package wdl provides parsing, analysis, and bundling capabilities for WDL files.
wdl/ast
Package ast defines the Abstract Syntax Tree structures for WDL documents.
Package ast defines the Abstract Syntax Tree structures for WDL documents.
wdl/visitor
Package visitor implements a visitor pattern to build AST from parse tree.
Package visitor implements a visitor pattern to build AST from parse tree.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL