Homer 🏠
Homer is a personal productivity CLI for developers — Jira and Clockify integrations from your terminal.
Documentation
- INSTALL.md — Installation, credentials, and configuration
- USAGE.md — Full feature guide and workflows
- CHEATSHEET.md — Quick command reference
- TROUBLESHOOTING.md — Common issues and solutions
Features
⏱️ Clockify Time Tracking
- Start/stop timers with description, project, and tags
- Interactive selectors for projects (from Clockify + Jira) and tags
- View the currently running timer with elapsed time
- Summary and detailed reports by date range, project, or tag
🎯 Jira Issue Management
- List your open issues
- View issue details (status, priority, assignee, description)
- Create issues with type, priority, and description
- Comment on issues and mention teammates
Installation
pipx install homer-cli # recommended
homer init # interactive credential setup
See INSTALL.md for detailed instructions.
Quick Start
homer init # configure credentials
homer jira list # see your open issues
homer jira view NDI-123 # view issue details
homer ck start "Fixing login bug" # start a timer
homer ck start "Code review" -p "web-api" # with project
homer ck start "Standup" -T # open tag selector
homer ck current # check elapsed time
homer ck stop # stop all timers
homer ck summary 2026-01-01 2026-01-31 # monthly report
Commands Reference
Both
homer clockifyandhomer ckare equivalent.
Global
| Command | Description |
|---|---|
homer init |
Interactive credential setup (saves to ~/.env) |
homer --version |
Show installed version |
homer --help |
Show all available commands |
Clockify — Timers
| Command | Description |
|---|---|
homer ck start DESCRIPTION |
Start a timer |
homer ck start DESCRIPTION -p PROJECT |
Start with project name or Jira key |
homer ck start DESCRIPTION -p "" or -P |
Start and open interactive project selector |
homer ck start DESCRIPTION -t "tag1,tag2" |
Start with tags |
homer ck start DESCRIPTION -t "" or -T |
Start and open interactive tag selector |
homer ck current |
Show currently running timer |
homer ck stop |
Stop all running timers |
start options:
| Option | Short | Description |
|---|---|---|
--project PROJECT |
-p |
Project name or Jira key. Empty string or -P opens selector |
--tags TAGS |
-t |
Comma-separated tags. Empty string or -T opens selector |
--select |
-P |
Open interactive project selector |
--select-tags |
-T |
Open interactive tag selector |
Clockify — Reports
| Command | Description |
|---|---|
homer ck summary DATE_FROM DATE_TO |
Summary report grouped by project |
homer ck summary DATE_FROM DATE_TO -g DATE |
Group by date |
homer ck summary DATE_FROM DATE_TO -g TAG |
Group by tag |
homer ck summary DATE_FROM DATE_TO -p PROJECT |
Filter by project |
homer ck summary DATE_FROM DATE_TO -t TAG |
Filter by tag |
homer ck detailed DATE_FROM DATE_TO |
Detailed time entries |
homer ck detailed DATE_FROM DATE_TO -p PROJECT |
Detailed filtered by project |
Dates use YYYY-MM-DD format.
Jira
| Command | Description |
|---|---|
homer jira list |
List your open issues |
homer jira view KEY |
View issue details |
homer jira create SUMMARY |
Create issue (default type: Story, project: from config) |
homer jira create SUMMARY -p KEY -t TYPE --priority P -d TEXT |
Create with all options |
homer jira comment KEY MESSAGE |
Add a comment |
homer jira mention KEY USERNAME MESSAGE |
Mention a user in a comment |
create options:
| Option | Short | Default |
|---|---|---|
--project KEY |
-p |
DEFAULT_PROJECT from config |
--type TYPE |
-t |
Story |
--priority LEVEL |
Medium |
|
--description TEXT |
-d |
(none) |
Configuration
Homer reads credentials from ~/.env:
JIRA_BASE_URL=https://company.atlassian.net
JIRA_USER=you@company.com
JIRA_API_TOKEN=your_token
CLOCKIFY_API_KEY=your_api_key
CLOCKIFY_WORKSPACE=workspace_id
CLOCKIFY_USER=alphanumeric_user_id
⚠️
CLOCKIFY_USERmust be the alphanumeric ID (e.g.646b733087e7196c5c918748), not your email.
Get it with:curl -H "X-Api-Key: YOUR_KEY" https://api.clockify.me/api/v1/user | grep '"id"'
Run homer init to set or update credentials interactively.
Project Structure
src/homer/
├── cli.py # Root CLI (registers clockify, ck, jira)
├── config.py # Settings from ~/.env
├── exceptions.py # Error types
├── clockify/
│ ├── client.py # HTTP client (httpx)
│ ├── service.py # Business logic
│ ├── commands.py # CLI commands (Typer + Rich)
│ └── models.py # Pydantic models
└── jira/
├── client.py
├── service.py
├── commands.py
└── models.py
tests/ # pytest test suite
Development
git clone https://github.com/marcelohfonseca/homer-cli.git
cd homer && pdm install
pdm run pytest tests/ # run tests
pdm run ruff check src/ # lint
pdm run mypy src/ # type check
pdm run homer --help # run from source
License
MIT — see LICENSE file.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file homer_cli-0.2.3.tar.gz.
File metadata
- Download URL: homer_cli-0.2.3.tar.gz
- Upload date:
- Size: 37.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
228d50e90cf76efd6da1778f0ea9e72864d5126b25dfbe3aebd6950d3b414ba0
|
|
| MD5 |
76cdec3796b67436988cf9ac37e49d70
|
|
| BLAKE2b-256 |
6820e7ba6ed782c4ffc4a889dc6c5e3e8bfa30ea2aa79c273b863ab2584399e5
|
File details
Details for the file homer_cli-0.2.3-py3-none-any.whl.
File metadata
- Download URL: homer_cli-0.2.3-py3-none-any.whl
- Upload date:
- Size: 27.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c5b3254b95c5f7efd18c7c51f32960d27434c897521dd48237a18c2c1dac3ee
|
|
| MD5 |
e422e67b1c86cccb227afc1a286d5231
|
|
| BLAKE2b-256 |
4af0e54c5b0334d91d1a3e44c07800e60578ed39d4e5a8093994d24f79475365
|