GΕosowa nawigacja CLI z kontekstowym wsparciem
Framework do gΕosowej i tekstowej interakcji z narzΔdziami deweloperskimi (make, shell, git, docker, python) poprzez warstwΔ DSL z inteligentnymi sugestiami.
| JΔzyk | Kod | TTS Voice | PrzykΕad |
|---|---|---|---|
| π΅π± Polski | pl |
pl-PL-MarekNeural | "zbuduj projekt" |
| π©πͺ Deutsch | de |
de-DE-ConradNeural | "bauen Projekt" |
| π¬π§ English | en |
en-US-GuyNeural | "build project" |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β UΕΌytkownik β
β (gΕos / tekst / terminal) β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β Voice Layer (TTS/STT) β
β Whisper / Edge-TTS / pyttsx3 β
β π΅π± PL | π©πͺ DE | π¬π§ EN β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β text2DSL Parser β
β WielojΔzyczne rozpoznawanie intencji + kontekst β
ββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββ
β
βββββββββββββ¬βββββββββββββΌββββββββββββ¬ββββββββββββββ
β β β β β
βββββΌββββ ββββββΌβββββ ββββββΌββββ ββββββΌββββββ ββββββΌββββββ
β text2 β β text2 β β text2 β β text2 β β text2 β
β make β β shell β β git β β docker β β python β
βββββββββ βββββββββββ ββββββββββ ββββββββββββ ββββββββββββ
# Podstawowa instalacja
pip install -e .
# Z obsΕugΔ
gΕosu
pip install -e ".[voice]"
# PeΕna instalacja (voice + dev tools)
pip install -e ".[all]"# Polski (domyΕlny)
text2dsl
# Niemiecki
text2dsl --lang de
# Angielski
text2dsl --lang en# Polski
text2dsl "zbuduj projekt"
text2dsl "uruchom testy"
text2dsl "wypchnij zmiany"
# Niemiecki
text2dsl --lang de "bauen"
text2dsl --lang de "Tests ausfΓΌhren"
# Angielski
text2dsl --lang en "build project"
text2dsl --lang en "run tests"# GΕosowy tryb w polskim
text2dsl --voice --lang pl
# GΕosowy tryb w niemieckim
text2dsl --voice --lang de
# GΕosowy tryb w angielskim
text2dsl --voice --lang en# Eksport do ZIP
text2dsl --export
# Eksport do TAR.GZ
text2dsl --export --format tar.gz
# Eksport z wΕasnΔ
nazwΔ
text2dsl --export -o moj_projekt.zip
# Lista plikΓ³w w projekcie
text2dsl --list-filesfrom text2dsl import (
Text2DSLOrchestrator,
OrchestratorConfig,
VoiceConfig,
get_language_config
)
# Konfiguracja dla jΔzyka niemieckiego
lang_config = get_language_config("de")
voice_config = VoiceConfig(
language="de",
voice_name=lang_config.edge_tts_voice
)
config = OrchestratorConfig(
voice_enabled=True,
voice_config=voice_config,
language="de"
)
orchestrator = Text2DSLOrchestrator(config)
# Wykonaj polecenie po niemiecku
response = orchestrator.process("bauen") # β make build
print(response.message)
# ZmieΕ jΔzyk na polski
orchestrator.parser.set_language("pl")
response = orchestrator.process("zbuduj") # β make build| Polski | Deutsch | English | Komenda |
|---|---|---|---|
| zbuduj | bauen | build | make all |
| testy | tests | tests | make test |
| wyczyΕΔ | sΓ€ubern | clean | make clean |
| zainstaluj | installieren | install | make install |
| Polski | Deutsch | English | Komenda |
|---|---|---|---|
| status | status | status | git status |
| zatwierdΕΊ | bestΓ€tigen | commit | git commit |
| wypchnij | hochladen | push | git push |
| pobierz | herunterladen | pull | git pull |
| gaΕΔ ΕΊ | zweig | branch | git branch |
| Polski | Deutsch | English | Komenda |
|---|---|---|---|
| kontenery | container | containers | docker ps |
| zbuduj obraz | image bauen | build image | docker build |
| uruchom serwisy | services starten | start services | compose up |
| Polski | Deutsch | English | Akcja |
|---|---|---|---|
| dalej | weiter | next | nastΔpna sugestia |
| powtΓ³rz | wiederholen | repeat | powtΓ³rz komendΔ |
| cofnij | zurΓΌck | back | cofnij |
| tak | ja | yes | potwierdΕΊ |
| nie | nein | no | anuluj |
from text2dsl import ArchiveManager
# UtwΓ³rz menedΕΌera archiwum
manager = ArchiveManager("/path/to/project")
# Eksportuj do ZIP
result = manager.export_zip("backup.zip")
print(f"Utworzono: {result.path}")
print(f"PlikΓ³w: {result.files_count}")
print(f"Rozmiar: {manager.format_size(result.size_bytes)}")
# Eksportuj do TAR.GZ
result = manager.export_tar("backup.tar.gz", compression="gz")
# Eksportuj wybrane pliki
result = manager.export_files(
files=["src/", "Makefile", "README.md"],
output_path="partial.zip"
)
# Lista plikΓ³w
files = manager.list_files()
for f in files:
print(f)from text2dsl import VoiceConfig, VoiceBackend, VoiceLayer
# PeΕna konfiguracja
config = VoiceConfig(
stt_backend=VoiceBackend.WHISPER, # STT: Whisper
tts_backend=VoiceBackend.EDGE_TTS, # TTS: Microsoft Edge
language="pl", # JΔzyk
auto_detect_language=True, # Automatyczne wykrywanie
speech_rate=150, # SzybkoΕΔ mowy
volume=1.0, # GΕoΕnoΕΔ
)
voice = VoiceLayer(config)
# MΓ³w po polsku
voice.speak("Witaj!")
# ZmieΕ na niemiecki
voice.set_language("de", gender="female")
voice.speak("Willkommen!")
# ZmieΕ na angielski
voice.set_language("en", gender="male")
voice.speak("Welcome!")
# Pobierz komunikat systemowy
msg = voice.get_message("listening") # β "SΕucham..." / "Ich hΓΆre..." / "Listening..."text2dsl/
βββ text2dsl/
β βββ __init__.py
β βββ __main__.py # CLI
β βββ orchestrator.py # GΕΓ³wny koordynator
β βββ core/
β β βββ dsl_parser.py # Parser wielojΔzyczny
β β βββ context_manager.py # ZarzΔ
dzanie kontekstem
β β βββ suggestion_engine.py # Silnik sugestii
β βββ layers/
β β βββ voice_layer.py # TTS/STT (PL/DE/EN)
β β βββ text2make.py
β β βββ text2shell.py
β β βββ text2git.py
β β βββ text2docker.py
β β βββ text2python.py
β βββ utils/
β βββ archive.py # Eksport/archiwizacja
βββ tests/
βββ examples/
βββ pyproject.toml
βββ Makefile
βββ README.md
# Uruchom testy
make test
# Z pokryciem
make test-cov
# Lint
make lint
# Formatowanie
make formatApache 2
Softreck - softreck.dev