Hacker News new | ask | show | jobs
by formreply 104 days ago
The pattern you're describing — tasks scattering across Slack, email, and the CLI — is really a signal flow problem. Email is still where a lot of meaningful work originates (a client sends a question, a contractor delivers an update), but nothing today bridges that into an agent-native task queue cleanly.

Your roadmap mentions GitHub issues and email inboxes as upcoming integrations. For email specifically, the friction point I'd flag is that most inbound email carries context that agents need: who sent it, what prior thread it belongs to, what action is expected. A raw forward loses that structure. Worth thinking about whether the inbox integration consumes a parsed webhook payload (structured sender, subject, body, thread ID) vs. raw MIME — the former is dramatically easier for agents to act on.

The compressed context snapshot (ai-context.md) is a clever workaround for the amnesia problem. The gap it can't close is task provenance — knowing why a task exists, not just what it is. Linking tasks back to their originating email/Slack message/PR would give agents (and you) much better auditability when something goes wrong.

1 comments

You're right that this is fundamentally a signal flow problem. The whole architecture is designed around that — tasks, inbox messages, decisions, and activity log are all just JSON files that any agent can read/write. The daemon polls for new signals and dispatches work automatically.

On email specifically: great callout about structured vs raw MIME. My current thinking is a parsed webhook approach — sender, subject, body, thread ID as structured fields. Raw MIME would be a nightmare for agents to parse and waste tokens on headers nobody cares about. The GitHub Issues integration is closer to shipping (it's one of our open issues now), email is further out but the inbox architecture already supports it — just needs an ingest layer.

Task provenance is an interesting gap you've identified. Right now tasks have createdAt, assignedTo, and the activity log tracks every state change, but there's no explicit "originated from" field linking back to an email or Slack message. That would be a clean addition to the schema — something like source: { type: "email" | "github" | "manual", ref: "..." }. Appreciate the specific feedback.