Skip to main content

CLI tool to organize project documentation in a consistent structure

Project description

md-project-manager (pm)

A CLI for the workflow in process.txt.

Install (local dev)

uv pip install -e .

Quick Start

pm init .
pm note "Primary users are nurses and admin"
pm toknow
pm todo
pm phase planning
pm demo "Demoed rota module and captured feedback"
pm flow

Commands

  • pm init [path]: Create workflow files/folders and defaults.
  • pm help: Show commands.
  • pm flow: Show process definition.
  • pm note "...": Append to notes.log.
  • pm toknow [hint] [--date DD/MM/YY] [--model MODEL] [--endpoint URL] [--timeout SEC]: Regenerate toknows.md via Ollama.
  • pm toknow next: Show the next [open] question from toknows.md.
  • pm todo [hint] [--date DD/MM/YY] [--model MODEL] [--endpoint URL] [--timeout SEC]: Regenerate todos.md via Ollama.
  • pm demo "...": Append demo note to blogposts/YYYY-MM-DD.md.
  • pm timeline [--date DD/MM/YY] [--plain]: View notes.log as a compressed vertical timeline.
  • pm phase [recon|planning|building] [--hint ...] [--timeout SEC]: Show/set phase. Transition recon -> planning generates assumptions.md.

Date Filter Behavior

For pm toknow and pm todo:

  • --date DD/MM/YY includes only notes.log entries up to that date.
  • If --date is omitted, all notes are included.
  • Before sending notes to the model, timestamp and username are stripped to reduce token usage.

For pm toknow next:

  • Reads toknows.md and prints the first [open] question to resolve next.

Timeline View

  • pm timeline opens a scrollable terminal view (j/k, arrow keys, PgUp/PgDn, g, G, q).
  • Gaps are compressed (short gaps: none, medium: small spacing, long: labeled gap marker).
  • Use pm timeline --plain for non-interactive output.

Created Layout

pm init creates:

  • .config.yaml
  • .pm_state.json
  • process.txt
  • notes.log
  • toknows.md
  • todos.md
  • blogposts/
  • archives/

archives/ is added to .gitignore on init.

File Update Policy

pm toknow, pm todo, and assumptions generation replace full markdown files. Before replacement, previous versions are copied to archives/ as timestamped backups.

Entry Formats

  • notes.log: DD/MM/YY:HH MM: author: message
  • toknows.md: model-generated markdown
  • todos.md: model-generated markdown
  • assumptions.md: model-generated markdown
  • blogposts/YYYY-MM-DD.md: - DD/MM/YY:HH MM: author: demo note

Author is sourced from git config user.name (fallback: OS login name).

Config (.config.yaml)

ollama_endpoint: http://localhost:11434/api/generate
ollama_model: gpt-oss
ollama_token: REPLACE_ME
ollama_insecure_tls: false
ollama_timeout_sec: 180
process_file: process.txt
prompts:
  toknow: "..."
  todo: "..."
  assumptions: "..."

Prompts are configurable in .config.yaml. ollama_token must be set in .config.yaml for AI commands to run. If endpoint ends with /chat, the CLI uses chat payload format automatically. If your endpoint uses a self-signed cert, set ollama_insecure_tls to true.

Ollama Prerequisite

ollama serve
ollama pull gpt-oss

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

md_project_manager-0.1.0.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

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

md_project_manager-0.1.0-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file md_project_manager-0.1.0.tar.gz.

File metadata

  • Download URL: md_project_manager-0.1.0.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for md_project_manager-0.1.0.tar.gz
Algorithm Hash digest
SHA256 618db547548766f2bf18c9d2d7151a510180d277e82a1aaca0cdf16eff8adf09
MD5 fafd0afaa0b518d5c407dbfec36ceba8
BLAKE2b-256 fef236c8f31a0a1a711af94f863d12a8c19c76a8ddd2c8c5919b8248794972b1

See more details on using hashes here.

File details

Details for the file md_project_manager-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for md_project_manager-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 47d6ec0535dbba36a160973d4ec3c941f389658dd7ed6f70c3856c9730d134ab
MD5 c8c70836c4352f7e295bcdfa4e7dfe76
BLAKE2b-256 c11ce83b0d54916cc2edf256c13b2d1fad4a5859479a13ae59f522f735c5b228

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