Adds 5 kind:"shell" jobs (anaf-monitor, security-audit-daily, kb-index-refresh, archive-tasks-daily, backup-config) and the new insights-extract claude job (disabled placeholder). All cron schedules are Europe/Bucharest local time. Decomposes openclaw's daily-morning-checks mega-prompt per the Issue 15 eng-review decision.
106 lines
8.1 KiB
JSON
106 lines
8.1 KiB
JSON
[
|
|
{
|
|
"name": "discord-test",
|
|
"cron": "0 18 2 4 *",
|
|
"channel": "echo-core",
|
|
"model": "haiku",
|
|
"prompt": "Răspunde doar cu textul: Test Discord cron job — funcționează!",
|
|
"allowed_tools": [],
|
|
"enabled": false,
|
|
"last_run": "2026-04-02T18:09:42.851876+00:00",
|
|
"last_status": "ok",
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "newsletter-test",
|
|
"cron": "0 0 1 1 *",
|
|
"channel": "echo-core",
|
|
"model": "sonnet",
|
|
"prompt": "Newsletter-ul Cercetașilor #13/2026 este disponibil la: https://cercetaiis-newsletter.beehiiv.com/p/newsletter-13-din-2026\n\nUrmează instrucțiunile de mai jos pentru a genera rezumatul:\n\n# Prompt: Rezumat Newsletter Cercetași pentru WhatsApp\n\n## CONTEXT\nEști un asistent care procesează newsletter-ul săptămânal al Organizației Naționale Cercetașii României și creează un rezumat structurat pentru distribuire pe WhatsApp. Scopul este să facilitezi accesul rapid la informații importante: deadline-uri, formulare, evenimente, proiecte.\n\n## TASK\n1. Accesează ultimul newsletter de la URL-ul: `https://cercetaiis-newsletter.beehiiv.com/p/newsletter-{număr}-din-2026`\n2. Extrage conținut complet\n3. Generează rezumat structurat conform template-ului de mai jos\n\n## TEMPLATE OUTPUT (OBLIGATORIU - FĂRĂ EMOJI)\n\n```\nNEWSLETTER CERCETAȘI #{număr}/2026\n\nDEADLINE-URI IMPORTANTE:\n- [dată]: [eveniment/activitate scurtă]\n- [dată]: [eveniment/activitate scurtă]\n[sortează cronologic, cel mai apropiat deadline primul]\n\nFORMULARE & PARTICIPARE:\n- [titlu formular/activitate]\n- [titlu formular/activitate]\n[doar itemuri cu call-to-action clar]\n\nPROIECTE ACTIVE:\n- [nume proiect]: [descriere 1 linie max]\n- [nume proiect]: [descriere 1 linie max]\n[doar proiecte în desfășurare sau cu impact imediat]\n\nLink complet:\n[URL newsletter original]\n\n---\nInformatii Consiliul Director saptamanale:\n[daca exista link specific, altfel omite sectiunea]\n```\n\n## REGULI DE PROCESARE\n\n### 1. PRIORITIZARE INFORMAȚIE\n- **DEADLINE-URI:** Extrage TOATE datele limită (DDL) + evenimente cu dată concretă\n- **FORMULARE:** Orice link către Google Forms, Beehiiv forms, etc. + descriere scurtă\n- **PROIECTE:** Doar proiecte în derulare sau cu impact direct asupra cititorului\n\n### 2. FILTRARE\n**INCLUDE:**\n- Oportunități de participare (training-uri, evenimente, voluntariat)\n- Formulare de înscriere/aplicare\n- Deadline-uri concrete\n- Proiecte cu call-to-action clar\n\n**EXCLUDE:**\n- Reflecții generale/filosofice\n- Povești fără acțiune concretă\n- Quote-uri motivaționale\n- Imagini/fotografii (doar text)\n\n### 3. FORMATARE TEXT\n- **FĂRĂ emoji** - text plain simplu\n- Maxim 1-2 linii per item\n- Păstrează link-uri originale (Google Forms, site-uri externe)\n- Deadline-uri: format \"DD luna\" (ex: \"10 aprilie\", \"15 mai\")\n\n### 4. IDENTIFICARE NUMĂR NEWSLETTER\n- URL format: `newsletter-{N}-din-2026`\n- Extrage numărul N din URL pentru titlu\n- Dacă nu știi numărul, CERE utilizatorului să specifice sau verifică ultimul newsletter disponibil\n\n## EXEMPLE\n\n### INPUT (Newsletter #13):\n```\n## Scouts go solar ambassador training [DDL: 10 aprilie 2026]\nProiectul va avea loc pe o perioadă de 9-12 luni...\n\n## Anunț recrutare voluntari români Healthy Mind Camp\n...completează formularul până pe 15 mai 2026!\n\n## Fii voluntar la Adunarea Generală!\n...completează formularul de aplicare până la data de 11 aprilie...\n```\n\n### OUTPUT:\n```\nNEWSLETTER CERCETAȘI #13/2026\n\nDEADLINE-URI IMPORTANTE:\n- 10 aprilie: Scouts go solar ambassador training\n- 11 aprilie: Voluntari Adunare Generală\n- 15 mai: Healthy Mind Camp - recrutare voluntari\n\nFORMULARE & PARTICIPARE:\n- Scouts go solar: https://share.google/Xi9MRT0NHFEiU3N3F\n- Voluntari AG: https://forms.gle/PuctjapaNcGeRzHx6\n- Healthy Mind Camp: https://docs.google.com/.../viewform\n\nPROIECTE ACTIVE:\n- Scouts Go Solar: formare 9-12 luni, etapă fizică KISC 2027\n- Healthy Mind Camp: 9-29 iulie Nocrich, sănătate mentală tineri\n\nLink complet:\nhttps://cercetaiis-newsletter.beehiiv.com/p/newsletter-13-din-2026\n```\n\n## FLUX DE LUCRU\n\n1. **Verifică ultimul newsletter:**\n - Începe cu numărul cel mai recent cunoscut (ex: #13)\n - Dacă 404, decrementează până găsești ultimul disponibil\n\n2. **Extrage conținut:**\n - Fetch HTML de la URL\n - Parse secțiuni (titluri, paragrafe, link-uri)\n\n3. **Identifică elemente cheie:**\n - Scan pentru \"DDL:\", \"deadline\", \"până la\", \"până pe\"\n - Scan pentru \"formular\", \"forms.gle\", \"docs.google.com/forms\"\n - Identifică proiecte cu descrieri acționabile\n\n4. **Sortează deadline-uri cronologic:**\n - Parsează datele (format \"DD lună YYYY\")\n - Sortează crescător (cel mai apropiat primul)\n\n5. **Generează output conform template**\n\n6. **Validare finală:**\n - Verifică că TOATE deadline-urile au fost capturate\n - Verifică că link-urile sunt complete și funcționale\n - Verifică lungimea textului (maxim 1-2 linii per item)\n\n## GESTIONARE ERORI\n\n- **Newsletter lipsă (404):** Raportează \"Newsletter #{N} nu este disponibil. Ultimul găsit: #{N-1}\"\n- **Lipsă deadline-uri:** Menționează \"Nu sunt deadline-uri urgente în acest număr\"\n- **Link-uri broken:** Păstrează textul dar menționează \"(link indisponibil)\"\n\n## NOTE FINALE\n\n- **Ton:** Informativ, direct, fără filler\n- **Claritate:** Eva (organizatoarea) vrea ca oamenii să știe rapid ce trebuie să facă și până când\n- **Acțiune:** Fiecare item trebuie să răspundă la \"Ce trebuie să fac?\" sau \"Când e deadline-ul?\"\n- **WhatsApp compatibility:** Plain text, line breaks clare, fără formatări fancy\n\n## COMENZI RAPIDE\n\n**Pentru a rula:**\n1. \"Extrage și rezumă newsletter #13 cercetași\"\n2. \"Caută ultimul newsletter cercetași și fă rezumat\"\n\n**Pentru update:**\n1. \"Verifică dacă a apărut newsletter nou cercetași (>13)\"\n",
|
|
"allowed_tools": [
|
|
"WebFetch"
|
|
],
|
|
"enabled": true,
|
|
"last_run": "2026-04-02T18:18:07.775703+00:00",
|
|
"last_status": "ok",
|
|
"next_run": "2027-01-01T00:00:00+00:00"
|
|
},
|
|
{
|
|
"name": "anaf-monitor",
|
|
"kind": "shell",
|
|
"cron": "0 10,16 * * 1-5",
|
|
"channel": "echo-work",
|
|
"command": ["python3", "tools/anaf-monitor/monitor_v2.py"],
|
|
"report_on": "changes",
|
|
"timeout": 120,
|
|
"enabled": true,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "security-audit-daily",
|
|
"kind": "shell",
|
|
"cron": "0 3 * * *",
|
|
"channel": "echo-work",
|
|
"command": ["python3", "tools/security_audit.py"],
|
|
"report_on": "changes",
|
|
"timeout": 180,
|
|
"enabled": true,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "kb-index-refresh",
|
|
"kind": "shell",
|
|
"cron": "30 3 * * *",
|
|
"channel": "echo-work",
|
|
"command": ["python3", "tools/update_notes_index.py"],
|
|
"report_on": "never",
|
|
"timeout": 120,
|
|
"enabled": true,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "archive-tasks-daily",
|
|
"kind": "shell",
|
|
"cron": "0 3 * * *",
|
|
"channel": "echo-work",
|
|
"command": ["python3", "dashboard/archive_tasks.py"],
|
|
"report_on": "changes",
|
|
"timeout": 60,
|
|
"enabled": true,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "backup-config",
|
|
"kind": "shell",
|
|
"cron": "0 2 * * *",
|
|
"channel": "echo-work",
|
|
"command": ["bash", "tools/backup_config.sh"],
|
|
"report_on": "never",
|
|
"timeout": 120,
|
|
"enabled": true,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
},
|
|
{
|
|
"name": "insights-extract",
|
|
"cron": "0 4 * * *",
|
|
"channel": "echo-work",
|
|
"model": "sonnet",
|
|
"prompt": "PLACEHOLDER — Marius will write the full prompt. Intent: extract daily insights from chat history (Discord, Telegram, WhatsApp) and save to memory/kb/insights/YYYY-MM-DD.md. Runs after content-discovery (03:00) so insights can incorporate discovered content proposals.",
|
|
"allowed_tools": [],
|
|
"enabled": false,
|
|
"last_run": null,
|
|
"last_status": null,
|
|
"next_run": null
|
|
}
|
|
]
|