Yet ANother Knowledge App — capture engineering decisions from conversation and retrieve them later.
Project description
yanka
Remember why you made engineering decisions.
Yanka is a local-first CLI for your own engineering memory. /log while the context is fresh; /ask months later and get the why back with citations. Records are markdown on disk — portable, inspectable, rebuildable.
Try it
pip install yanka
yanka
Python 3.12+. First run: pick a data directory and LLM provider, then you're in the REPL. Paste this:
/log We moved auth session storage from Redis to Postgres so ops is simpler and debugging is SQL-first.
/ask Why did we move auth session storage to Postgres?
Demo
/log — brain dump, a few clarifying questions, structured record
/ask — plain English, cited answer from your records
Commands
| Command | What it does |
|---|---|
/log [text] |
Capture a decision (inline or prompted) |
/ask [question] |
Query your knowledge base with citations |
/rebuild |
Rebuild graph/vector indexes from markdown |
/resume |
Continue an interrupted /log |
/help |
Full command reference |
Why Yanka exists
Engineers often make numerous quick decisions, instantly forgetting the reasoning behind them.
The result is familiar: a few weeks later, you remember what changed, but not why it changed, what alternatives were considered, or which tradeoffs mattered at the time.
Yanka is built for that gap.
It keeps decision capture lightweight:
/logwhile the context is fresh — capture the reasoning before it disappears/asklater — retrieve the why with citations from your own records
Everything is stored as markdown on disk: local-first, portable, and rebuildable.
No heavy docs. No lost context. Just a better way to keep track of engineering decisions.
Homebrew (macOS)
brew tap Nambu14/yanka
brew install yanka
Contributing
git clone https://github.com/Nambu14/yanka.git
cd yanka
pip install -e ".[dev]"
pytest -q
Docs: docs/yanka-spec.md · docs/architecture.md · docs/operations.md · docs/future-improvements.md
Get started
pip install yanka && yanka/logone real decision from this week/askand confirm you get the why back in seconds
Useful? Star the repo · Open an issue for bugs and ideas.
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
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 yanka-0.3.5.tar.gz.
File metadata
- Download URL: yanka-0.3.5.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a64e8c4a7b265710061a5254bb36bb5878c7427c9ef11163259daa5ba65e96b
|
|
| MD5 |
c4cfa45b352941676adee40bb4ad4f83
|
|
| BLAKE2b-256 |
6a9be939550edcb8a70d972e0f5405b4cde805acd749e0b3d623e0f2c453dc78
|
Provenance
The following attestation bundles were made for yanka-0.3.5.tar.gz:
Publisher:
release.yml on Nambu14/yanka
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
yanka-0.3.5.tar.gz -
Subject digest:
7a64e8c4a7b265710061a5254bb36bb5878c7427c9ef11163259daa5ba65e96b - Sigstore transparency entry: 1684668619
- Sigstore integration time:
-
Permalink:
Nambu14/yanka@9d5739523c185022116bebbf7e42cda861e23abb -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Nambu14
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9d5739523c185022116bebbf7e42cda861e23abb -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file yanka-0.3.5-py3-none-any.whl.
File metadata
- Download URL: yanka-0.3.5-py3-none-any.whl
- Upload date:
- Size: 121.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a62f8413fe2a31550a5b5cfd95aab322a7fe9ca84fa6f26e5a72e14237718750
|
|
| MD5 |
c66f7073fac49501dd430a606f0764e9
|
|
| BLAKE2b-256 |
fb4392a8cd382a67b52b2879186cacc04255ad826269a4d0438ce08283969a6c
|
Provenance
The following attestation bundles were made for yanka-0.3.5-py3-none-any.whl:
Publisher:
release.yml on Nambu14/yanka
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
yanka-0.3.5-py3-none-any.whl -
Subject digest:
a62f8413fe2a31550a5b5cfd95aab322a7fe9ca84fa6f26e5a72e14237718750 - Sigstore transparency entry: 1684670119
- Sigstore integration time:
-
Permalink:
Nambu14/yanka@9d5739523c185022116bebbf7e42cda861e23abb -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Nambu14
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9d5739523c185022116bebbf7e42cda861e23abb -
Trigger Event:
workflow_dispatch
-
Statement type: