Generate type-safe ATProtocol API bindings in .NET apps by processing Lexicon JSON files with Roslyn source generators, enabling compile-time validation and IntelliSense for ATProtocol interactions.
CarpaNet is a .NET Library for interacting with ATProtocol. It uses Roslyn source generators to produce API bindings, serialization contexts, and data models from ATProtocol Lexicon JSON files, designed for full AOT compatibility.
For information on the core CarpaNet library, check out its Readme. For information on the OAuth support, check out CarpaNet.Oauth. For information on the Jetstream support, check out CarpaNet.Jetstream. For information on the Source Generator, check out its Readme.

This library is experimental and not stable. Expect issues and bugs!
FishyFlip was my original ATProtocol/Bluesky library for .NET. I originally intended it as a client SDK for Bluesky, but over the years, it evolved into a framework with a source generator and many helper extensions. However, this led to issues:
Result object for returning success or error types from endpoints was, I feel, too clever. I iterated on it several times to make it easier to understand and deconstruct. Still, in code from people using the library, I often saw them casting to or using the T0 and T1 types to check against. Whenever I tried using LLMs against FishyFlip, they often failed to generate the correct output or would do bad practices.With that, the goals of CarpaNet are to:
CarpaNet includes a Claude Code plugin with a skill that teaches Claude how to use the library. It should help project setup, client creation, OAuth, Jetstream, identity resolution, etc.
Add the CarpaNet marketplace:
/plugin marketplace add drasticactions/CarpaNet
Install the plugin:
/plugin install carpanet@carpanet-plugins
Or use the interactive UI by running /plugin, navigating to the Discover tab, and selecting the carpanet plugin.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub drasticactions/carpanet --plugin carpanetUltra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.