Skip to content
View mstuart's full-sized avatar
👋
👋
👋
👋

Organizations

@TheYachtPlan

Block or report mstuart

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mstuart/README.md

Mark Stuart

For nearly two decades, I've built APIs, SDKs, and Web platforms for flagship consumer products at PayPal, eBay, and Rocket. I build developer platforms that make complex systems composable.

More at markstuart.dev.

⭐ Start here

  • 👁️ peek — DevTools for coding agents — session composition, cost attribution, and config A/B benchmarking.
  • 🗜️ tare — Lossless-by-default context compression for LLM coding agents — proxy, CLI, and MCP server.
  • ✂️ mcp-prune — Audit MCP server usage from Claude Code transcripts and prune the idle ones.
  • 📟 ai-statusline — Real-time model, token, cost, and git status line for AI coding assistants.
  • 🔌 graphql-agent-toolkit — Turn any GraphQL API into AI-agent-ready tools — MCP servers, LangChain tools, and SDKs.
  • 🛟 fetch-resilience — Retry, timeout, circuit breaker, and bulkhead policies for native fetch — edge-safe, zero deps.

Everything else is below. 50+ tools across AI agents, GraphQL, HTTP, async primitives, performance, and data.


🤖 AI & Agent Tooling

  • 🗜️ tare — Lossless-by-default context compression for LLM coding agents — proxy, CLI, and MCP server.
  • 📟 ai-statusline — Real-time model, token, cost, and git status line for AI coding assistants.
  • 🧠 code-memory — Persistent memory for AI coding — semantic search, git history, context that survives.
  • ✂️ mcp-prune — Audit MCP server usage from Claude Code transcripts and prune the idle ones.
  • mcp-replay — Record and replay MCP interactions for deterministic CI — nock/msw for MCP.
  • 🔍 mcp-tool-lint — Static linter that catches MCP tool-definition defects before they ship.
  • 👁️ peek — DevTools for coding agents — session composition, cost attribution, and config A/B benchmarking across Claude Code, Codex, and pi.
  • 🍼 pr-babysitter — Auto-fixes merge conflicts, failing CI, and review comments with Claude Code.
  • 🐍 pypi-axi — Inspect PyPI packages, versions, dependencies, and downloads with token-efficient TOON output — an AXI for agents.
  • 🍺 homebrew-axi — Inspect Homebrew formulae, casks, and installed packages with token-efficient TOON output — an AXI for agents.
  • 🩺 vitals — Local-first Fitbit and Google Health archive with baseline-deviation alerts — CLI and MCP server.

🔷 GraphQL

  • 🔌 graphql-agent-toolkit — Turn any GraphQL API into AI-agent-ready tools — MCP servers, LangChain tools, and SDKs.
  • 🤝 graphql-contract — Consumer-driven contract testing for GraphQL — no Pact Broker required.
  • 💰 graphql-cost-guardian — Score and cap GraphQL query cost with configurable per-field weights.
  • #️⃣ graphql-hash — Deterministic query hashing for caching and persisted queries.
  • 🗃️ graphql-operation-store — Framework-agnostic persisted-query and trusted-document store.
  • 🧬 graphql-pluck-types — Pull TypeScript interfaces straight out of a GraphQL SDL string.
  • 📐 graphql-schema-policies — Enforce semantic schema-design policies in CI.
  • 🛡️ graphql-sentinel — Security scanner and runtime shield for GraphQL APIs.
  • 🐕 graphql-watchdog — Performance toolkit — N+1 detection, normalized caching, cost analysis, CI regression.
  • 🎓 graphql-workshop — Hands-on GraphQL training workshop (2018).
  • 🎤 xoom-graphql-workshop — Hands-on GraphQL training workshop (2019).

🌐 HTTP & API Tooling

  • 🛟 fetch-resilience — Retry, timeout, circuit breaker, and bulkhead policies for native fetch — edge-safe, zero deps.
  • 🚨 openapi-sentinel — Catch OpenAPI 3.1 spec drift live with runtime request/response validation.
  • 📋 problem-response — RFC 9457 Problem Details error responses — framework-agnostic and TypeScript-first.
  • 🔖 versionkit — API versioning with RFC-compliant Sunset and Deprecation headers.
  • ⏱️ api-perf-budget — Define and enforce per-route latency budgets in CI.

⚙️ Async & Runtime Primitives

  • 🏁 abort-race — Race async operations and auto-cancel the losers' AbortSignals.
  • ⏲️ abort-timer — An AbortSignal that fires after a timeout — with reset and clear.
  • 🔗 signal-compose — Combine AbortSignals with AND, OR, and timeout semantics.
  • 🧵 context-local — Typed, ergonomic context for async flows over AsyncLocalStorage.
  • 🧹 disposable-from — Wrap timers, listeners, and intervals as Disposables with clean teardown.
  • has-disposable — Check whether a value implements Disposable or AsyncDisposable.
  • 🧴 using-safe — Use and dispose resources safely, even without the using declaration.
  • 👷 offload-fn — Run a function in a Worker thread and await the result as a promise.
  • 🔎 is-runtime — Detect which JavaScript runtime you're executing in.
  • 🔐 has-permission — Check and assert Node.js Permission Model grants at runtime.

⚡ Performance, Memory & Caching

  • 📦 dep-perf-analyzer — Measure the runtime performance cost of your npm dependencies.
  • 📊 mem-pressure — Watch Node.js memory and emit events when thresholds are crossed.
  • 🩺 memcheck-node — Automated memory-leak regression testing for Node.js.
  • 📈 perf-fn — Time sync and async functions with the Performance API.
  • 🗑️ weakref-store — A WeakRef cache that evicts entries as values get garbage-collected.
  • 🧰 portacache — Portable key-value cache that auto-picks the best available backend.

🧱 Data, Collections & Errors

  • 🔁 iterable-ops — Lazy map, filter, take, chunk, zip, and flatten for sync and async iterables.
  • 🗺️ map-extras — Missing Map helpers — mapValues, filterEntries, merge, invert, groupBy.
  • set-extras — Set algebra — union, intersection, difference, subset, superset.
  • 🛂 schema-guard — Build runtime type guards from a plain object schema.
  • 🔀 deep-diff-patch — Compute a minimal JSON diff between objects and apply it as a patch.
  • 📤 error-serialize — Serialize and rebuild Error objects with their cause chains intact.
  • 🏷️ error-with-cause — Typed error classes with codes, cause chains, and type guards.
  • 🌊 stream-to-value — Drain a Web ReadableStream into a string, bytes, JSON, or array.
  • 🚿 web-stream-transform — Functional map, filter, take, batch, and tap for Web Streams.

🆕 Recently Published

Newest public repos that didn't match a section's naming prefix — move them into a section above.

  • markstuart.dev — Source for Mark Stuart’s personal website, built with Next.js and TypeScript.

Pinned Loading

  1. tare tare Public

    Lossless-by-default context compression for LLM coding agents — proxy, library, CLI, and MCP server. Local-first, cache-correct, reversible.

    Rust 3 1

  2. ai-statusline ai-statusline Public

    Customizable status line for AI coding assistants - real-time display of model, tokens, cost, git status, and more

    Rust

  3. peek peek Public

    DevTools for coding agents — session composition, cost attribution, compaction forensics, and config A/B benchmarking across Claude Code, Codex, and pi

    TypeScript

  4. vitals vitals Public

    Local-first archive and baseline-deviation detector for Google Health API v4 (Fitbit, Pixel Watch) data

    TypeScript 1

  5. graphql-agent-toolkit graphql-agent-toolkit Public

    Turn any GraphQL API into AI-agent-ready tools — MCP servers, LangChain tools, and standalone SDKs

    TypeScript

  6. graphql-workshop graphql-workshop Public archive

    ⚡GraphQL Workshop @ Venmo -- Fall 2018 🏎️

    JavaScript 5