Kāneʻohe → Provo

Evan Nalu
Foster

AI Solution Engineer | AI Foundry @ BYU

From Kāneʻohe, Oʻahu. Pre-Business at BYU Marriott in Provo. Forward Deployed AI Engineer at the AI Foundry @ BYU, a limited-enrollment consulting firm that ships production AI for paying clients, and AI Solution Engineer at Visp, a 30-year-old billing and operations platform for internet service providers. The failures on this page get more room than the wins.

Claude Code TypeScript Next.js Node.js Postgres

Systems-thinker.
I write down what breaks.

I build things for real businesses and a second brain for myself. Everything below is a live link or a failure.

See the builds

What I do


AI phone receptionists

Voice agents for small businesses, built on Vapi and Claude over an Express backend. The server computes the facts. The model never invents them.

Second brains

A two-layer archive and wiki that a language model maintains. I built mine first and use it every day, and now I build them for other people.

Study systems

A spaced-recall drill built out of my own lectures and textbooks, so the questions come from the course rather than from a stranger's deck.

Websites

Astro and Next.js when a site needs a framework, and hand-written HTML when it does not. This page is the second kind.

Forward-deployed work

I join a development team's daily scrum and sprint cadence and work on their live systems, instead of handing over a deck and leaving.

The flagship

One system, three ways

I built a second brain for myself, released the machinery of it so anyone can run their own, and then built the same thing for a company. The private one runs my life, so what is public about it is the operating record rather than the contents.

01 · Built for myself

My second brain

Two layers: every source kept whole, and a wiki compiled on top of it that a language model maintains and rewrites as new things land. It has been running daily since July 2026 and it is where everything else on this page gets written down.

It stays private, because it holds my life. The receipts are public: a nightly census of what it did, and a postmortem file of everything I have broken.

02 · Released

The second-brain starter kit

The machinery of that brain with my life taken out: a constitution file the model reads first, honesty gates that block a commit on a broken or one-way link, search-first retrieval, a commit script that lets several Claude sessions share one folder, a reminders ledger and a postmortem file.

You bring your own notes. Everything that keeps mine honest is in the folder.

Open source How to run it
03 · Built for a company

A company brain at Visp

Visp is a 30-year-old billing and operations platform for internet service providers. I am an AI Solution Engineer there as an independent contractor, on the development team's daily scrum and sprint cadence, working on live systems.

I built the company's second brain: a hosted MCP server with OAuth sign-in, three permission roles, an audit trail, and connectors for both Claude and ChatGPT, covered by 128 automated checks.

Since August 2026

Nalu Agency

AI receptionists and company brains for Oʻahu businesses. The honest version: one paying client so far, and it churned; I had built way more than what they were paying for.

  • The agency is still live, still taking calls.
  • First paying client was a salon, July 2026.
  • It churned in August 2026.
Open it

The IFN receptionist and site

An AI receptionist and website proof-of-concept for a small fiber ISP. Built with Hunter Calton for a partner.

  • It reads the subscriber's line before it speaks.
  • It tells an outage from a dead router, and both from home WiFi.
  • Verification is a PIN or a callback to the number on file.
  • Never the last four of a Social Security number.
Open it

A couples app

A dozen-plus two-player activities for couples who are apart, so a long-distance evening has something to do together besides a video call.

  • One-day sprint to a live deploy, 2026-08-16.
  • Runs on Fly.io with Supabase.
  • Two players, one room, no accounts to set up.
Open it

BYU Match

A values-based matching app for students. I built it and abandoned it in one April afternoon, then picked it back up in September 2026 as Y Match.

  • Built and abandoned in a single afternoon.
  • Revived under a small university grant.
  • Matches on stated values, not on photos.
Open it

Pointy

A desktop cursor-guide, built with a friend. I left the project in May 2026. It is still up, which is the only reason it is on this list.

  • Built with a friend, not alone.
  • I stepped away in May 2026.
  • Listed because it works, not because I finished it.
Open it

Everything above is a link you can open. What I have released to clone is further down this page, and the account is github.com/NaluKicks-808.

Private build, public receipts

The brain, by the numbers

A second brain I have been running since July 2026. Two layers: every source kept whole, and a wiki compiled on top of it that a language model maintains. Its dashboard sits behind a key, so what I can show you is the census and the failures.

282wiki pages
29postmortems
2,564tests in its tooling
July 2026running since

Snapshot 2026-09-10, measured by the vault's own scripts, not typed.

Last 30 days: 774 commits · Yesterday: 11 answers in the drill · 1 of 1 limb on schedule · 900M tokens through the brain.

Open source

Nine releases, and every one is a link you can open or a repository you can clone

These are the parts of my own setup, and one field trial I ran on it, that turned out to work for anything, so I took my life out of them and released them. Each page below says what it is, why I built it, how to start it if you have never used Claude Code, and the one thing it does not do.

The second-brain starter kit

The machinery of my second brain with my life taken out: the constitution file, the honesty gates, search-first retrieval, the shared commit script, a reminders ledger and a postmortem file.

How to run it second-brain-kit

Four Claude Code hooks

One injects "read the brain first" at the start of a session. One blocks a question to you until the brain has been read. One refuses a second to-do list. One makes an agent measure a job before it spends tokens on it.

How to run it claude-code-hooks

The ATS resume pipeline

A one-page HTML resume rendered to PDF with headless Chrome, plus a check that reads the PDF back the way an applicant-tracking parser does and refuses anything side by side.

How to run it ats-resume-pipeline

Grill me

A Claude Code skill that interviews you before it writes about you, asking only what your notes cannot already answer.

How to run it grillme-skill

What the hell happened

A Claude Code skill that turns a caught failure into a four-question postmortem, and does not let it end anywhere except a fix a machine enforces.

How to run it wtfhappened-skill

One resume format

A Claude Code skill that keeps every resume bullet and LinkedIn entry in one shape: verb first, no first person, one tense per line, a number with its period.

How to run it resume-format-skill

A field trial of Jev

A fast judgment model tested on real decisions inside my second brain, with the pass mark written before every run and the failures published beside the wins.

How to run it jev-field-trial

Vault search bench

A search test for any folder of linked notes that needs no labelling, because the links you already wrote are the answer key. Plain rankers built in, and a plug for your own.

How to run it vault-search-bench

The Jev field guide

A Claude Code skill of field notes on Jev: which question shape fits which job, how to set the pass mark first, and the traps my trial fell into.

How to run it jev-field-guide-skill
The teardown

Three things I broke, and what watches for them now

These are taken straight out of the postmortem file the brain keeps on itself. They are here because a list of things that worked is not evidence of anything.

01

Eighteen days of sales calls, recorded and filed and never transcribed

What happened
A nightly job fired on schedule for eighteen days, wrote nothing and reported nothing. Four call recordings sat untranscribed the whole time because the transcription service wanted a Content-Length header that a presigned link never sends.
Why
A job whose normal output is "nothing happened tonight" looks exactly like a dead one, and nothing was watching the difference.
The machine now
A check built this week reads every scheduled job's cadence and its log's last write, then names the limb that stopped instead of the symptom. It covers three of the four failures of this kind. This one was scheduled outside that system, so it stays paused and the gap is named rather than closed. A gap you can see beats a fix you cannot.
02

Fifteen thousand messages handed to one agent

What happened
A background agent was handed an entire message backlog, roughly 907,000 tokens, with one thread inside it worth three context windows on its own. It would have run out of room partway through and written a confident summary of whatever fraction it had read.
Why
Every coverage rule in the system governed reading. None of them governed handing work off, and handing work off feels like scheduling rather than reading. Evan caught it from one line of the launch message.
The machine now
Measure a corpus before it is handed off, split it to fit, and make every worker report coverage as a fraction, "read 1,847 of 1,847", instead of the word absorbed. Parallel workers get separate files to write to.
03

The session that wrote the rule about autostash and then ran it anyway

What happened
The commit script starts by stashing every uncommitted file and reapplying it after a rebase. A session ran it while three agents were mid-write, hours after writing down that doing so is how work gets lost. The reapply conflicted, left conflict markers in a tracked file, and the session kept dispatching work against a tree it believed was clean.
Why
The command's output was piped through tail, so the sentence saying the reapply had failed went straight to the floor. Thirteen minutes passed before anyone looked.
The machine now
A daily check reads the stash list and reports every entry it cannot prove was already superseded.

Prose rules lose to machines. Every rule that matters here has a hook, a gate, or a detector behind it.

Tech stack

Claude Code
TypeScript
Next.js
Node.js
Python
Supabase
Postgres
Vercel
Fly.io
Vapi
Astro
Obsidian
The road

How I got here

  • 2005Born in Honolulu.
  • PunahouDebate, second in the state. Two self-published books.
  • 2021 to 2023A crypto lending startup with friends. We raised $200k in under an hour and peaked near $10M in deposits. It collapsed.
  • 2022 to 2023BYU–Hawaii. Won a business-idea competition.
  • 2023 to 2025Two-year mission in Cambodia, ending as an assistant to the mission president.
  • 2026Back at BYU–Hawaii. A campus job, and mentoring new missionaries at the MTC.
  • Fall 2026BYU Marriott in Provo, Pre-Business. Forward Deployed AI Engineer at the AI Foundry @ BYU: I sourced client projects, run a client engagement end to end, and manage its team of two developers. AI Solution Engineer at Visp. Teaching assistant for a Marriott course on applying AI across business functions.

Let's connect

No form here on purpose. A static page cannot send one, and a message that vanishes is worse than no message. Email is the fastest way to reach me.

Based in Kāneʻohe, Oʻahu. In Provo for the school year.

Let's build something that actually works.

If you have a phone that rings more than you can answer, or an archive nobody can search, that is the shape of problem I take.

© 2026 Evan Foster · hand-written HTML, no framework.