Table of Contents


kontaktdb (/ˈkɑntækt diː biː/ or "contact D B") is a contact management application that I made in order to store, retrieve, and edit basic contact information in plain text because I wasn't happy with the existing software available.

Right now it supports adding the following contact information:

There are plans to add more supported categories and custom categories in the future.

kontaktdb is a simple shell script not much larger than a hundred lines of code. It is POSIX compliant except for the use of sed -i. This means it should run on almost every *nix environment including Linux distributions and BSDs.

The program used to be called 'kontakt' but then I found out the KDE project has a project called 'Kontact' and I opted to rename to reduce confusion. I am not overly attached to the name so if you've come up with something better, please let me know.

Why Does This Exist?

I didn't like the existing options for managing contacts on the command line. Programs like abook and khard are nice, but I wanted something much, much simpler since I didn't need the complexity offered by the other options.

The goals for this program are:

The overarching goal of the project is to provide a really simple way to manage basic contact information. There is no planned support for anything more than plain text with each line having tab-delimited fields representing one contact; if you need CardDAV support or anything else like that, this is not the application for you.


The latest release can be downloaded on the project release page. To get the most up-to-date, bleeding edge version, clone the git repository.

Installing, Using, and Customizing

Please refer to the README file for instructions on installating, using, and customizing the software.


If you would like to submit a bug report, suggest a feature, or have any other feedback or contribution that you are thinking about submitting, you can post it on the project’s public mailing list.

If you’ve made changes to the code which you wish to share with me, I accept contributions through email which you can learn how to do using the website.