portfolio mason
Mason live

Jag såg bara slottet. Muraren kan varje sten.

Mason är en Mac-app som sitter i bakgrunden och visar hur jag jobbar mellan mina AI-appar. Jag vibe-kodar, och jag blev ständigt klar med saker jag inte kunde förklara. Innan jag hoppar till nästa projekt får den mig att se tillbaka på vad jag faktiskt har byggt.

roll
Gustaf Garnow. Produkt, UX och visuell design, och styrningen av bygget, solo.
min del
Varje beslut om vad som ska vara kvar och vad som ska bort. AI-kodagenter skrev koden.
vad
En nativ menyrads-app för macOS, dess landningssida och dokumentation, och ett designsystem.
bevis
Jag använder den varje dag · öppen källkod, v0.4.0 · en användare hittills: jag
när
2026 · live på mason.tools
byggd med
Claude Code
Codex
Grok
Swift
Node
ElevenLabs

Vad den visar mig, med mina egna siffror.0:36

frågan

Någon frågade hur jag byggde det. Jag sa tre trendiga ord.

vad händestäng

Jag fick frågan om ett projekt jag byggt själv, Kammaren. Jag satt där och sa ungefär tre trendiga ord: deterministiskt, script och Vercel? En murare vet exakt hur varje sten har lagts. Det vet inte jag. Jag ser bara det färdiga slottet, eller katedralen som ingen går in i.

Frågan: Hur byggde du det? Och mitt svar, i stor stil: Deterministiskt. Script. Vercel?
Hela mitt svar. Jag hade byggt det, och kunde inte säga hur.
så jag byggde en spegel

Så jag byggde en Mac-app som tittar på hur jag jobbar. Det sved.

vad som svedstäng

Det började som ett hackathon-bidrag: något som sitter i bakgrunden medan jag hoppar mellan Claude, Cursor, Codex, Grok och en hög botar, och håller upp en spegel. Den heter Mason. Det som sved var att jag hoppade mellan program och uppgifter i princip hela tiden. Hyperaktiv. Och sen timmarna: hur många jag hade lagt.

Mason på min egen Mac: en liten remsa i menyraden, och under den en panel med 81 procent arbete, 18 socialt, 1 annat, och raden: Färdiga svar väntade 33 minuter på dig, mest medan du var i Discord.
Mason på min egen Mac. En remsa i menyraden, och min dag under den.
första natten

Den ställde en fråga. Jag skrev: I donw know.

varförstäng

Första versionen gjorde som briefen sa: den stoppade mig mitt i arbetet och bad mig sätta en regel. Jag hade just installerat den. Jag visste inte vilken gräns jag skulle sätta, och jag ville inte. Jag ville ha något smart, inte ännu ett inputfält med manuellt jobb i.

Första nattens version: ett lila kort frågar vad som ska få appen att stanna och fråga. I svarsfältet har jag skrivit: I donw know.
Byggd efter en hackathon-brief. Den stora siffran under kortet är det som överlevde.
ön

Det fanns yta i menyraden. Så där bor den.

hurstäng

Första overlayen hängde över mina egna fönster, och appen var i vägen. Jag tog en skärmbild, ritade en grön ruta runt den tomma sträckan mellan menyerna och notchen och skrev en rad. Nu bor ön inne i menyraden, växer åt vänster från notchen och täcker ingenting.

Min menyrad med en grön ruta ritad runt den tomma sträckan mellan appens menyer och notchen.
Min menyrad. Jag ritade den gröna rutan.
efter deadline

Den kom inte till final. Jag byggde vidare.

varförstäng

Produkten var väldigt användbar för mig personligen. Jag har troligen ADHD, och det var glasklart att jag behöver något som visar mitt flöde.

knappen

Jag byggde en knapp som skriver om min AI:s regler. Sen tog jag bort den.

vad händestäng

Mason märker vad jag säger till mina agenter om och om igen och föreslår det som en regel. Första versionen hade en knapp som skrev in regeln i deras instruktionsfiler åt mig. Jag sa: ingen knapp som gör det åt dig. Nu visar den orden som regeln bygger på och öppnar en prompt som är klar men inte skickad. Agenten föreslår, jag trycker på skicka. Jag skar bort annat på samma sätt: Teach, som jag inte kunde förklara, och ett dagligt mål som levde en timme.

Masons förslagskort, på påhittad data: Du säger det här om och om igen, 8 gånger i 4 projekt. Visa mig diffen före en stor ändring. Mina egna ord under, och knappar för att ge den till Claude Code, Codex eller Cursor.
”Ingen knapp som gör det åt dig.” Agenten föreslår. Jag trycker på skicka.
loggen

161 prompter. En av tre sa: inte så där.

hurstäng

Jag läste det här caset ur loggarna från bygget. Varje sten är en prompt jag skrev till mina agenter. Rött är en prompt där jag underkände det de hade gjort. De två tornen är hackathon-deadlinen och lanseringen. Agenterna skrev koden. Min del var att säga vad som var fel.

  1. deadline

  2. dag tre

  3. lansering

  • bad om
  • frågade om
  • sa: inte så där
  • ”för mycket text”

för mycket text

“Det är för mycket text. Visa bara det enklaste. Varje screen har bara 1–3 sekunder.”

En sten är en prompt jag skrev. Bläddra med pilarna.

vad jag sa om och om igen

Jag sa ”för mycket text” åtta gånger på åtta dagar.

varförstäng

Ingen skrev ner produktens regler först. De är det jag upprepade tills det satt: en skärm får en till tre sekunder. Mason gör samma sak åt den som använder den. Den märker vad du säger till dina agenter om och om igen och föreslår det som en regel.

Den nionde gången gällde första utkastet av den här sidan.

muren

Jag blev kär i min egen metafor. Ingen förstod muren.

vad händestäng

Landningssidan var ett slott som byggdes sten för sten medan man scrollade. Jag var stolt över den. I telefonen skrev jag: jag fattar ingenting av vad som händer ens. Och sen: vi är lite väl förtjusta i den här murmetaforen. Tänk om man inte fattar det här med muren. Nu börjar sidan med läsarens problem, och namnet står i ingen rubrik.

Två telefonskärmar. Vänster: landningssidan på lanseringsdagen, en borg av mörka stenar och räknestreck. Höger: sidan som är live: You jump between AI apps all day. See where it goes.
Lanseringsdagen, i min telefon. Slottet försvann. En kort mur blev kvar.
påståendet

Sidan sa att inget lämnar din Mac. Det stämde inte.

vad händestäng

Jag vibe-kodade landningssidan. En agent skrev ”Local-first: nothing leaves your Mac”, det lät perfekt, och jag släppte igenom det. Den låg live i timmar innan jag kollade vad appen faktiskt gör: sammanfattningar går som standard till din egen AI, så något lämnar datorn. Inget i sättet jag jobbar på hade fångat det. Nu står det på sidan att fyra saker kan lämna den, var och en med sin egen brytare, och det dokumentationen påstår testas mot koden.

Vänster: landningssidan på lanseringsdagen med en rad markerad i rött: Local-first: nothing leaves your Mac. Höger: sidan som är live nu: Four things can leave your Mac. Each has its own switch.
Sidan jag vibe-kodade, och rättelsen. Ett integritetspåstående måste vara sant.
vad den inte har gjort

Den visar hur jag jobbar. Den har inte lärt mig något än.

och senstäng

På dag tre sa jag att det bara var bekräftelse: spegeln visade mig, men jag upplevde inte att jag lärde mig något. Det är fortfarande den öppna frågan, och hittills är jag den enda användaren. Härnäst är fem personer som aldrig sett den, och en månad av mina egna dagar för att se om en spegel ändrar något.

kort sagt

En spegel, inte en chef.

  • Läses på en till tre sekunder
  • Inget att deklarera
  • Sista steget är ditt
  • Local-first
  • Öppen källkod
  • Byggd med AI-agenter
github.com/Baltsar/mason