Skip to content

Case study · flagship agent

Henry

The personal work agent I built because useful work should not restart with every chat. Henry remembers the decisions behind a task, finds the right knowledge and runs repeatable workflows from my terminal or phone.

Personal work agent open source daily driver read the code ↗

Daily

Job search, documents, standups and scheduled work

900+

Knowledge modules with tested retrieval changes

Local-first

Personal memory and reusable knowledge stay separate

Approval

External actions wait for my explicit decision

why I built Henry.

I was using AI every day, but too much of the work still depended on me rebuilding the context.

01 · continuity

A new chat should not mean a fresh start.

Job applications, documents and project decisions spill across days. I wanted an agent that could remember what happened, retrieve the useful parts and continue from there.

02 · execution

An answer is useful. A finished workflow is better.

The repeated work was predictable: find roles, compare them with my resume, prepare documents, collect standups and run reminders. Henry turns those jobs into workflows I can reuse.

The product idea: give one personal agent memory, tools and clear limits. It should carry context forward, do the repeatable work and stop for approval before anything leaves my machine.

how it works.

Every request follows the same path: understand the job, load only the context it needs, choose a focused workflow and return something I can use.

TERMINAL TELEGRAM SINGLE UPDATE PUMP ROUTING BRAIN TWO-STORE MEMORY ENGRAM EVAL GATE KNOWLEDGE RAG 900+ MODULES RECALL IN WRITES OUT JOB SCOUT RESUME + COVER STANDUP SCHEDULER TWEET PIPELINE DASHBOARD 1/DAY · KILL SWITCH · MIRRORED

The request path. Terminal and Telegram feed one router. Personal memory and the knowledge library add context before a focused workflow runs.

01

remember context

Personal history and reusable knowledge stay in separate stores.

02

route the request

One router selects a capability and the right model tier.

03

run focused work

Job search, documents, standups and reminders use their own workflows.

04

ask before acting

External actions stay drafted until I approve the exact item.

how I keep it useful.

A personal agent touches real work, so reliability is part of the product.

  • Approval before external actionEmail, applications and other outbound work stay drafted until I approve the exact item.
  • Memory with a reasonRecall combines semantic and keyword matches, then shows why a memory was selected.
  • Tested knowledge retrievalRanking changes ship only when the evaluation scores improve.
  • One phone update loopA single Telegram loop handles incoming messages and prevents duplicate replies.
  • Outputs with a job to doResume and cover-letter tools return the finished format instead of a wall of commentary.

Bose turns this engineering pattern into a school product. Henry remains the personal agent I use for my own work.

what's live.

The system runs locally on my 8 GB M1 Air. These are the parts I use as real workflows:

memory

memory that carries work forward

Keeps personal history separate from reusable knowledge, then retrieves only what the current task needs.

knowledge

tested knowledge search

Searches 900+ modules and only ships ranking changes when retrieval evaluations improve.

routing

one request, one clear route

Chooses the right workflow and model tier instead of sending every task through the same prompt.

automation

job scout

Finds roles on Naukri, the open web and X, scores them against my resume and returns a shortlist.

documents

resume and cover tailoring

Tailors resumes and cover letters while keeping the required document format.

telegram

two-way DM bridge

Lets me use Henry from my phone without duplicate replies.

operations

standup and scheduler

Collects standups, sends summaries, runs reminders and shows scheduled work on a dashboard.

publishing

tweet pipeline

Publishes one tech post a day, with a kill switch and a copy sent back to me.