public class Matheus : Developer
{
public string Location => "Fort Bragg, NC";
public string Training => "Microsoft Software & Systems Academy (MSSA) · Cloud Application Development";
public string Background => "US Army ADA Systems Operator, transitioning · Active TS/SCI";
public string[] Focus => ["C# / .NET", "Azure", ".NET MAUI", "MERN", "Agentic development"];
public string Approach => "The agent recommends with trade-offs. I decide.";
public string Status() => "Open to software engineering opportunities.";
}| Project | What it does | Stack | |
|---|---|---|---|
| 🛠️ | ProdHarnessConfig | Production harness for Claude Code: skills, subagents, hooks and scripts that take a GitHub issue from plan to merge, with a person deciding at two gates. Built from measured session data: about 40% less cost per issue than one long session. | Node.js Markdown Mermaid Claude Code GitHub Actions |
| 🧭 | HarnessEngineering101 | Study material for agentic assisted development: how I approach harness configuration and development workflow, with examples from two real projects. | Markdown Mermaid Claude Code |
| 🌐 | ThisIsMatheusCastro (private repo) | My portfolio site: one long scrolling page with a theme per section, and Calvo, a pixel-art mascot who answers questions about me. | Next.js TypeScript Tailwind PostgreSQL Neon Claude |
| 🍼 | BabyBuddyHelper | Cross-platform parenting companion: tasks, appointments, baby profiles, a vaccine tracker and calendar views, with Cub, an animated companion | C# .NET MAUI EF Core SQLite xUnit |
| 🧾 | InvoiceMe | Customer and invoice management for small businesses, from customer records to invoice PDFs | MongoDB Express React Node.js Tailwind |
Every issue moves through the same four blocks, and I decide at two gates. The agent scopes the issue and recommends; I approve the plan. A forked Sonnet subagent builds it and opens a draft PR. A fresh Opus session briefs an independent, read-only red-team on that commit and brings me one report of findings to decide on. I merge by hand, then clean-up handles the after-merge housekeeping: memory, local branches, issue checks. Each block starts from a file, never from the whole conversation, and hooks enforce the rules a prompt can't.
flowchart LR
A["Scope"] --> G1(["G1: Plan review"])
G1 -. Revise .-> A
G1 -- Approved --> B["Build"]
B --> C["Review"]
C --> G2(["G2: PR review, CI, findings"])
G2 -. Fix findings .-> B
G2 -- Merged --> D["Clean-up"]
The full workflow, with measured results: ProdHarnessConfig. The ideas behind it: HarnessEngineering101
while (learning)
{
Scope(); // G1: I approve the plan
Build();
Review(); // G2: I decide the findings
CleanUp();
}


