willuri
Natural language to specialized process URI router powered by domain-specific lightweight LLMs.
Overview
In the Paxlet / Willman ecosystem, every capability is addressed by an explicit process URI (willman://operation/..., dockuri://...).
willuri maps natural language user instructions or tickets from the board to specialized process URIs using small, fast, domain-targeted LLMs instead of a monolithic general-purpose model.
Specialized Domain Models
| Domain | Process URI Scope | Primary Model | Alternative | Focus |
|---|---|---|---|---|
code |
willman://operation/code.*, git.resolve_conflicts |
qwen2.5-coder:3b |
willman-nlp:qwen2.5-3b |
Code synthesis, AST edits, diffs, bug repairs |
api_ops |
willman://operation/github.*, dockuri.*, files.* |
granite4.1:3b |
willman-nlp:qwen2.5-3b |
Structured API tools, JSON schema, enterprise ops |
planning |
willman://operation/koru.*, planfile.*, schedule.* |
llama3.2:3b |
willman-nlp:qwen2.5-3b |
Ticket decomposition, sprint planning, DAG subtasks |
text |
willman://operation/text.* |
willman-nlp:qwen2.5-1.5b |
willman-nlp:qwen2.5-3b |
String normalization, fast formatting, prose |
Usage
Python API
from willuri.router import UriRouter
router = UriRouter()
router.add_operation("willman://operation/text.normalize/v1", "Normalize whitespace")
router.add_operation("willman://operation/git.resolve_conflicts/v1", "Resolve git merge conflicts")
result = router.route("Rozwiąż konflikty git w repozytorium")
print(result["uri"])
# => "willman://operation/git.resolve_conflicts/v1"
print(result["model_used"])
# => "qwen2.5-coder:3b"
CLI
willuri classify "Popraw błąd w funkcji liczącej sumę"
willuri route "Znormalizuj odstępy w tekście 'Ala ma kota'"
Verification
python3 -m unittest discover -s tests -v
Metadata
Release files for willuri 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| willuri-0.1.0.tar.gz | 15.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| willuri-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.2 kB
Release files / willuri-0.1.0.tar.gz
| Download URL | willuri-0.1.0.tar.gz |
|---|---|
| Size | 15.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
28f54fcf6e791d6994c54d0c43a0ab66759ea88260ba16de2e763dcbff481369
|
|
BLAKE2b-256 checksum How to use checksums |
84e8f8f480d51009cc36172fe373366e23fa00bfc6784b640bff1a9381c97b0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|
Release files / willuri-0.1.0-py3-none-any.whl
| Download URL | willuri-0.1.0-py3-none-any.whl |
|---|---|
| Size | 15.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
afbff3de1f0deb3520d7d3ff0c565ebcfb4ddc339ff6c1ad695ab61da155b824
|
|
BLAKE2b-256 checksum How to use checksums |
24bca81d918a0fbd7df2f88954961168110488d5b5cc4a170e26fd75a741a048
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|