{"id":"00000000-0000-0000-0000-000000000001","contact":{"name":"Sunny Yuen","email":"sunny@yuens.me","github":"https://github.com/yuens1002","website":"https://yuens.me","linkedin":"https://linkedin.com/in/yuens-me","pronouns":"he/him"},"summary":"Full-stack engineer with 7+ years shipping production-grade systems, increasingly at the intersection of TypeScript, AI agents, and the Model Context Protocol. Builds and operates multi-product ecosystems as sole engineer — owning specification, architecture, implementation, QA, and operations end-to-end. Designs AI-augmented systems that are deterministic and auditable by construction: engineering judgment owns what to build and why; AI accelerates the mechanical work.","skills":[{"items":["TypeScript","JavaScript","Python","Go","HTML"],"category":"Languages"},{"items":["Next.js","React","Hono","Node.js","Tailwind CSS","shadcn/ui"],"category":"Frameworks & Libraries"},{"items":["Anthropic Claude API","Vercel AI SDK","MCP (@modelcontextprotocol/sdk)","Claude Agent SDK","OpenRouter"],"category":"AI & Agents"},{"items":["Supabase","PostgreSQL","pgvector","Prisma","Neon PostgreSQL","Railway","Vercel","GitHub Actions","Zod"],"category":"Data & Infrastructure"},{"items":["Jest","Playwright","Vitest","RTL","Cucumber"],"category":"Testing"}],"employment":[{"title":"Product Engineer","bullets":["Functions as sole Product Engineer across a live multi-product ecosystem — open-source e-commerce store, hosted SaaS, AI resume agent, and community MCP server — owning specification, architecture, implementation, QA, and production operations end-to-end","Operates AI-augmented development systems: Claude Agent SDK + Playwright for nightly regression testing and automated repair PR generation; LLM-driven semantic diff for nightly profile sync; deterministic 16-case eval harness for quality-gating AI query responses","Ships to production-grade standards: type-safe Zod contracts, durable state machines with race guards, 300+ tests, Ed25519-signed git evidence per project, and OEP domain verification (Phases 1–3)","Designed and shipped a self-sovereign AI resume agent implementing A2A v1.0, public MCP endpoint, and Open Employment Protocol — enabling employer AI systems to verify candidate claims against cryptographically-signed git history"],"company":"Self-Employed","end_date":null,"start_date":"2023-08"},{"title":"Frontend Developer","bullets":["Spearheaded development of a custom web application for LAX airport, enhancing organizational engagement through a dynamic reporting system and organization directory","Built responsive web/mobile-first UI using Next.js, React, TypeScript, and MUI based on Figma specs","Integrated Microsoft Active Directory for a searchable personnel directory across airport staff and management","Launched beta and revamped v1 with authenticated access to reporting via RESTful API endpoints"],"company":"Wipro, Inc","end_date":"2023-08","start_date":"2023-01"},{"title":"Software Developer","bullets":["Enhanced Coherence Design System by adapting type-safe functional components, improving maintainability and performance","Boosted unit test code coverage from 50% to over 80% using Jest and RTL","Achieved 0% security vulnerabilities via manual and automated NPM dependency updates","Collaborated to resolve accessibility issues ensuring compliance with 508/WCAG standards"],"company":"DesignIt, Inc","end_date":"2022-12","start_date":"2022-04"},{"title":"Frontend Developer","bullets":["Implemented automated accessibility (508) and code quality tests using Jest, Playwright, and Cucumber for the US Census Bureau","Refactored Farmers.gov Drupal 8 theme using HTML/Sass/CSS/JavaScript, improving efficiency and maintainability","Developed self-contained Vue.js web applications using Drupal as an endpoint for content management","Participated in SAFe Agile practices with cross-disciplinary teams"],"company":"MetroStar Systems","end_date":"2022-03","start_date":"2020-05"},{"title":"Software Engineer","bullets":["Delivered cross-product features for a real-estate intelligence web app serving national brokerage firms","Contributed to both frontend (React/Redux) and backend (REST/GraphQL) layers","Designed and maintained global UI components including Modals and Drawers, improving consistency across the application","Implemented feature flags at the component level to facilitate smoother feature rollouts","Built styled components within a custom UI library in collaboration with the UX team"],"company":"Remine, Inc","end_date":"2020-03","start_date":"2019-04"},{"title":"Front End Developer","bullets":["Built data-intensive single-page applications for a client-facing operations management system","Integrated API endpoints to frontend using Vue.js/Vuetify and collaborated with QA on bug resolution","Partnered with UX team to iterate over design mocks and built prototypes for user testing","Utilized Google Charts for data visualization; participated in daily scrums and bi-weekly build cycles"],"company":"DealerOn, Inc","end_date":"2019-04","start_date":"2017-03"}],"education":[{"field":"Web Development","degree":"Certificate","end_date":"2016","start_date":"","institution":"Seattle University"},{"field":"","degree":"Bachelor of Arts","end_date":"1999","start_date":"","institution":"University of Washington"}],"projects":[{"url":"https://demo.artisanroast.app","name":"Artisan Roast Store","repo":"https://github.com/yuens1002/artisan-roast","role":"Sole developer and architect — designed and built the open-source store and AI-native development workflow end-to-end.","slug":"artisan-roast","tech":["Next.js","TypeScript","Prisma","Neon PostgreSQL","Stripe","NextAuth.js v5","Tailwind CSS","shadcn/ui","Jest","Playwright","Claude Agent SDK","Google Gemini","Zod","GitHub Actions","Vercel"],"cover":"https://snvyqnnmeotratupqbua.supabase.co/storage/v1/object/public/project-covers/artisan-roast.webp","impact":"Live at artisanroast.app with continuous weekly releases. Ships a free community tier, paid support plans, and add-on packages. Hosted multi-tenant solution and AI back-office MCP server in active development — a full SaaS platform built and maintained as a solo developer.","status":"active","problem":"Independent coffee shop owners lack affordable, purpose-built e-commerce tooling. Generic platforms are expensive and not tailored to specialty coffee workflows. Non-technical owners have no viable self-hosted option.","started":"2025-11","highlights":["Engineered a nightly QA system using Claude Agent SDK + Playwright that reads accessibility trees (not CSS selectors) to verify 16 acceptance criteria — auto-opens GitHub issues on regression","Designed a 'Contract-Driven' UI architecture for SaaS plan management: uses a canonical visual harness to loop through captured SDK payloads, generating 17+ state-specific UI scenarios (Trial, Expired, Pending, etc.) to prevent cross-repo drift","Implemented a 3-state asynchronous payment machine (Converting → Pending → Provisioning) with non-dismissable polling modals, generic error recovery, and ARIA-live status announcements for high-stakes billing transitions","Architected a 'Demo-Bypass' routing layer for the Plans page that intercepts platform-materialized endpoints to simulate successful checkouts in demo mode while enforcing strict contract testing for production paths","Developed a 'Provider-Driven' plan card system that eliminates slug-based conditional rendering by dispatching on SDK status (NONE/ACTIVE/TRIAL/EXPIRED/CANCELLED/INACTIVE) with inline-left Pool CTAs and management dropdowns","Built a spec drift guard (GitHub Actions) that enforces bidirectional sync between VERIFICATION.md and qa-agent.js — prevents spec/implementation divergence across the team","Optimized CI/CD reliability by engineering a custom Playwright installation strategy (using yauzl/unzip) to bypass silent extraction hangs on GitHub Actions runners, reducing build timeouts and improving deployment velocity","Built a complete coffee-native e-commerce platform (products, orders, subscriptions, admin, drag-and-drop menu builder) as a solo developer — 118 API routes, 39 Prisma models, 638 TypeScript files"],"description":"Open-source e-commerce store for specialty coffee retailers, built with an AI-native development workflow.","architecture":"Artisan Roast is an open-source e-commerce and SaaS platform for specialty coffee featuring a drag-and-drop menu builder and an AI-powered CMS for brand-aligned content generation. The system is built on Next.js 16 and React 19 using a type-safe architecture with Prisma and Neon PostgreSQL, integrating Stripe for complex subscription lifecycles. A key engineering highlight is the provider-agnostic SDK that enables build-time isolation and dead-code elimination between self-hosted stores and managed platform environments. Reliability is maintained through an automated agentic development loop and a nightly QA pipeline where a Claude Agent SDK script performs Playwright tests against the accessibility tree to verify acceptance criteria.","git_evidence":{"source":"https://github.com/yuens1002/artisan-roast","provider":"github","signature":{"alg":"ed25519","value":"Yh4uiJAB5N5cX1ewYK_t1Eju1IkbpNZJtMKVsX1uwG7WfuTKQRpcq9B5KQot32cobYzkkzHf471BVRugra94CQ","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T02:59:35.417Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":138,"total_files":1440,"typescript_files":1015},"verified_at":"2026-07-21T02:59:35.412Z","commit_count":1106,"contributors":2,"last_push_at":"2026-07-10","default_branch":"main","repo_created_at":"2025-11-11"}},{"url":"https://artisanroast.app","name":"Artisan Roast SaaS Platform","repo":"https://github.com/dev-yuen-agency/artisan-roast-platform","role":"Sole developer and architect — designed and built the SaaS layer, provisioning pipeline, and all platform services end-to-end.","slug":"artisan-roast-platform","tech":["Next.js","TypeScript","Prisma","Neon PostgreSQL","Stripe","NextAuth.js v5","Tailwind CSS","shadcn/ui","MCP protocol","Claude API","GitHub Actions","Vercel","Zod","React","Vitest"],"cover":"https://snvyqnnmeotratupqbua.supabase.co/storage/v1/object/public/project-covers/artisan-roast-platform.webp","status":"active","problem":"The open-source store requires self-hosting expertise. The SaaS platform removes that barrier: owners get a managed instance, Stripe billing, and AI-powered tools with zero DevOps overhead.","started":"2025-11","highlights":["Sole engineer on a full commercial SaaS platform built from scratch, spanning infrastructure provisioning, Stripe billing, developer SDK, multi-state subscription lifecycle, and support tooling.","Built an ecosystem for the open-source Artisan Roast e-commerce store, providing add-on services for store owners and an SDK for independent developers to build on.","Instant rollout of new plans and services to all store instances with no redeployment required.","Automated store provisioning so a new customer signs up and gets a live store in minutes with no manual setup.","Built a billing change system that enforces legal notice periods and protects customers from surprise price increases.","Designed the subscription lifecycle to handle 8+ customer states reliably, backed by 845+ tests with full coverage on billing transitions."],"description":"Operator control plane for the Artisan Roast stack — manages app installs, subscription plans, billing, license enforcement, and provisioning automation across all tenant shop instances.","architecture":"Artisan Roast SaaS Platform is a managed hosting and subscription management service built on top of the open-source Artisan Roast store framework. The platform automates the full customer lifecycle including multi-tenant provisioning, license enforcement, and integrated billing for shop instances. The technical stack leverages Next.js for the frontend, Supabase for authentication and tenant data, and a custom SDK for validating plan and add-on configurations. The architecture prioritizes a commercial-grade multi-tenancy model that separates core open-source logic from proprietary subscription and infrastructure management.","git_evidence":{"source":"https://github.com/dev-yuen-agency/artisan-roast-platform","provider":"github","signature":{"alg":"ed25519","value":"FXInmzr_Or-9JiWuCMwWJfEQJGs2jLc3gPR9ui0vhaNPIvz9xGQn6M_JkVMMiMxUti2k4MPgf14Iyd2bHM2FDA","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T02:59:37.255Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":80,"total_files":533,"typescript_files":311},"verified_at":"2026-07-21T02:59:37.254Z","commit_count":246,"contributors":1,"last_push_at":"2026-06-16","default_branch":"main","repo_created_at":"2026-03-05"},"skipChangelog":true},{"url":"https://agent.yuens.me","name":"Resume Agent","repo":"https://github.com/yuens1002/resume-agent","role":"Sole developer and architect.","slug":"resume-agent","tech":["Node.js","TypeScript","Hono","Supabase","PostgreSQL","pgvector","Anthropic Claude","Vercel AI SDK","MCP (@modelcontextprotocol/sdk)","OpenRouter","Zod","Railway","GitHub Actions"],"impact":"Designed to be discovered and queried by employer AI systems, ATS tools, and personal LLM agents. Queryable via QR code at networking events or by any A2A-compatible system.","status":"active","problem":"AI systems are increasingly the first pass in hiring. Most candidates have no structured, queryable representation of their professional profile that AI agents can interrogate directly.","started":"2026-03","highlights":["Production-grade MCP implementation: SSE streaming transport with 30s keepalives, OAuth2 (Auth Code + PKCE) for Claude.ai integration, and dual-visibility servers (private tools vs. public recruiter tools)","Multi-stage Latency Optimization: Reduced behavioral p95 from 11.3s to 320ms via two-layer response caching (in-process + pgvector-aware), per-category maxToken tuning, and progressive disclosure for enumeration queries","A2A (Agent-to-Agent) v1.0 compliance: RFC 8615 canonical /.well-known/agent.json discovery, Ed25519 domain verification (OEP), and signed git-evidence attestation for verifiable project history","Truth contract enforced by code: inline [N] citation rules and a 18-case eval harness (deterministic rubric + LLM-as-judge) that catches fabrication, confidence inflation, and citation drops","UX-optimized Query Engine: Dual-mode interaction (conversational prose vs. structured JSON), third-person follow-up suggestions, and progressive disclosure to bound LLM costs while maintaining quality","Nightly GitHub-to-OB1 Sync: LLM-powered architecture reconciliation via semantic diffing (Claude-Haiku) to extract project thoughts from CHANGELOGs and automated version-drift detection between package.json and logs","Observability & Eval Discipline: Automated median-of-N latency baselines, phase-timing instrumentation (LLM vs. retrieval), and majority-vote correctness evals to resolve behavioral-fixture flakes","Deterministic job-fit scoring: AI provides categorical sub-dimension judgments (skills, experience, domain), while code computes the weighted average (50/30/20) to eliminate LLM drift and score inflation"],"description":"A2A-compatible AI agent that represents a professional profile as a machine-queryable JSON API — built for employer AI systems, ATS tools, and personal LLM interfaces.","architecture":"This project provides a machine-queryable AI agent that serves as a canonical, truth-grounded professional profile for employer AI systems and personal use. Built on Node.js and Hono, the architecture utilizes the Vercel AI SDK to orchestrate reasoning tasks via Anthropic and OpenAI models while leveraging the OB1 framework for knowledge capture and storage. The system exposes a public HTTP API, an OpenAPI-compliant agent card, and dual MCP servers for both public tool-calling and private knowledge management. A key engineering focus is the Truth Contract, which enforces inline citations and prevents hallucination through a deterministic evaluation harness and strict system prompt rubrics. The project further implements the Open Employment Protocol Phase 1, using DNS fingerprints and Ed25519 keys to ensure cryptographic identity verification and self-sovereign data ownership.","git_evidence":{"source":"https://github.com/yuens1002/resume-agent","provider":"github","signature":{"alg":"ed25519","value":"Gg9pfaTCWfuro_oQK7lwLIlCA-lCCbBSlfNoz4Rj8BzEXGuM7eiGjHKyQnmN76O55eH3dxRjuyQ6s9VSscfrAA","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T03:00:06.837Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":30,"total_files":147,"typescript_files":93},"verified_at":"2026-07-21T03:00:06.837Z","commit_count":199,"contributors":2,"last_push_at":"2026-07-13","default_branch":"main","repo_created_at":"2026-03-22"}},{"url":"https://brew-guide-production.up.railway.app","name":"Brew Guide","repo":"https://github.com/yuens1002/brew-guide","role":"Sole developer — designed and built the MCP server, recommendation engine, database schema, and all tooling end-to-end.","slug":"brew-guide","tech":["TypeScript","Hono","Neon PostgreSQL","Prisma","MCP (@modelcontextprotocol/sdk)","Vitest","Railway","Node.js","Zod"],"cover":"https://snvyqnnmeotratupqbua.supabase.co/storage/v1/object/public/project-covers/brew-guide.webp","impact":"Public MCP endpoint at brew-guide-production.up.railway.app/mcp — usable by any MCP-capable tool. Submitted as an entry to the Hermes Agent Challenge 2026.","status":"active","problem":"Brew parameter guides are anecdotal and inconsistent — different sources recommend wildly different temperatures, ratios, and grind sizes with no basis in collective data.","started":"2026-05","highlights":["Engineered a deterministic recommendation engine that calculates confidence tiers (High/Medium/Low) based on community data volume rather than LLM probability.","Designed a 3-tier origin verification system (Exact, Fuzzy, Unknown) that programmatically degrades recommendation confidence to prevent 'hallucinated' consensus from imprecise data.","Implemented a suite of 5 MCP tools over a public Streamable HTTP endpoint, enabling agentic coffee brewing via Claude Desktop, Cursor, and other MCP clients.","Architected a dual-journey API flow (Query → Log → Compare) supported by a unified snake_case data model and Neon Postgres + Prisma ORM for strict type safety.","Developed a 'Delta Analysis' engine that provides structured feedback on variance across 4 dimensions (temp, time, ratio, grind) relative to method-specific defaults.","Refactored the entire persistence layer from local sql.js to a cloud-native Neon Postgres architecture while maintaining 100% TypeScript strict-mode compliance.","Designed a 'Literature Automation' scaffold to ingest unstructured forum discussions, bridging the gap between community tribal knowledge and relational data structures.","Established a rigorous CI/CD pipeline with a 56-test Vitest suite and auto-deployment to Railway, ensuring zero-regression logic for complex scoring algorithms."],"description":"Community-powered MCP server that answers 'how should I brew this coffee?' — synthesizes consensus brew parameters from logged experiments with zero LLM dependency.","architecture":"Brew Guide is a community-driven recommendation engine that aggregates coffee brewing experiments into deterministic weighted consensus parameters for specific origins and methods. The system is built on Node.js 24 and Hono 4, utilizing Neon Postgres with Prisma for persistence and Vitest for a rigorous test suite. A key architectural decision is the exposure of the engine via the Model Context Protocol using a streamable HTTP transport, allowing AI agents to query brewing data without relying on LLMs in the hot path. This setup ensures high-confidence recommendations categorized by data density tiers while maintaining an open-access origin policy for seamless integration with tools like Claude Desktop and Hermes.","git_evidence":{"source":"https://github.com/yuens1002/brew-guide","provider":"github","signature":{"alg":"ed25519","value":"MBz2L4fwbkoqkgGPjEJRA73LFCGw55wGmRXuFc1uJfkcqFOuS99y57lI7lnHsUmQzsqdNoBhLPoaDa43IZcmDg","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T03:00:20.845Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":7,"total_files":105,"typescript_files":26},"verified_at":"2026-07-21T03:00:20.844Z","commit_count":58,"contributors":1,"last_push_at":"2026-06-07","default_branch":"main","repo_created_at":"2026-05-25"}},{"url":"https://www.yuens.me","name":"Resume Agent Web","repo":"https://github.com/yuens1002/resume-agent-web","role":"Sole author — architecture, design, and implementation","slug":"resume-agent-web","tech":["TypeScript","React","Vite","Hono","JSON-LD","llms.txt","MCP","A2A","Vitest"],"status":"active","problem":"The resume-agent backend exposes a rich JSON API but had no human-friendly or AI-discoverable frontend. Recruiters, hiring managers, and AI agents had no ergonomic way to explore a candidate's profile.","started":"2026-05","highlights":["Dual-mode architecture: conversational UI for humans + JSON-LD / llms.txt for AI agents and crawlers","Implements A2A agent discovery via .well-known/agent-card.json for automated recruiter-agent handshakes","Multi-modal 'Source Attribution' system that maps LLM citations to specific resume sections with interactive hover-states","Context-aware 'Suggested Questions' system that dynamically updates based on conversation history to reduce user friction","Streaming-first UX with optimistic UI updates and automatic scroll-anchoring for real-time LLM responses","Integrated Markdown and LaTeX rendering engine for high-fidelity display of technical resumes and academic credentials","Responsive 'Glassmorphism' design system with full keyboard accessibility and ARIA-compliant message threading","Open-source and generic — any resume-agent user can self-host by pointing two env vars at their backend"],"description":"A talkable, machine-readable face for any resume-agent backend — conversational UI for people, JSON-LD + llms.txt for AI.","architecture":"This project provides a conversational, AI-native front-end that transforms a static profile into a queryable interface for both human recruiters and autonomous agents. Built as a React and Vite single-page application, it utilizes a Hono middleware layer to serve structured machine-readable endpoints like llms.txt and JSON-LD alongside the visual UI. The architecture employs a server-side proxy pattern to securely handle sensitive API keys while decoupling the presentation layer from a separate backend data source via environment variables. By integrating real-time job-fit scoring and tailored resume generation, the system functions as a universal, open-source template for verifiable professional identity.","git_evidence":{"source":"https://github.com/yuens1002/resume-agent-web","provider":"github","signature":{"alg":"ed25519","value":"VrPFLoa8qFM4pfbY8VjkOVS6xT4EBOkBd3AEoJHibqklSkLOro9BUCi33HuGZ2jwgg6Wndu_sxDzbFabrV0LBQ","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T03:00:33.805Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":1,"total_files":62,"typescript_files":26},"verified_at":"2026-07-21T03:00:33.805Z","commit_count":48,"contributors":1,"last_push_at":"2026-07-13","default_branch":"main","repo_created_at":"2026-05-29"}},{"name":"Open Employment Protocol (OEP)","repo":"https://github.com/yuens1002/open-employment-protocol","role":"Creator — protocol design and candidate-side reference implementation.","slug":"open-employment-protocol","tech":["A2A agent-card","MCP","Ed25519 signing","DNS-TXT verification","OpenAPI","Hono","TypeScript"],"impact":"Reframes hiring from value-extraction to value-transfer — turning a static résumé into a queryable, verifiable, self-sovereign node. Exercised in the wild before any formal launch: 66 real external queries over 62 days from interviewer, ATS, and AI-agent callers.","status":"active","problem":"Hiring has become a race to the bottom: candidates spam AI-optimized résumés, employers auto-reject with AI, and the engineers who would actually work together never speak first. Identity and trust stay locked inside walled gardens that profit from the friction.","started":"2026-03","highlights":["Candidate-side reference implementation is live and open-source (resume-agent + resume-agent-web, MIT); identity derived from a queried profile so a fork points two env vars at its own backend and becomes that person's site","Public, browsable evidence trail (/observations): each dated premise individually addressable and citable — verify-me-not-trust-me","Names its own biggest open problem — how a reconciled position becomes a governed, published standard — and turns it into a call for standards-experience collaborators (GOVERNANCE.md)","CA-style federated trust that stores nothing: DNS-TXT domain verification + Ed25519 co-signatures"],"description":"An open, federated protocol for hiring — a reconciler that poses the candidate and employer positions and settles a net outcome no single party owns.","architecture":"Open Employment Protocol acts as a neutral reconciler between sovereign candidate agents and employer-side role agents to settle hiring outcomes through a verifiable evidence graph. The architecture consists of three independent repositories—a candidate-side agent, an employer-side recruiter, and the OEP reconciler—utilizing DNS-TXT domain verification and Ed25519 co-signatures for a certificate-authority-style trust model. Engineering is centered on a stateless handshake mechanism where every claim resolves to falsifiable evidence via a dated observations endpoint, ensuring no single party owns the standard. This design prioritizes value transfer over black-box automation by maintaining an open, queryable graph that routes the matching market around centralized captors.","git_evidence":{"source":"https://github.com/yuens1002/open-employment-protocol","provider":"github","signature":{"alg":"ed25519","value":"4psqfEIlJFNO22glQ5YXxl7nUAodiqnQAsywmoxO_Y5xszrKjwLl7UiAcQ9T6U5Vthy0KsibSC_zxfDiX99eDg","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T03:00:36.283Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":0,"total_files":11,"typescript_files":0},"verified_at":"2026-07-21T03:00:36.282Z","commit_count":6,"contributors":1,"last_push_at":"2026-06-02","default_branch":"main","repo_created_at":"2026-06-01"}},{"url":"https://railway.com/deploy/X2T0sN?referralCode=X2mmSS","name":"Bookie","repo":"https://github.com/yuens1002/bookie","role":"Author","slug":"bookie","tech":["TypeScript","MCP","Hono","Prisma","PostgreSQL","Neon","Zod","AWS S3","Resend","Railway","OAuth 2.0","MCP (@modelcontextprotocol/sdk)","Vitest"],"status":"active","problem":"Financial software demands a dedicated UI — but the LLM already reads CSVs, sees receipt photos, and writes prose. Bookie owns what an LLM shouldn't improvise: a correct double-entry ledger, integer-cent math, deterministic categorization rules, and reproducible US Schedule C tax reports.","started":"2026-06","docsPath":"docs/ARCHITECTURE.md","urlLabel":"Deploy on Railway","highlights":["Multi-transport MCP server: stdio for local IDEs and HTTP with OAuth 2.0 + PKCE for remote mobile LLM access","Automated 'Smoke Test' CI: spins up a disposable Neon database, pushes schema, and verifies MCP stdio responsiveness via the Inspector CLI for every release","Self-healing CLI setup: handles cross-platform CRLF normalization, interactive Neon org resolution, and idempotent project creation with guided error recovery","Defensive configuration UX: server refuses to start without auth (JWT/OAuth) or required environment variables, preventing accidental unauthenticated deployments","Two-stage CSV import flow: 'preview' (parse, dedup, and rule-match) → 'confirm' (write) pattern ensures idempotency and user control","Distribution-first DX: automated npm publishing, MCP Registry auto-discovery metadata, and Dockerfile-level port synchronization for one-click Railway deployment","Double-entry ledger with integer-cent math — no floating-point rounding errors across all accounting operations","Rule-based categorization engine: suggests account routing based on historical patterns with a 'suggest, never auto-post' UX philosophy"],"description":"MCP server for personal & business double-entry bookkeeping — no UI, the LLM is the interface","architecture":"Bookie is a TypeScript-based Model Context Protocol server that manages a double-entry accounting ledger through a Neon Postgres database and Prisma ORM. The system enforces a strict separation of concerns where the host LLM handles natural language processing while the server executes deterministic money math using integer minor units to avoid floating-point errors. It supports dual transports via stdio for local use and a Hono-based HTTP layer for cloud deployment, featuring a full OAuth 2.0 flow with PKCE for secure integration with the Claude.ai connector. Engineering highlights include a centralized remote database strategy using Neon branches for environment parity, automated tool documentation generation, and a graceful degradation pattern for receipt storage using S3-compatible Railway Buckets.","git_evidence":{"source":"https://github.com/yuens1002/bookie","provider":"github","signature":{"alg":"ed25519","value":"M9I_YPOPP6znSTl3zY-mT_2gvmUtUMHUARqDBhtm7ye2CEtXs2JMQyzE7HN3HX3Im--e_bvKtp7rVf2TuOizDQ","key_url":"https://agent.yuens.me/.well-known/oep-public-key.json","signed_at":"2026-07-21T03:00:50.014Z","fingerprint":"bZCBY6x_RnGLyQgnCY0lN7CvpiBZMvRUBo68oeisPYc"},"repo_stats":{"test_files":15,"total_files":97,"typescript_files":52},"verified_at":"2026-07-21T03:00:50.014Z","commit_count":55,"contributors":2,"last_push_at":"2026-07-12","default_branch":"main","repo_created_at":"2026-06-07"},"skipChangelog":false}],"availability":{"remote":true,"status":"actively-looking","seeking":true,"preferred_roles":["Frontend Engineer","Full Stack Engineer","Software Engineer"],"preferred_locations":[]},"updated_at":"2026-07-21T03:00:50.015+00:00","tagline":"Full systems. Every layer. One engineer.","verification_status":{"domain":"verified","git_evidence":"partial","peer_attestations":"pending","employer_cosignature":"pending_ecosystem","note":"Domain ownership verified via OEP Phase 1 (Ed25519 + DNS TXT fingerprint). Git evidence available for 7 of 7 project(s). Employment verification via employer co-signature is pending ecosystem adoption. Peer attestations via public LinkedIn posts are the current best available signal — the candidate welcomes LinkedIn recommendations from former colleagues."}}