Prepare from the actual source.
The assistant reads the linked email, quote, and task history before preparing a response. Dated context and source identifiers help it resolve which document or earlier decision the user means.
An internal system built by Outermost
An assistant and workspace that keep source material, drafts, decisions, and follow-up attached to the same task.
Internal system built by Outermost
Workflow design · Agent systems · Application development
The problem
A vendor quote can involve an email thread, an attached document, a question back to the vendor, and a decision days later. I built this internal system to keep that work together as the conversation and evidence change.
In the example below, the user asks the assistant to review a quote and prepare a reply. The task keeps its source correspondence, conversation, prepared work, and next step, so a later request can pick up from the same record.
The mobile workspace.
View full-size screenshot →
The work
The assistant reads the linked email, quote, and task history before preparing a response. Dated context and source identifiers help it resolve which document or earlier decision the user means.
The user reviews the exact recipient and message before an approved send. The system checks the approval and records the result against the task. Changing the draft requires a new review.
Background checks watch the assigned correspondence for change. New evidence can trigger an assessment of what the reply answers and what remains. Unchanged checks stay quiet, and an acknowledgment alone does not resolve the task.
When a reply arrives
The vendor has answered the scope question, but optional support still needs a decision. The earlier session update remains visible beside the newer email update, and the task stays open with a next move.

What it provides
The workspace and Telegram provide two ways to work with the same records. Tasks retain their next step, owner, evidence, and history across conversations. The user can return to the work with both the original context and subsequent updates in view.
System architecture
The workspace and Telegram connect to resumable Claude Agent SDK sessions. A TypeScript broker controls provider calls and retrieves Graphiti / Neo4j memory for interactive requests. SQLite retains conversation and work state. Separate ingestion and monitoring workers store selected memory and bring new evidence back to open tasks.
The web workspace exposes source material, task conversation, prepared work, and decisions. Telegram accesses the same underlying task records.
The runner resumes conversations and retrieves task context before choosing tools. Each turn uses a restricted execution environment.
The broker validates typed requests, checks the caller’s scope, and enforces action-specific approval rules. Provider credentials remain outside the agent sandbox.
Gmail provides correspondence and message actions. Google Calendar supplies availability and calendar operations. Google Drive supports file discovery and retrieval.
Runner storage retains conversations and dispatch state. Broker storage retains tasks, draft revisions, approvals, monitoring progress, and action results.
Selected facts and relationships retain dates and source attribution. The broker retrieves relevant memory for interactive turns; deeper search is available as a tool. A separate worker screens eligible completed turns from a durable outbox before storing selected material.
Durable event intake and task workers can bring new evidence into a later turn. Correspondence checks compare thread changes before scheduling an assessment; unchanged checks stay quiet.
SQLite retains operational task state, conversation history, draft revisions, approvals, and action results. Graphiti and Neo4j retain selected facts and relationships with dates and source attribution. The broker retrieves relevant memory for eligible interactive requests; a separate ingestion worker screens completed conversations before storing selected material.
Background reply workers use scoped task evidence rather than broad memory retrieval. Updates carry an expected revision, preventing an older worker from overwriting a newer decision. Assessments must match the messages read, and quoted attachments must have been retrieved.
If a send loses its receipt, recovery checks the saved message identifier and returned content against the prepared reply. An inconclusive result remains unresolved rather than triggering a blind resend.
Across the workspace
The morning brief brings calendar events, due work, email assessments, and suggested tasks into one view. It assembles existing records; suggestions become commitments only when accepted.

One execution boundary
The review covers the recipient, subject, and message revision. The broker checks that approval before sending; editing the draft requires a new review.
The mobile reply review.
View full-size screenshot →
What are you working through?
hello@outermost.us