Moribito: An Interactive Terminal-Based LDAP Server Explorer Built with Go

Moribito: An Interactive Terminal-Based LDAP Server Explorer Built with Go

Summary

Moribito is a powerful terminal-based LDAP server explorer developed in Go, leveraging BubbleTea for a modern TUI. It offers interactive navigation of LDAP directory trees, detailed record viewing, custom query execution, and robust connection management, making LDAP exploration efficient and user-friendly.

Repository Info

Updated on November 7, 2025
View on GitHub

Tags

Click on any tag to explore related repositories

Introduction

Moribito, which means "forest-person" in Japanese, is a sophisticated terminal-based LDAP server explorer built with Go and the modern TUI framework, BubbleTea. Designed for system administrators and developers, Moribito provides an interactive and intuitive interface for navigating LDAP directory trees, viewing detailed records, and executing custom queries directly from your terminal. It streamlines the process of managing and exploring LDAP environments with features like efficient pagination, secure authentication, and flexible configuration.

Installation

Getting started with Moribito is straightforward, with several convenient installation methods available.

Homebrew (Recommended for macOS/Linux)

For users on macOS and Linux, Homebrew offers the simplest installation:

brew install moribito

Quick Install Scripts

Moribito also provides convenient scripts for quick installation across various platforms:

Linux/Unix:

curl -sSL https://raw.githubusercontent.com/ericschmar/moribito/main/scripts/install.sh | bash

macOS:

curl -sSL https://raw.githubusercontent.com/ericschmar/moribito/main/scripts/install-macos.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/ericschmar/moribito/main/scripts/install.ps1 | iex

For other installation options, including manual downloads from GitHub releases or building from source, please refer to the official repository.

Examples

Moribito offers flexible ways to connect and interact with your LDAP servers.

Command Line Connection

You can connect directly using command-line options:

moribito -host ldap.example.com -base-dn "dc=example,dc=com" -user "cn=admin,dc=example,dc=com"

Configuration File

For more complex setups or multiple connections, Moribito supports configuration files. You can generate a sample configuration:

moribito --create-config

A basic config.yaml might look like this:

ldap:
    host: "ldap.example.com"
    port: 389
    base_dn: "dc=example,dc=com"
    use_ssl: false
    use_tls: false
    bind_user: "cn=admin,dc=example,dc=com"
    bind_pass: "your-password"

Interactive Querying

The Query View allows you to execute custom LDAP filters. For instance:

  • (objectClass=person) - Find all person objects.
  • (cn=john*) - Find objects with a common name starting with "john".
  • (&(objectClass=person)(mail=*@example.com)) - Find people with example.com emails.

Moribito also includes a handy feature to format complex queries for better readability. Simply press Ctrl+F in the Query View.

Why Use Moribito?

Moribito stands out as an excellent choice for LDAP exploration due to several key advantages:

  • Modern Terminal User Interface (TUI): Built with BubbleTea, it provides a clean, intuitive, and highly interactive experience directly in your terminal, eliminating the need for graphical tools.
  • Comprehensive Features: From interactive tree navigation and detailed record viewing to powerful custom query capabilities with automatic pagination, Moribito covers all essential LDAP exploration needs.
  • Performance and Reliability: Intelligent pagination efficiently handles large datasets, loading results on demand. Automatic retry functionality ensures robust connection management, gracefully handling network issues.
  • Secure and Flexible: Supports SSL/TLS and various authentication methods, ensuring secure connections. Its flexible configuration via command-line flags or YAML files adapts to diverse environments.
  • Cross-Platform Compatibility: Easily installable on macOS, Linux, and Windows, making it a versatile tool for any developer or administrator.

Links