Skip to main content

A plain-text task manager and time tracker with pluggable AI parsing (Ollama / OpenAI-compatible / Anthropic).

Project description

jasem

A plain-text task manager and time tracker for your terminal, with pluggable AI parsing. One file, zero dependencies, your data in human-readable Markdown.

Install & run

Needs Python 3.8+.

pipx install jasem      # recommended — isolated, puts `jasem` on your PATH
# or
pip install jasem

Then write a task in plain language and see what's due:

$ jasem "pay rent next friday, high priority, finance"
✓ added #1: pay rent
  priority=high  deadline=2026-06-19  tags=finance

$ jasem today
Due today
  ☐   2  [medium]  2026-06-15 (today)  call dentist  #health

That's the whole loop: write naturally, jasem extracts the deadline, priority, and tags for you.

Features

  • Natural-language tasksjasem "submit report by friday, work" becomes a title, deadline, priority, and tags.
  • Views & editsjasem list, today, week, overdue, done 3, set 3 deadline tomorrow, rm 3.
  • Time trackingjasem track "1h 30min, code review, work", then jasem track week for per-day totals; fix or drop an entry with jasem track set 3 time 2h and jasem track rm 3.
  • Plain-text storage — everything lives in ~/.jasem/*.md; read, grep, edit, sync, or version-control it however you like.
  • Pluggable AI, local by default — runs fully offline with Ollama, or point it at any OpenAI-compatible API or Anthropic. If no model is reachable, tasks still save (dates parsed by regex).

Choosing an AI backend

Parsing is the only step that uses a model — pick one with environment variables:

# Local, free, private (default) — just have Ollama running
ollama serve && ollama pull qwen2.5:3b

# Any OpenAI-compatible API (OpenAI, Groq, OpenRouter, LM Studio, …)
export JASEM_PROVIDER=openai JASEM_API_KEY=sk-...
export JASEM_OPENAI_API_BASE=https://openrouter.ai/api/v1  # or OPENAI_BASE_URL

# Anthropic (Claude)
export JASEM_PROVIDER=anthropic JASEM_API_KEY=sk-ant-...

More

Run jasem help for the full command reference, every option, and all configuration variables.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jasem-0.5.0.tar.gz (29.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jasem-0.5.0-py3-none-any.whl (32.4 kB view details)

Uploaded Python 3

File details

Details for the file jasem-0.5.0.tar.gz.

File metadata

  • Download URL: jasem-0.5.0.tar.gz
  • Upload date:
  • Size: 29.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for jasem-0.5.0.tar.gz
Algorithm Hash digest
SHA256 967b47173c89e0ba78771d2c0b30bcbe3f914ed1408e83940f47d2d622fcefc9
MD5 e9baef85e5a9f1c679df9e578b6d823f
BLAKE2b-256 6d0815a6c135136c38d04d70af3c96f7a8780fc83788dba91e766e5bf5e15f66

See more details on using hashes here.

File details

Details for the file jasem-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: jasem-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 32.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for jasem-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e6b00ebd6fdae6adf7459cdb348b5e52482410618218ec8dc828081f54216bd2
MD5 07306ea6bc9288633a0545fa3a080bc6
BLAKE2b-256 e571ebc5bf93fa82c45779dacc26e9464d4b14a4a4430cb5514c6082ca835a6b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page