Review user prompts for evidence-backed improvement in AI coding collaboration.
Project description
Prompt Diary
Prompt Diary prepares bounded, redacted workspaces from local assistant session history and generates evidenced prompt diary reports that help users review and improve how they collaborate with AI coding agents.
The tool targets Python 3.10 and newer. The package exposes report and prompt-diary
console commands after installation.
Usage
Install the command as an isolated uv tool:
uv tool install .
Then run:
report --help
prompt-diary --help
report prepare --date 2026-05-12 --timezone Asia/Shanghai
report generate --date 2026-05-12 --timezone Asia/Shanghai
During development, uv sync installs the project into the local .venv; use uv run to
execute the command from that environment:
uv run report --help
Development
This project uses uv for Python version, environment, dependency, build, and release workflows.
Environment
Set up the development environment:
uv sync
Run the CLI from the project environment:
uv run report --help
Dependencies
Add runtime dependencies with:
uv add <package>
Add development-only dependencies with:
uv add --dev <package>
Build And Release
Build source and wheel distributions:
uv build
Publish release artifacts only after the package metadata and target registry are configured:
uv publish
Type Checking
Type checking uses basedpyright. The project config enables strict mode for src and tests.
Add type annotations by best effort for new and changed code. This is a hard rule: prefer
explicit, checkable types whenever they improve clarity or allow basedpyright to verify behavior.
Use accurate types when possible instead of relying on repeated validation. At module boundaries,
parse untrusted or loosely structured inputs into precise internal types, then pass those types
through the rest of the code. Do not validate a value and then continue passing the original
loose representation when a richer type, dataclass, TypedDict, NewType, enum, or other
structured representation can preserve the invariant for callers and the type checker.
uv run basedpyright
Tests
Tests use pytest. The pytest config lives in pyproject.toml
and uses strict config and marker validation.
uv run pytest
Linting And Formatting
Linting and formatting use ruff. Ruff is configured for Python 3.10.
The lint rule set is explicit and intentionally broader than Ruff's defaults, covering imports,
modernization, bug-prone patterns, datetime safety, security checks, pathlib usage, pytest style,
exception handling, and simplification rules.
uv run ruff check
uv run ruff format --check
uv run ruff format
Pre-Submit Checks
Before submitting changes, run:
uv run ruff check
uv run ruff format --check
uv run basedpyright
uv run pytest
uv build
Project details
Release history Release notifications | RSS feed
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 prompt_diary-0.1.0a1.tar.gz.
File metadata
- Download URL: prompt_diary-0.1.0a1.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71f170177b17ed07d57b4644c7cb2cea4b0b6ce25147abf0878c4bbcaffe635a
|
|
| MD5 |
6341640c8fcf881fb975260f4e1a4797
|
|
| BLAKE2b-256 |
5fb3420100fabcd4318876d6c5c469e71647b2d65404b02ad6886e3a9efe5a43
|
File details
Details for the file prompt_diary-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: prompt_diary-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 3.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
836abca2e2e44ddc9dba5e6c970ec2f25a901e4946306f67b0741748d19e7cda
|
|
| MD5 |
f6421680f14775b5361f48ecc35d24f7
|
|
| BLAKE2b-256 |
eff2eb86c94f54a08e0f747a1e927e9a2234fad1931801c5d8a81ee983e79a61
|