Configuration

jott uses JSON configuration files stored in ~/.jot/ and project-local .jot.json files.

Task Storage

Tasks are stored per-directory in .jot.json:

{
  "tasks": [
    {
      "id": 1,
      "text": "feed the cats",
      "done": false,
      "current": true
    }
  ],
  "archived": []
}

Deleted tasks are moved to the archived array rather than permanently removed.

Project Registry

Projects are registered in ~/.jot-projects.json. Auto-discovery scans ~/projects/ for directories containing .jot.json files on first run.

# Manually register a project
jott --register my-project /path/to/project

# Unregister a project
jott --unregister my-project

# Refresh auto-discovery
jott --refresh

Symlinked directories are automatically deduplicated by resolved path.

Keyword Configuration

Keywords are configured in ~/.jot-keywords.json:

{
  "keywords": {
    "gcal": {
      "auto_trigger": true,
      "description": "Export task to Google Calendar"
    },
    "ai": {
      "auto_trigger": true,
      "description": "Mark task for AI/agent"
    },
    "analyze": {
      "auto_trigger": true,
      "description": "Analyze with Claude Code"
    },
    "remind": {
      "auto_trigger": false,
      "description": "Display system notification"
    },
    "all": {
      "auto_trigger": true,
      "description": "Broadcast to all projects"
    }
  },
  "aliases": {
    "claude": "ai"
  }
}

Use the keyword: task text format when adding tasks to trigger the associated action automatically.

Category Configuration

Categories are stored per-project in .jot-categories/. Use Tab in quick-add mode to cycle through categories, or configure templates for common category sets.

Google Calendar Setup

  1. Enable the Google Calendar API in Google Cloud Console.

  2. Create OAuth 2.0 credentials (Desktop app type).

  3. Save credentials:

    mkdir -p ~/.jot
    mv ~/Downloads/credentials.json ~/.jot/credentials.json
    
  4. Press Shift+G on any task to authenticate via browser.

Multi-account support stores separate credentials per account:

~/.jot/gcal-accounts/
├── work/
│   ├── credentials.json
│   └── token.json
└── personal/
    ├── credentials.json
    └── token.json

Environment Variables

Variable

Description

EDITOR

Editor used for task notes (default: vi)

JOT_DIR

Override the default project directory for auto-discovery