Workflows

Daily log

A common pattern is to append notes throughout the day:

duras append "started work on authentication refactor #project"
duras append "standup: blocked on API credentials #meeting"
duras append "received credentials, unblocked #project"
duras append "end of day: PR ready for review #project"

At the end of the day, open the note to add longer thoughts:

duras

Review

See what you were working on this time last year:

duras echo

See notes from the past few days:

duras near

See statistics across your entire archive:

duras stats

Backup

Create a timestamped archive of all notes:

duras export ~/backup

The archive is a standard .tar.gz file. To also encrypt it:

duras export ~/backup --encrypt

No plaintext archive is written to disk when using --encrypt.

Encrypted notes

To write a note that is encrypted on disk:

duras -c append "private thought"
duras -c show
duras -c open

Encrypted notes require GPG. Set DURAS_GPG_KEY to specify which key to use:

export DURAS_GPG_KEY=0xYOURKEYID

Without DURAS_GPG_KEY, duras encrypts to your default GPG key.

Encrypted notes are not searchable with duras search.

Shell integration

Print the path to today's note:

duras path

Use this to open notes with a specific editor option:

vim "$(duras path)"

Count words across all notes:

wc -w "$(duras dir)"/**/*.dn

Search notes with grep directly:

grep -r "#bug" "$(duras dir)"

Validate your archive

Check that your notes directory is correctly structured:

duras audit

Exits 0 if everything is clean, 1 if any issues are found. Prints collection is clean if no issues are found.

Move a note to a different date

duras mv 2026-06-04 2026-06-05

Both plain and encrypted variants are moved if they exist.