libredesk

module
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2026 License: AGPL-3.0

README

Zerodha Tech Badge

Libredesk

Modern, open source, self-hosted customer support desk. Single binary app.

image

Visit libredesk.io for more info. Check out the Live demo.

Features

  • Multi Shared Inbox
    Libredesk supports multiple shared inboxes, letting you manage conversations across teams effortlessly.
  • Granular Permissions
    Create custom roles with granular permissions for teams and individual agents.
  • Smart Automation
    Eliminate repetitive tasks with powerful automation rules. Auto-tag, assign, and route conversations based on custom conditions.
  • CSAT Surveys
    Measure customer satisfaction with automated surveys.
  • Macros
    Save frequently sent messages as templates. With one click, send saved responses, set tags, and more.
  • Smart Organization
    Keep conversations organized with tags, custom statuses for conversations, and snoozing. Find any conversation instantly from the search bar.
  • Auto Assignment
    Distribute workload with auto assignment rules. Auto-assign conversations based on agent capacity or custom criteria.
  • SLA Management
    Set and track response time targets. Get notified when conversations are at risk of breaching SLA commitments.
  • Custom attributes
    Create custom attributes for contacts or conversations such as the subscription plan or the date of their first purchase.
  • AI-Assist
    Instantly rewrite responses with AI to make them more friendly, professional, or polished.
  • Activity logs
    Track all actions performed by agents and admins—updates and key events across the system—for auditing and accountability.
  • Webhooks
    Integrate with external systems using real-time HTTP notifications for conversation and message events.
  • Command Bar
    Opens with a simple shortcut (CTRL+K) and lets you quickly perform actions on conversations.

And more checkout - libredesk.io

Installation

Docker

The latest image is available on DockerHub at libredesk/libredesk:latest

# Download the compose file and sample config file in the current directory.
curl -LO https://github.com/abhinavxd/libredesk/raw/main/docker-compose.yml
curl -LO https://github.com/abhinavxd/libredesk/raw/main/config.sample.toml

# Copy the config.sample.toml to config.toml and edit it as needed.
cp config.sample.toml config.toml

# Run the services in the background.
docker compose up -d

# Setting System user password.
docker exec -it libredesk_app ./libredesk --set-system-user-password

Go to http://localhost:9000 and login with username System and the password you set using the --set-system-user-password command.

See installation docs


Binary
  • Download the latest release and extract the libredesk binary.
  • Copy config.sample.toml to config.toml and edit as needed.
  • ./libredesk --install to setup the Postgres DB (or --upgrade to upgrade an existing DB. Upgrades are idempotent and running them multiple times have no side effects).
  • Run ./libredesk --set-system-user-password to set the password for the System user.
  • Run ./libredesk and visit http://localhost:9000 and login with username System and the password you set using the --set-system-user-password command.

See installation docs


Developers

The backend is written in Go and the frontend is Vue.js 3 with Shadcn UI.

Translators

You can help translate Libredesk into your language on Crowdin.

Directories

Path Synopsis
internal
activity_log
Package activity manages activity logs for all users.
Package activity manages activity logs for all users.
ai
Package ai manages AI prompts and integrates with LLM providers.
Package ai manages AI prompts and integrates with LLM providers.
auth
Package auth implements OIDC multi-provider authentication and session management
Package auth implements OIDC multi-provider authentication and session management
authz
package authz provides Casbin-based authorization.
package authz provides Casbin-based authorization.
autoassigner
Package autoassigner continuously assigns conversations at regular intervals to users.
Package autoassigner continuously assigns conversations at regular intervals to users.
automation
Package automation automatically evaluates and applies rules to conversations based on events like new conversations, updates, and time triggers, and performs some actions if they are true.
Package automation automatically evaluates and applies rules to conversations based on events like new conversations, updates, and time triggers, and performs some actions if they are true.
business_hours
Package businesshours handles the management of business hours and holidays.
Package businesshours handles the management of business hours and holidays.
business_hours/models
Package models contains the data models for the businesshours package.
Package models contains the data models for the businesshours package.
colorlog
package colorlog provides ANSI color logging for the terminal.
package colorlog provides ANSI color logging for the terminal.
conversation
Package conversation manages conversations and messages.
Package conversation manages conversations and messages.
conversation/priority
Package priority handles the management of conversation priorities.
Package priority handles the management of conversation priorities.
conversation/status
Package status handles the management of conversation statuses.
Package status handles the management of conversation statuses.
crypto
Package crypto provides AES-256-GCM encryption/decryption utilities
Package crypto provides AES-256-GCM encryption/decryption utilities
csat
Package csat contains the logic for managing CSAT.
Package csat contains the logic for managing CSAT.
csat/models
package models has the models for the customer satisfaction survey responses.
package models has the models for the customer satisfaction survey responses.
custom_attribute
Package customAttribute handles the management of custom attributes for contacts and conversations.
Package customAttribute handles the management of custom attributes for contacts and conversations.
dbutil
Package dbutil provides utility functions for database operations.
Package dbutil provides utility functions for database operations.
envelope
Package envelope provides custom error types and utility functions for API error handling.
Package envelope provides custom error types and utility functions for API error handling.
image
Package image provides utilities for processing image files, including retrieving image dimensions and creating thumbnails.
Package image provides utilities for processing image files, including retrieving image dimensions and creating thumbnails.
inbox
Package inbox provides functionality to manage inboxes in the system.
Package inbox provides functionality to manage inboxes in the system.
inbox/channel/email
Package email provides functionality for an email inbox with multiple SMTP servers and IMAP clients.
Package email provides functionality for an email inbox with multiple SMTP servers and IMAP clients.
inbox/channel/email/oauth
Package oauth provides OAuth 2.0 authentication support for email channels.
Package oauth provides OAuth 2.0 authentication support for email channels.
macro
Package macro provides functionality for managing templated text responses and actions.
Package macro provides functionality for managing templated text responses and actions.
media
Package media provides functionality for managing files backed by fs or S3.
Package media provides functionality for managing files backed by fs or S3.
media/stores/s3
Package s3 provides an implementation of the media.Store interface for AWS S3 storage.
Package s3 provides an implementation of the media.Store interface for AWS S3 storage.
report
Package report handles the management of reports.
Package report handles the management of reports.
role
Package role handles role-related operations including creating, updating, fetching, and deleting roles.
Package role handles role-related operations including creating, updating, fetching, and deleting roles.
search
Package search provides search functionality.
Package search provides search functionality.
setting
Package setting handles the management of application settings.
Package setting handles the management of application settings.
sla
stringutil
Package stringutil provides string utility functions.
Package stringutil provides string utility functions.
tag
Package tag handles the management of tags.
Package tag handles the management of tags.
team
Package team handles the management of teams and their members.
Package team handles the management of teams and their members.
template
Package template manages templates including creation, retrieval and rendering.
Package template manages templates including creation, retrieval and rendering.
user
Package user managers all users in libredesk - agents and contacts.
Package user managers all users in libredesk - agents and contacts.
view
Package view handles the management of conversation views.
Package view handles the management of conversation views.
webhook
Package webhook handles the management of webhooks and webhook deliveries.
Package webhook handles the management of webhooks and webhook deliveries.
ws
Package ws handles WebSocket connections and broadcasting messages to clients.
Package ws handles WebSocket connections and broadcasting messages to clients.

Jump to

Keyboard shortcuts

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