Skip to main content

Console mode

[WIP]

Introduction

LumiFind offers a console mode for servers or remote computers such as Network Attached Storage (NAS). Most of these devices do not have a monitor, therefore, a graphical user interface (GUI) cannot be shown.

The console mode for LumiFind can work completely in the terminal. At the first startup, it asks you to register, then create the minimal settings file, then offers a set of options. The console mode is written in plain Python and can be expanded if you are comfortable with programming.

Features

Unfortunately, not every feature in the GUI version is available for the easy use, but the core functionalities can be used. Here are the features it has so far:

  • License Management: Activation, renewal, release, and validation of your LumiFind license.
  • Interactive Setup: Guided creation of a minimal settings file, gated by your license features.
  • Semantic Indexing: Analyze and index documents, images, voice, and video files (as permitted by your license).
  • Semantic Search: Search indexed data by content, supporting multiple data types.
  • Data Management: Clear analyzed data for any supported type.
  • Settings Management: Create, reset, show, and validate your configuration.
  • Non-Interactive Automation: Run indexing or search directly from the command line with flags.
  • Config Validation: Check your settings file for completeness and correctness.

Usage

LumiFind can be used in Linux and macOS devices in Console mode easily.

Requirements

  • Internet access for license activation and model downloads.
  • Read/write access toΒ ~/.lumifind/ for config and database files.

To start in console mode, on Linux and macOS, run:

lf --console

First Run Flow

  1. License Check: On startup, LumiFind checks your license. If missing or invalid, you are prompted to activate with your license key and email.
  2. Settings Setup: If no settings file exists (or you useΒ --setup), LumiFind guides you through creating a minimal configuration:
    • Index folder location
    • File formats to analyze
    • Log export preference
    • Feature enablement (Documents, Images, Voice, Video) based on your license
    • Model selection (with defaults, overridable). See default supported models, or how to use your own model.
  3. Main Menu: After setup, LumiFind presents an interactive menu for all major operations.
Auto-detected system language: English
===========================================
  Welcome to LumiFind Console Mode!
  Website: https://lumifind.midilli.tech
  Backend Version: 1.0.0
  Frontend Version: 1.0.0
  This software is copyrighted.
===========================================
Preparing ...
Preparing ...
Preparing ...
πŸ€– Loading model: sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
πŸ“‚ Found on device. Loading from cache.............
Model will run on: cpu
βœ… Model loaded successfully!

πŸ“‚ Found on device. Loading from cache...
πŸ€– Loading model: openai/clip-vit-base-patch32...
Model will run on: cpu                               ....
βœ… Model loaded successfully!

Model will run on: cpu
πŸ€– Loading model: openai/whisper-small
πŸ“‚ Found on device. Loading from cache...........
Model will run on: cpu
Database folder not found: ~/.lumifind/lumifind_db, will assume fresh installation

What do you want to do?
1. Analyze Documents
2. Search Documents
3. Clear Analyzed Data
4. License Manager
5. Settings (create/show)
q. Exit
Enter choice (1/2/3/4/5/q):

Non-Interactive Flags

LumiFind supports automation via command-line flags. Append the flag after enabling the console mode:

lf --console --flaghere

  • --setup
    Run guided setup to create/reset your settings file.

  • --validate-config
    Validate your settings file for required keys, types, and JSON serializability.

  • --index
    Start indexing using the actual settings immediately and exit.
  • --search "<query>" --type <0|1|2|3>
    Run a search for the given query and type, print results, then exit.

    • Type: 0 = documents, 1 = images, 2 = voice, 3 = video
      Example:

Extending LumiFind

The console mode is written in Python and can be extended for automation, integration, or custom workflows.
You can add new flags, automate menu actions, or integrate with other systems.