Update memory, root, tools (~4)
This commit is contained in:
@@ -4,6 +4,8 @@ Alege o tehnică de pauză random din memory/tehnici-pauza.md
|
||||
În funcție de ora curentă (București = UTC+2):
|
||||
- 09:00-17:00 → BIROU
|
||||
- 18:00+ → ACASĂ
|
||||
|
||||
Output include: tehnica + rezultat + sursă (pentru context)
|
||||
"""
|
||||
|
||||
import random
|
||||
@@ -27,7 +29,9 @@ def parse_tehnici(filepath):
|
||||
tehnici = {'BIROU': [], 'ACASA': []}
|
||||
current_section = None
|
||||
current_tehnica = None
|
||||
current_details = []
|
||||
current_detalii = []
|
||||
current_rezultat = None
|
||||
current_sursa = None
|
||||
|
||||
for line in content.split('\n'):
|
||||
# Detectează secțiunea
|
||||
@@ -38,11 +42,13 @@ def parse_tehnici(filepath):
|
||||
current_section = 'ACASA'
|
||||
continue
|
||||
elif line.startswith('## ') or line.startswith('---'):
|
||||
# Altă secțiune (Surse, etc.) - oprește parsarea
|
||||
# Altă secțiune (Surse, etc.) - salvează și oprește
|
||||
if current_section and current_tehnica:
|
||||
tehnici[current_section].append({
|
||||
'titlu': current_tehnica,
|
||||
'detalii': '\n'.join(current_details).strip()
|
||||
'detalii': current_detalii,
|
||||
'rezultat': current_rezultat,
|
||||
'sursa': current_sursa
|
||||
})
|
||||
current_section = None
|
||||
continue
|
||||
@@ -56,38 +62,68 @@ def parse_tehnici(filepath):
|
||||
if current_tehnica:
|
||||
tehnici[current_section].append({
|
||||
'titlu': current_tehnica,
|
||||
'detalii': '\n'.join(current_details).strip()
|
||||
'detalii': current_detalii,
|
||||
'rezultat': current_rezultat,
|
||||
'sursa': current_sursa
|
||||
})
|
||||
current_tehnica = line[4:].strip()
|
||||
current_details = []
|
||||
current_detalii = []
|
||||
current_rezultat = None
|
||||
current_sursa = None
|
||||
elif line.startswith('- **Rezultat:**'):
|
||||
current_rezultat = line.replace('- **Rezultat:**', '').strip()
|
||||
elif line.startswith('- **Sursă:**'):
|
||||
current_sursa = line.replace('- **Sursă:**', '').strip()
|
||||
elif line.startswith('- ') and current_tehnica:
|
||||
# Detaliu (bullet point)
|
||||
current_details.append(line[2:].strip())
|
||||
# Detaliu (bullet point, exclude doar Rezultat și Sursă)
|
||||
detaliu = line[2:].strip()
|
||||
# Curăță bold markers
|
||||
detaliu = re.sub(r'\*\*([^*]+)\*\*:', r'\1:', detaliu)
|
||||
if detaliu:
|
||||
current_detalii.append(detaliu)
|
||||
|
||||
# Salvează ultima tehnică
|
||||
if current_section and current_tehnica:
|
||||
tehnici[current_section].append({
|
||||
'titlu': current_tehnica,
|
||||
'detalii': '\n'.join(current_details).strip()
|
||||
'detalii': current_detalii,
|
||||
'rezultat': current_rezultat,
|
||||
'sursa': current_sursa
|
||||
})
|
||||
|
||||
return tehnici
|
||||
|
||||
def formateaza_mesaj(tehnica):
|
||||
"""Formatează tehnica pentru mesaj Discord."""
|
||||
"""Formatează tehnica pentru mesaj Discord cu context."""
|
||||
titlu = tehnica['titlu']
|
||||
detalii = tehnica['detalii']
|
||||
rezultat = tehnica.get('rezultat')
|
||||
sursa = tehnica.get('sursa')
|
||||
|
||||
# Alege un detaliu random dacă sunt mai multe
|
||||
detalii_list = [d for d in detalii.split('\n') if d.strip()]
|
||||
if detalii_list:
|
||||
detaliu = random.choice(detalii_list)
|
||||
# Curăță formatarea markdown
|
||||
detaliu = re.sub(r'\*\*([^*]+)\*\*', r'\1', detaliu)
|
||||
if detalii:
|
||||
detaliu = random.choice(detalii)
|
||||
else:
|
||||
detaliu = ""
|
||||
|
||||
return f"**{titlu}.** {detaliu}"
|
||||
# Construiește mesajul
|
||||
lines = [f"**{titlu}**"]
|
||||
if detaliu:
|
||||
lines.append(detaliu)
|
||||
if rezultat:
|
||||
lines.append(f"📊 _{rezultat}_")
|
||||
if sursa:
|
||||
# Extrage link-uri din markdown [text](url) și afișează separat
|
||||
link_pattern = re.compile(r'\[([^\]]+)\]\(([^)]+)\)')
|
||||
links = link_pattern.findall(sursa)
|
||||
# Curăță sursa de markdown links pentru text simplu
|
||||
sursa_clean = link_pattern.sub(r'\1', sursa)
|
||||
lines.append(f"📚 {sursa_clean}")
|
||||
# Adaugă link-urile pe linii separate
|
||||
for text, url in links:
|
||||
lines.append(f"🔗 <{url}>")
|
||||
|
||||
return '\n'.join(lines)
|
||||
|
||||
def main():
|
||||
filepath = Path(__file__).parent.parent / 'memory/kb/tehnici-pauza.md'
|
||||
|
||||
Reference in New Issue
Block a user