dirseq

The fastest way to generate sequential numbers for your directories. Never manually track file versions again.

~/projects/my-awesome-app
mkdir experiment-$(dirseq)
Created directory: experiment-1
touch results-$(dirseq).log
Created file: results-2.log
dirseq -p 4
0003

Why Choose dirseq?

Built for developers who value simplicity, speed, and reliability in their workflow automation.

Blazing Fast

Written in Go with SQLite backend. Get your sequence numbers in milliseconds, not seconds.

Per-Directory Sequences

Each directory maintains its own independent counter. Switch between projects seamlessly.

Persistent Memory

Remembers your sequences across sessions. Never lose track of where you left off.

Cross-Platform

Works on Linux, macOS, and Windows. One tool for all your development environments.

Zero Configuration

Install and start using immediately. No config files, no setup wizards, just pure productivity.

Flexible Padding

Custom padding for consistent file naming. Perfect for ordered file systems.

Perfect For

Real-world scenarios where dirseq becomes indispensable

Experiment Tracking

Version your ML experiments, A/B tests, and research iterations automatically.

Build Artifacts

Sequential versioning of builds, releases, and deployment packages.

Log Management

Organize application logs, debug sessions, and output files systematically.

Common Usage Patterns
# Experiment directories
mkdir experiment-$(dirseq)
# Versioned outputs
./build.sh > build-$(dirseq).log
# Padded sequences
touch session-$(dirseq -p 3).txt
# Custom starting point
dirseq set-seq 100
dirseq # outputs: 101

Real-World Showcases

See how developers use dirseq to streamline their daily workflows

🧪

ML Experiment Tracking

Automatically version research iterations and results

# Create experiment directories
mkdir $(dirseq)-initial-setup
# → Creates: 1-initial-setup
mkdir $(dirseq)-feature-work
# → Creates: 2-feature-work
python train.py > results-$(dirseq).log
# → Creates: results-3.log
python evaluate.py --model v$(dirseq) > eval-$(dirseq).json
# → Creates: eval-4.json
💡
Pro Tip
Each directory maintains its own independent sequence, so you can use dirseq across multiple projects simultaneously

Get Started in Seconds

Choose your preferred installation method and start automating your workflow

Go Install

RECOMMENDED
go install github.com/sarkarshuvojit/dirseq@latest

Requires Go 1.21+ • Installs directly to your $GOPATH/bin

GitHub Releases

BINARY
Download pre-built binaries for Linux, macOS, and Windows. No dependencies required.
View Releases
Zero Dependencies
Works on any modern operating system out of the box