Software Engineer | DDD | Applied AI | DevOps Culture
| Project | Stars | My contributions | ||
|---|---|---|---|---|
| Bug fixes | Features & docs | Reviews | ||
| akitaonrails/ai-memory | 9,245 | 16 | 8 + 1† | 0 |
| career-ops-hq/career-ops | 74,488 | 4 | 3 | 1 |
| akitaonrails/frank_mangaplus | 48 | 0 | 3 | 0 |
| Total | 83,781 | 20 | 15 | 1 |
Bug fixes and Features & docs show merged pull requests in bold and open pull requests in regular type.
Reviews count pull requests by other authors. Contribution counts link to matching pull requests.
Stars are summed across the upstream repositories listed. Counts checked on 2026-10-14 (UTC).
† PR #711 was closed without merging after its commit landed upstream in 817cde17.
Contributions merged by akitaonrails in ai-memory and frank_mangaplus, and by santifer in career-ops.
In ai-memory, each contribution below began as an issue I filed. I corrected how Claude Code loads shared project instructions, the documented dependency check command, the documented auto_scope default, and the documented auto-improve reviewer context. I also made the local dependency check match CI, spooled undelivered hook events, preserved the ingest key across shell retries, made session-start hooks request the configured brief, and sent the configured reasoning effort to Claude Haiku 5.5. I kept the native client and its hook bundle together in the Docker cache and stopped auto-wire from overwriting a session-aware MCP bridge. In the memory internals, I gave a date-only expiry a conformant stale marker, protected pinned pages during consolidation, kept an agent's session page through SessionEnd, named the projects behind an ambiguous project name, let memory_write_page cite a session, and hardened bootstrap chunking (#936, #938, #940). In the cross-project profile, I kept Codex instructions that name no directory out of it, stopped harvesting ADR metadata as a habit, let memory_write_page and write-page set applies_to and enforced_by, and documented that rebuild never removes an entry. Separately, I added Muse Code as an MCP client and restored the security boundary table after a release merge.
In career-ops, I corrected the populations used for blocker and discard rates, fixed a weekly match count that stopped at 24, escaped ampersands in offer URLs, bridged scan history to company discovery, added a board-wide Gupy provider, and let the updater read the profile directly when a cv-templates import is missing. I also closed the discard_reasons vocabulary I flagged earlier.
In frank_mangaplus, I built catalog language selection for myself and contributed it upstream, where it headlined the v1.1.0 release. It covers all nine MANGA Plus catalogs and corrects language IDs that mislabeled Portuguese, Russian, and Indonesian editions. I also merged the desktop reader's double-page layouts into one spread-aware mode, which pairs pages as printed and shipped as the v1.2.0 release. I then reported the gap that became the v1.3.0 release's manual pairing corrections for chapters the API leaves unmarked, and corrected the spread-pairing audit for the Portuguese edition in that release.
english-tutor-claudinho: an Agent Plugins 1.0.0 plugin that gives your coding agent the ability to act as your own English tutor. It corrects the English in the messages you send, records recurring mistakes, and reviews them with you. Tuned for Brazilian Portuguese speakers, with Claude Code and Codex as its MVP clients.
judoka-assistant: a Brazilian Portuguese assistant for judo techniques, history, and rules that declines any other topic. It places a curated corpus in Claude's context with prompt caching, behind a scope guardrail that fails closed. Built with Python, FastAPI, and the Anthropic SDK.
ai-memory, career-ops, and frank_mangaplus under my account are forks used for upstream contributions. The table reports the upstream repositories' stars and links to my work there.



