What I've built to keep agents alive on long-horizon tasks, and why it's still not enough. Looking for concrete suggestions

What I've built to keep agents alive on long-horizon tasks, and why it's still not enough. Looking for concrete suggestions

I run a fleet of LLM agents on long jobs that last hours to days. The sample project: a pipeline that transcribes and summarizes a few hundred videos from several channels into a searchable knowledge base. It runs in batches, hits rate limits, gets interrupted, and has to resume without redoing or double-sending anything.

Agents kept dying quietly. Nothing crashed loudly, they just stopped, and I found out hours later. Here is what I built so far.

  1. Heartbeats on one shared board. One row per job: last check, next expected check, deadline, current step, checkpoint link. Everyone writes the same six fields, so a single sheet shows the whole fleet.
  2. Deadlines at 2-3x the check interval. A missed beat is a flag, not an instant verdict.
  3. Bounded retries. Every retry loop has a cap and a total deadline. Standing watches leave the total deadline blank so they never "expire"; only finite jobs get one.
  4. A parent audit every 30 minutes. A separate agent reads the board and flags overdue rows. If more than half the jobs are flagged at once, it sends one grouped alert, because that is usually an outage or quota problem, not 10 dead agents.
  5. "Unknown" is never "dead". If the status check itself is throttled or the service is down, the result is unknown and nobody gets relaunched.
  6. Intent/done records for side effects. Before and after anything irreversible (send, commit, publish) the agent writes an operation key, so a relaunched agent can tell whether it already happened.
  7. Epoch fencing for relaunches. A relaunched agent gets a higher epoch and the old one stops itself if it wakes up and sees a newer epoch.
  8. Drive-first checkpoints and milestone commits. Progress goes to durable storage after each batch, with a pointer in the board row.
  9. A watchdog wake that checks the audit itself is still running.

Why it's still not enough:

  • Credential delivery. Agents can't safely get a git token. Our vault can only fill browser inputs and never hands a value to a shell, so commits go through a slow browser route, small text files only.
  • Workspace resets wipe local state. Anything not checkpointed externally is gone, and the board only helps if the agent got to write to it.
  • No external dead-man switch. If the audit agent and the board go down together, nothing notices. Everything lives in the same ecosystem.
  • Step and context limits. Agents hit them mid-task and stop without a clean handoff.
  • Sheets quota throttling. With a dozen agents beating hourly plus audits, read quota runs out, and I've had to treat throttling as "unknown" everywhere.

What I'd like suggestions on:

  • A cheap external dead-man switch that doesn't depend on the same platform (cron ping service? something else?).
  • A better place than a spreadsheet for heartbeats at this scale.
  • How you hand secrets to agents so they can commit without exposing the value in chat or logs.
  • Patterns for clean handoff when an agent is about to hit its step limit.
  • Anything you'd cut. I suspect some of this is over-built.

Happy to share more detail on any piece.

reddit.com
u/milkygirl21 — 6 days ago

reminder using hour & minutes doesn't work?

it works if I type "work in 1 hour", but it doesn't if I use "work in 1 hour 41 min". Short of typing the exact time, is there a way to make this work?

reddit.com
u/milkygirl21 — 1 month ago

Google passkey in Bitwarden keeps falling back to Windows Security (QR) on Firefox; Android says “No available passkey for google.com”

Hi all,

I’m hitting a persistent passkey loop with Google + Bitwarden on a Windows + Firefox + Android setup. I’ve tried the usual fixes from the sub and docs, but it still fails. Hoping someone’s seen this exact pattern or knows what else to check. Environment

Desktop OS: Windows 11

Browser: Firefox (latest) with Bitwarden extension installed & unlocked

Mobile: Android Vivo X200U(Bitwarden app installed, vault unlocked)

Service: Google account (accounts.google.com)

What’s happening

On Firefox (Windows), when I try to log in to Google using a passkey:

    Instead of the Bitwarden extension prompting for the passkey, Windows Security pops up with a “Sign in with a passkey” dialog.

    Since there’s no local Windows passkey for Google, it offers “Use a passkey on another device” and shows a QR code.

I scan the QR with my Android phone:

    Android’s system passkey picker opens.

    It immediately shows: “No available passkey for google.com”.

    The passkey does exist in my Bitwarden vault (URI set to https://accounts.google.com).

If I recreate the Google passkey in Bitwarden, it works for a while, then the same loop comes back after some time.

Verified settings & tests

On Android:

Bitwarden is set as the default Autofill service.

Bitwarden is selected as the preferred Passkey Credential Manager (or I’ve toggled it off/on and back to Bitwarden).

Bitwarden app:

    Autofill & passkey support enabled.

    Vault unlocked.

Bluetooth is enabled on both PC and phone.

On Firefox (Windows):

Bitwarden extension:

    “Ask to save and use passkeys” is enabled.

    google.com / accounts.google.com are not in the “Excluded domains” list.

    Extension is unlocked, synced, and has “Access data for all websites” permission.

Vault entry for Google has URI: https://accounts.google.com.

Functional test: passkeys.io and other sites correctly prompt and authenticate via the Bitwarden extension in Firefox, so WebAuthn interception works in general.

Other notes:

Google Password Manager app on Android is enabled and updated (not disabled).

I’ve tried:

    Deleting all Google passkeys from the vault and recreating them fresh.

    Toggling Android’s passkey provider (None/Google → Bitwarden).

    Reinstalling Bitwarden on Android.

    Ensuring Bitwarden extension is up to date on Firefox.

Despite this, the behavior recurs: Firefox delegates to Windows Security → QR → Android says “No available passkey for google.com”.

Questions

Has anyone seen this specific loop with Google + Firefox + Bitwarden on Windows, where the extension stops intercepting and Windows Security takes over with a QR?

When scanning that QR, why would Android’s system passkey UI report “No available passkey for google.com” even though the credential exists in Bitwarden and works on other sites?

Is there any known permanent fix or workaround (e.g., specific Android version requirements, OEM quirks, or a config that forces Bitwarden to handle Google passkeys reliably on Firefox)?

I’d rather not abandon passkeys for Google or switch browsers permanently, but this loop is making them unusable in practice. Any guidance or pointers to relevant issues/threads would be hugely appreciated.

Thanks!

reddit.com
u/milkygirl21 — 1 month ago
▲ 3 r/LocalLLM+1 crossposts

Neatest solution for persistent memory / RAG via Claude Code?

I have plenty of knowledge bases that I want CC to refer to at times for decision making. Separately, I'm also using it as a second-brain intelligence layer for organizing/prioritizing my todos and stuff.

My stack currently includes Todoist, Obsidian, Notion, NotebookLM and local txt files.

What's the best way to consolidate everything into 1 pool for easy INPUT & OUTPUT?

I see so many different options (E.g. Claude-mem, or using notebooklm/notion MCP, or Karpathy) but it's not very clear what the pros & cons are, even with the LLMs explaining them to me.

Can anyone shed the light on this and advise? Thanks!

reddit.com
u/milkygirl21 — 3 months ago
▲ 2 r/TpLink

any point upgrading from Deco M9?

been using them for past 5 years and it's working fine. any new tech currently that improves the WiFi experience by leaps & bounds that justify an upgrade? if so what are they and what's the recommended model to upgrade to?

Thanks!

reddit.com
u/milkygirl21 — 4 months ago

Self-hosted STT better than Whisper Large V3 Turbo that matches AssemblyAI quality?

I’m already using Whisper Large V3 Turbo self-hosted, but the accuracy still isn’t where I need it. I like AssemblyAI’s quality and want something self-hosted that:

- Is clearly better than Whisper Large V3 Turbo

- Can match or get close to AssemblyAI’s transcription quality

- Runs locally (no cloud API)

Is there a self-hosted model or stack that realistically beats Whisper Large V3 and gets close to AssemblyAI? Or is AssemblyAI’s own self-hosted offering the only real option at that quality level?

reddit.com
u/milkygirl21 — 5 months ago