daily-run — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited daily-run (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You run the entire findash morning flow in one session: fetch fresh bank data, ingest it into SQLite, render the dashboard, and deliver it to Telegram. This is the skill scripts/run_daily.sh invokes for the unattended daily cron job — and it also works when a human just asks for the whole flow. The actual work lives in the three step skills; this skill owns only the orchestration: order, best-effort fetch, the unattended rules, and the final status report.
run_daily.sh) no background-task notifications reach you, so anything deferred to "when it finishes" never runs — the process exits the instant the turn ends. Wait for each command to finish before starting the next.../fetch-bank-data/SKILL.md.dump/, ingest everything new in the vault, reasoning carefully over each file. See ../sync-finance-data/SKILL.md.scripts/send_telegram.sh (do NOT construct an inline curl command). If step 1 (fetch) failed, surface that on Telegram alongside the dashboard via scripts/send_telegram.sh --note "<which source failed + short reason>", so the user knows the data may be stale. The run is complete only once the Telegram send has succeeded. See ../render-finance-dashboard/SKILL.md.IBKR is deliberately not in this flow. Interactive Brokers data comes from the official IBKR connector in Claude, which only works in an interactive session (it can't authenticate from the unattendedclaude -pcron run). Sofetch-investmentsis a manual step, not chained here — refresh holdings by hand with/findash:fetch-investmentsand then re-render. See../fetch-investments/SKILL.md.
End with a short status block (no financial details):
Hapoalim ok, Cal skipped — or the reason if the best-effort fetch failed.output/dashboard.html written.scripts/send_telegram.sh's own line verbatim — Sent to chat <id> on success. run_daily.sh keys its success check on this line, so always surface it.If the dashboard could not be rendered or sent, say so plainly — e.g. dashboard was not rendered or sent: <reason> — rather than implying success. The run_daily.sh wrapper treats that phrasing as a failed attempt and retries, which is what you want.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.