Introducing CodeAssist

Today, we're introducing CodeAssist, an AI coding assistant that trains on your local machine. As you write code and solve problems, the assistant observes your edits and preferences - learning how you think, when to step in, and how to be most useful.

Introducing CodeAssist

Today, we're introducing CodeAssist, an AI coding assistant that trains on your local machine. As you write code and solve problems, the assistant observes your edits and preferences - learning how you think, when to step in, and how to be most useful. CodeAssist doesn't just autocomplete; it helps you reason through complex problems, explore alternative approaches, and improve your own understanding as it learns alongside you. After each session, the model retrains on your interactions to become a sharper, more aligned partner. It's open source and available now as an early demo of assistance games applied to professional coding.

This is a research prototype, and we're asking you to approach it with genuine curiosity and a spirit of exploration. Don't expect polish - expect discovery. CodeAssist represents a fundamentally new paradigm: an AI that learns to work with you, not just for you. This isn't a better version of autocomplete or agents - it's a different way of collaborating with AI entirely.

Background

Assistance games (also known as cooperative inverse reinforcement learning) enable agents to learn directly from human interactions without requiring direct human feedback. Because preference signals are captured automatically, this approach not only scales better than RLHF but also produces cleaner, more reliable data by avoiding the direct and potentially deceptive feedback common in manual annotation. Early research in the field has focused on narrow robot assistance tasks and toy problems; however, the technique shows promise for more broadly applicable open-ended coding tasks and beyond.

We're demonstrating the concept through a coding tutor experience focused on LeetCode-style problems in this initial version. We've intentionally narrowed the scope to create a well-defined environment where we can measure the impact of gradual improvements and new features we're already developing. The technique works for any coding task, and future versions will gradually expand beyond structured problems to support broader coding goals.

How It Works

CodeAssist runs as a local web application with four components:

  • The editor: A Monaco-based code editor (the same editor powering VSCode) where you solve LeetCode problems. Problems are stored locally in the repository.
  • The state service: Captures and manages the state of your coding session - tracking every edit, keystroke, and interaction to build training data - entirely on your device. All data remains local to your machine and never leaves for external services.
  • The solution tester: Runs your code against predefined test cases for each LeetCode problem, providing immediate feedback on correctness.
  • The models: Two models work together - a frozen LLM (Qwen2.5) that generates suggestions via Ollama, and a trainable action selection model that learns which actions to take based on your behavior. This separation is fundamental: your assistant learns when and how to help, then calls on the coding model to generate the actual content.

After you engage with the assistant via the web UI, you can return to your terminal to kick off training. Each coding session is recorded as you work, and once you’ve completed a few problems, the action selection model begins learning - from what you kept, what you corrected, and what you deleted. The trained model persists locally and improves with each training session.

The workflow is straightforward: CodeAssist presents you with a LeetCode problem. You write code alongside your AI assistant and test your solution against predefined test cases. When you complete the session, the assistant trains on the entire interaction and improves for next time.

How to Teach Your Assistant

Teaching your assistant is simple: keep the lines you like, delete what you don't. That's your signal. The assistant learns from these choices - understanding not just what code works, but how you prefer to work. It's a conversation conducted through edits.

Your assistant is learning to interact with you as much as you are learning to interact with it. Think of it like working with a bright but inexperienced junior developer. At first, they might be a bit clumsy or overeager, but with patient feedback - through your editing patterns—they learn your preferences, your style, and when you want help versus when you want control.

Privacy and Participation

Everything happens on your machine. Your code doesn't leave your device unless you explicitly choose to share. After training, you can upload your model to HuggingFace and earn activity points tracked on the Gensyn testnet leaderboard.

Why It Matters

Adapts to your collaboration style.

CodeAssist isn't just another autocomplete tool; it's also unlike the "point-and-shoot" agents you've been using. Your personalized AI assistant learns how you like to work, offering quick inline nudges when you prefer control, taking on larger edits when you choose a more hands-off experience, and everything in between. By reinforcing the patterns you use, your partnership evolves until it naturally settles somewhere between autocomplete and full agentic autonomy.

Be patient. Your assistant's development comes in waves. The first few sessions establish a baseline. After that, you'll notice it start to anticipate your needs, align with your style, and surprise you with helpful interventions. Like any learning relationship, it takes time to find your rhythm together.

Bring your own models and tools.

CodeAssist separates decision-making from decision-taking. Your personalized AI assistant is a lightweight model that efficiently decides how best to assist you, then calls on another model that specializes in coding to execute the action. Currently, CodeAssist only supports running a local coding model because we wanted to make the demo accessible to as many people as possible. But we're building toward a future where the assistant is agnostic to the tools it calls on: you'll pick your favorite coding models and tools, and it will learn how and when to use them to assist you, no fine-tuning required. Eventually, if you prefer different models for autocomplete, inline comments, or long-form code generation, your personalized AI assistant will orchestrate the right tool at the right time.

Open-ecosystem ready.

As high-quality, self-hostable models and tools proliferate, CodeAssist fits a privacy-first, user-owned stack - working with local or self-hosted models without relying on big-tech APIs. In this demo, we emphasize this by using free coding models that run locally. Still, your AI assistant will always be ready to leverage state-of-the-art models and tools that align with your personal values and empower you to choose what works best for you.

The Bigger Picture

We're using this coding tutor approach in this initial version to prove the concept with structured, measurable problems. Future versions will gradually expand to support any coding goal you set. But assistance games apply wherever humans have objectives and preferences that are hard to formalize - writing documentation, reviewing code, structuring projects, debugging with your approach.

Every time you work, you generate training signal. The question is who captures it and who benefits. With Gensyn's approach, you train your own assistant, contribute to a collective network if you choose, and get rewarded for participation.

We'll be publishing regular technical reports on this research project, sharing what we're learning - both successes and challenges - as we expand CodeAssist's capabilities. Your early participation directly accelerates this process and gives you a significant head start as we add new features and environments.

Get Involved

Download CodeAssist: The repository includes Docker containers for easy setup. Works on Mac, Linux, and Windows via WSL.

Start training: Solve LeetCode problems and watch your assistant learn and adapt to your style.

Share progress: Upload your models to HuggingFace and track your contributions on the leaderboard.

Join the community: Every coding session makes your assistant smarter. Every uploaded model contributes to the network. Start training your personal coding assistant today.

Links: