<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: TheCodeStreet</title>
    <description>The latest articles on DEV Community by TheCodeStreet (@thecodestreet).</description>
    <link>https://dev.to/thecodestreet</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1944406%2F788e81e5-324c-4a1c-a693-012f23682f15.png</url>
      <title>DEV Community: TheCodeStreet</title>
      <link>https://dev.to/thecodestreet</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thecodestreet"/>
    <language>en</language>
    <item>
      <title>Claude Code for Free in VS Code: No Login, No API Key (Ollama + Qwen 3.8)</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Mon, 02 Nov 2026 06:05:49 +0000</pubDate>
      <link>https://dev.to/thecodestreet/claude-code-for-free-in-vs-code-no-login-no-api-key-ollama-qwen-38-51f6</link>
      <guid>https://dev.to/thecodestreet/claude-code-for-free-in-vs-code-no-login-no-api-key-ollama-qwen-38-51f6</guid>
      <description>&lt;p&gt;Last time I ran Claude Code for free in the terminal. A lot of you asked the obvious follow-up: &lt;strong&gt;can I do this inside VS Code?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Yes. The official Claude Code extension can skip the Claude login entirely and talk to a model running on your own PC. No API key, no subscription, no bill. Then I gave it one prompt and it built a full Space Shooter game.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/ffKYzsTj-3w" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The extension normally sends your prompts to Anthropic's cloud. We point it at &lt;strong&gt;Ollama&lt;/strong&gt; instead, which runs &lt;strong&gt;Qwen 3.8&lt;/strong&gt; locally on &lt;code&gt;localhost:11434&lt;/code&gt;.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Piece&lt;/th&gt;
&lt;th&gt;Job&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VS Code + Claude Code extension&lt;/td&gt;
&lt;td&gt;The editor and the agent you chat with&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ollama&lt;/td&gt;
&lt;td&gt;Runs the model and serves it on port &lt;code&gt;11434&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Qwen 3.8 (27B)&lt;/td&gt;
&lt;td&gt;Actually writes the code&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;How you &lt;em&gt;use&lt;/em&gt; Claude Code doesn't change. Only where the model runs does.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before you start
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;VS Code (any recent version)&lt;/li&gt;
&lt;li&gt;~32 GB of memory between RAM and VRAM&lt;/li&gt;
&lt;li&gt;~20 GB free disk (the model is ~18 GB)&lt;/li&gt;
&lt;li&gt;A GPU helps a lot (24 GB VRAM is ideal). Without one it still runs, just slower.
## 1. Install Ollama and pull the model&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Windows: grab the installer from &lt;a href="https://ollama.com" rel="noopener noreferrer"&gt;ollama.com&lt;/a&gt;. macOS / Linux:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://ollama.com/install.sh | sh
ollama &lt;span class="nt"&gt;--version&lt;/span&gt;   &lt;span class="c"&gt;# needs 0.15 or newer&lt;/span&gt;
ollama pull qwen3.8:27b
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Quick sanity check: &lt;code&gt;ollama run qwen3.8:27b&lt;/code&gt;, say hi, then &lt;code&gt;/bye&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Install the extension
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;Ctrl + Shift + X&lt;/code&gt; → search &lt;strong&gt;Claude Code&lt;/strong&gt; → make sure the publisher is &lt;strong&gt;Anthropic&lt;/strong&gt; → Install.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Set four environment variables (this skips the login)
&lt;/h2&gt;

&lt;p&gt;Open Settings (&lt;code&gt;Ctrl + ,&lt;/code&gt;), search &lt;strong&gt;Claude Code: Environment Variables&lt;/strong&gt;, click &lt;strong&gt;Edit in settings.json&lt;/strong&gt; and add:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ANTHROPIC_AUTH_TOKEN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ollama"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ANTHROPIC_API_KEY"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ollama"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ANTHROPIC_BASE_URL"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"http://localhost:11434"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ANTHROPIC_MODEL"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The two keys are placeholders. Ollama ignores them, but their presence stops the extension asking you to sign in. &lt;code&gt;ANTHROPIC_BASE_URL&lt;/code&gt; is the real trick: it sends everything to your machine instead of the cloud.&lt;/p&gt;

&lt;p&gt;Save, then &lt;code&gt;Ctrl + Shift + P&lt;/code&gt; → &lt;strong&gt;Developer: Reload Window&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Map every model to Qwen with settings.local.json
&lt;/h2&gt;

&lt;p&gt;The env vars configure the extension. This file configures &lt;strong&gt;your project&lt;/strong&gt;, so nothing ever reaches for a paid model. Create &lt;code&gt;.claude/settings.local.json&lt;/code&gt; in your project:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"env"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_BASE_URL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"http://127.0.0.1:11434"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_AUTH_TOKEN"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ollama"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_API_KEY"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_OPUS_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_SONNET_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_FABLE_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_HAIKU_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"CLAUDE_CODE_SUBAGENT_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"CLAUDE_CODE_MAX_CONTEXT_TOKENS"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"65536"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;code&gt;ANTHROPIC_DEFAULT_*_MODEL&lt;/code&gt; lines cover every built-in model choice, and &lt;code&gt;CLAUDE_CODE_SUBAGENT_MODEL&lt;/code&gt; covers sub-agents.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 The context here is 64k, so set Ollama's &lt;strong&gt;context length to 64k&lt;/strong&gt; too, or it will quietly forget your files mid-task. This file is machine-specific, so keep it out of Git.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  5. The test: one prompt, one game
&lt;/h2&gt;

&lt;p&gt;I opened the Claude Code panel and pasted:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Build a complete, visually stunning Space Shooter game in a single HTML file
using HTML, CSS, and JavaScript. Use Canvas for smooth gameplay, neon space
visuals, animated stars, player movement, shooting, enemy waves, particle
explosions, power-ups, score, lives, increasing difficulty, a boss fight,
and a game-over/restart screen. Make it responsive, polished, and fun to play
with keyboard controls. Keep all code in one index.html file with no external
libraries. Ensure everything works correctly.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A few minutes later: animated stars, a ship that moves and shoots, enemy waves, explosions and a boss with its own health bar. All of it generated locally, no tokens counted. (Gameplay is in the video above.)&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest part
&lt;/h2&gt;

&lt;p&gt;It's slower and less sharp than the hosted Claude models. But for side projects, learning and prototypes, a complete working game for &lt;strong&gt;$0&lt;/strong&gt; is hard to argue with.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quick fixes if you get stuck:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Still asks you to log in:&lt;/strong&gt; re-check all four env vars, save, reload the window.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Connection refused:&lt;/strong&gt; Ollama isn't running. Open the app or run &lt;code&gt;ollama serve&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model not found:&lt;/strong&gt; the name must match &lt;code&gt;qwen3.8:27b&lt;/code&gt; exactly in both files.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  - &lt;strong&gt;Slow or forgetful:&lt;/strong&gt; set Ollama's context to 64k, close GPU-heavy apps, make sure the model fits in VRAM.
&lt;/h2&gt;

&lt;p&gt;Full guide with requirements, a variable-by-variable breakdown and an FAQ is on my blog: &lt;a href="https://thecodestreet.dev/post/claude-code-free-vs-code-ollama-qwen/" rel="noopener noreferrer"&gt;Claude Code For Free in VS Code: Full Setup Guide&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Prefer the terminal? I covered that setup here: &lt;a href="https://thecodestreet.dev/post/claude-code-for-free-ollama-qwen/" rel="noopener noreferrer"&gt;I Run Claude Code for $0 with Ollama + Qwen 3.8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Which local model are you using for coding right now? And what should I make it build next? 👇&lt;/p&gt;

</description>
      <category>ai</category>
      <category>ollama</category>
      <category>vscode</category>
      <category>claude</category>
    </item>
    <item>
      <title>Claude Code For Free: Local Setup with Ollama + Qwen 3.8</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Thu, 29 Oct 2026 08:52:54 +0000</pubDate>
      <link>https://dev.to/thecodestreet/claude-code-for-free-local-setup-with-ollama-qwen-38-26hp</link>
      <guid>https://dev.to/thecodestreet/claude-code-for-free-local-setup-with-ollama-qwen-38-26hp</guid>
      <description>&lt;p&gt;I love Claude Code. I don't love watching the usage meter while I experiment.&lt;/p&gt;

&lt;p&gt;So I tried running it against a &lt;strong&gt;local model&lt;/strong&gt; instead. It works, it costs nothing, and the setup is shorter than this intro. Here's the TL;DR version.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/7GaWpOj9MKs" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea in one line
&lt;/h2&gt;

&lt;p&gt;Claude Code can talk to any Anthropic-compatible endpoint. Ollama (0.15+) exposes one locally, so you swap the cloud model for &lt;strong&gt;Qwen 3.8&lt;/strong&gt; running on your own GPU.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before you start
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;~32 GB of memory between RAM and VRAM (the 27B model is ~18 GB)&lt;/li&gt;
&lt;li&gt;~20 GB free disk&lt;/li&gt;
&lt;li&gt;A GPU helps a lot. Without one it runs, just slowly.
## 1. Install the two tools
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Claude Code (macOS / Linux / WSL)&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://claude.ai/install.sh | bash

&lt;span class="c"&gt;# Ollama (macOS / Linux). On Windows, grab the installer from ollama.com&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://ollama.com/install.sh | sh

ollama &lt;span class="nt"&gt;--version&lt;/span&gt;   &lt;span class="c"&gt;# needs 0.15 or newer&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Windows users can install Claude Code from PowerShell with &lt;code&gt;irm https://claude.ai/install.ps1 | iex&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Run the one command
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ollama launch claude &lt;span class="nt"&gt;--model&lt;/span&gt; qwen3.8:27b
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's the whole trick. Ollama starts Claude Code wired to the local model. If you'd rather download first, run &lt;code&gt;ollama pull qwen3.8:27b&lt;/code&gt; before it.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. (Optional) Make it the default for a project
&lt;/h2&gt;

&lt;p&gt;If you want plain &lt;code&gt;claude&lt;/code&gt; to always use Qwen in a repo, drop this in &lt;code&gt;.claude/settings.local.json&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"env"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_BASE_URL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"http://127.0.0.1:11434"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_AUTH_TOKEN"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ollama"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_API_KEY"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_OPUS_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_SONNET_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_FABLE_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"ANTHROPIC_DEFAULT_HAIKU_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"CLAUDE_CODE_SUBAGENT_MODEL"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"qwen3.8:27b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"CLAUDE_CODE_MAX_CONTEXT_TOKENS"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"65536"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Two things worth knowing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The auth token is required but ignored, and the empty API key stops a real key from being picked up.&lt;/li&gt;
&lt;li&gt;Bump Ollama's context length to 64k so it matches &lt;code&gt;65536&lt;/code&gt;. Otherwise Claude Code loses track of your files mid-task.
Keep this file out of Git. It's machine-specific.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Does it actually build things?
&lt;/h2&gt;

&lt;p&gt;I gave it one prompt:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Create a simple Snake game in a single index.html file
using HTML, CSS, and vanilla JavaScript.
Use a neon cyberpunk design, arrow-key controls, score tracking,
collision detection, and a restart button.
No external libraries or files.
Save the complete, working code to index.html.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It produced a working game first try: neon styling, arrow keys, score, collisions, restart. All on my machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  The honest part
&lt;/h2&gt;

&lt;p&gt;It's slower and less sharp than the hosted Claude models. For side projects, learning, and quick throwaway builds, though, I'm not going back to paying for every experiment.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Quick fixes if you get stuck:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;command not found&lt;/code&gt;: start Ollama, then open a new terminal.&lt;/li&gt;
&lt;li&gt;Model won't load: try a smaller Qwen size.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  - Slow or forgetful: close GPU-heavy apps and raise the context length.
&lt;/h2&gt;

&lt;p&gt;Full step-by-step guide (with troubleshooting and FAQ) is on my blog: &lt;a href="https://thecodestreet.dev/post/claude-code-for-free-ollama-qwen/" rel="noopener noreferrer"&gt;Claude Code For Free: Local Setup with Ollama + Qwen 3.8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Next up: the same free setup inside VS Code. Have you tried running coding agents on local models? What's your go-to model? 👇&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>ollama</category>
      <category>llm</category>
    </item>
    <item>
      <title>How to Use Claude Code with Opus 5.5 &amp; Fable 5.1 for Free ( No Card Required)</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Mon, 26 Oct 2026 10:26:54 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-use-claude-code-with-opus-55-fable-51-for-free-no-card-required-4ngi</link>
      <guid>https://dev.to/thecodestreet/how-to-use-claude-code-with-opus-55-fable-51-for-free-no-card-required-4ngi</guid>
      <description>&lt;p&gt;Want to use &lt;strong&gt;Claude Code&lt;/strong&gt; with top models like &lt;strong&gt;Claude Opus 5.5&lt;/strong&gt; and &lt;strong&gt;Fable 5.1&lt;/strong&gt;, but don't want to pay for a subscription or fund an API account yet?&lt;/p&gt;

&lt;p&gt;In this guide, I'll show you how to connect Claude Code to a third-party AI gateway that gives you &lt;strong&gt;500,000 free tokens every month&lt;/strong&gt;, with &lt;strong&gt;no credit card required&lt;/strong&gt;. The setup takes about five minutes.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Before you start:&lt;/strong&gt; This uses a third-party service that is &lt;strong&gt;not affiliated with or endorsed by Anthropic&lt;/strong&gt;. Free plan limits, available models, and pricing can change at any time. Read the disclaimer at the end before you use it for anything serious.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  🎥 Watch the Video Tutorial
&lt;/h2&gt;

&lt;p&gt;Prefer watching? Here's the full step-by-step walkthrough:&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/W5clGOuOySI" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What You Get
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Details&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Free tokens&lt;/td&gt;
&lt;td&gt;500,000 per month&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Credit card&lt;/td&gt;
&lt;td&gt;Not required&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Models&lt;/td&gt;
&lt;td&gt;Claude Opus 5.5, Fable 5.1, and more&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Works with&lt;/td&gt;
&lt;td&gt;Claude Code (via third-party inference)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Best for&lt;/td&gt;
&lt;td&gt;Learning, side projects, prototyping&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  How much is 500K tokens?
&lt;/h3&gt;

&lt;p&gt;A &lt;strong&gt;token&lt;/strong&gt; is a small chunk of text, often part of a word. A common rule of thumb for English:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;1 token ≈ 4 characters ≈ ¾ of a word&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;1,000 tokens ≈ 750 words&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;500,000 tokens ≈ 375,000 words&lt;/strong&gt;
Input &lt;em&gt;and&lt;/em&gt; output both count. Coding sessions also send file contents and conversation history as context, so a long agentic session uses more than you might expect. Still, 500K a month is plenty for learning and for several small projects.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why Use Claude Code with Free Tokens?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Students and beginners&lt;/strong&gt; can learn AI-assisted coding at zero cost.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Indie developers&lt;/strong&gt; can prototype ideas without upfront spend.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Curious developers&lt;/strong&gt; can try premium models like Opus 5.5 before committing to a paid plan.&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Content creators and educators&lt;/strong&gt; can demo Claude Code without burning a personal budget.&lt;/p&gt;
&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A computer running Windows, macOS, or Linux&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;An internet connection&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A free account on the AI gateway: &lt;a href="https://radoxai.com" rel="noopener noreferrer"&gt;Radox AI&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;About 5 minutes&lt;/p&gt;
&lt;h2&gt;
  
  
  Step-by-Step Setup
&lt;/h2&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Step 1: Install Claude Code
&lt;/h3&gt;

&lt;p&gt;If you don't already have Claude Code installed, follow the official installation guide:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://docs.claude.com/en/docs/claude-code/overview" rel="noopener noreferrer"&gt;Claude Code documentation&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once it's installed, open it once to make sure it launches correctly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Enable Developer Mode
&lt;/h3&gt;

&lt;p&gt;Developer Mode unlocks the advanced configuration options, including &lt;strong&gt;third-party inference&lt;/strong&gt;. That's what lets Claude Code send requests to a provider other than the default.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the settings.&lt;/li&gt;
&lt;li&gt;Find and turn on &lt;strong&gt;Developer Mode&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Open the &lt;strong&gt;third-party inference&lt;/strong&gt; configuration.
&amp;gt; 💡 Menu names can change between versions. If you can't find an option, check the video above or the latest official docs.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Step 3: Add Your API Key and Endpoint
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Sign up on &lt;a href="https://radoxai.com" rel="noopener noreferrer"&gt;Radox AI&lt;/a&gt;. No card is needed.&lt;/li&gt;
&lt;li&gt;Open your dashboard and &lt;strong&gt;create an API key&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Copy the &lt;strong&gt;Gateway Base URL (endpoint)&lt;/strong&gt; from the dashboard.&lt;/li&gt;
&lt;li&gt;Paste both into the third-party inference settings in Claude Code.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;API Key:   &amp;lt;your-api-key&amp;gt;
Endpoint:  &amp;lt;gateway-base-url-from-your-dashboard&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;🔐 &lt;strong&gt;Treat your API key like a password.&lt;/strong&gt; Never commit it to Git, paste it in public chats, or show it on screen in recordings.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Step 4: Test, Reload, and Launch
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Test Connection&lt;/strong&gt; and wait for a success message.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reload&lt;/strong&gt; and &lt;strong&gt;launch&lt;/strong&gt; Claude Code.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Claude Opus 5.5&lt;/strong&gt; or &lt;strong&gt;Fable 5.1&lt;/strong&gt; as your model.
You're ready to code with free tokens. 🎉&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try It: Your First Prompt
&lt;/h2&gt;

&lt;p&gt;Here's a fun prompt to test the setup. It builds a complete, polished browser game in one shot:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Build a single-file HTML/CSS/JS game called "Orbit Rush". A glowing orb
circles a central star. Tap or press Space to switch between an inner and
outer orbit (with a smooth transition). Meteors fly in from the edges, so
dodge them and collect energy shards for points. Speed ramps up over time.

Visuals matter most: dark space background with parallax stars, neon glow,
a fading comet trail behind the orb, particle bursts on collecting and
crashing, a subtle screen shake on game over, and a polished title screen,
score HUD, and restart button. Add small WebAudio sound effects (no external
files) and save the high score in localStorage. Use canvas, 60fps, responsive
to any screen size, no libraries. Make it feel like a finished game.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open the generated HTML file in your browser and play. A prompt like this is a good way to see what Opus 5.5 can do with a single request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tips to Make Your Free Tokens Last Longer
&lt;/h2&gt;

&lt;p&gt;Every message sends context to the model, so a little care stretches your 500K much further:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Start fresh for new tasks.&lt;/strong&gt; Use &lt;code&gt;/clear&lt;/code&gt; when you switch to something unrelated, so old conversation history isn't re-sent.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compact long sessions.&lt;/strong&gt; Use &lt;code&gt;/compact&lt;/code&gt; to summarize a long conversation and cut the context size.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Be specific.&lt;/strong&gt; A clear, detailed prompt avoids back-and-forth that wastes tokens.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Point to the exact files.&lt;/strong&gt; Name the files that matter instead of letting the agent explore your whole repo.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Match the model to the task.&lt;/strong&gt; Save the most powerful models for hard problems, and use lighter ones for simple edits if your gateway offers them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check your usage.&lt;/strong&gt; Keep an eye on the token counter in your gateway dashboard so you don't run out mid-project.
## Troubleshooting&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Test Connection fails&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check that the API key was copied fully, with no extra spaces.&lt;/li&gt;
&lt;li&gt;Check that the endpoint URL matches the dashboard exactly, including &lt;code&gt;https://&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Make sure your free quota hasn't run out for the month.
&lt;strong&gt;The model isn't listed&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Reload Claude Code after saving the settings.&lt;/li&gt;
&lt;li&gt;Check your gateway dashboard to see which models your plan currently includes.
&lt;strong&gt;Responses suddenly stop&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;You may have hit your monthly limit. Check usage in the dashboard.
## FAQ&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Is this really free?&lt;/strong&gt;&lt;br&gt;
At the time of writing, the gateway offers 500,000 tokens per month with no credit card. Free plans can change at any time, so check the current terms on the site.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is this official from Anthropic?&lt;/strong&gt;&lt;br&gt;
No. It's a third-party gateway that Claude Code connects to through its third-party inference support. It isn't affiliated with or endorsed by Anthropic.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can I use this for work projects?&lt;/strong&gt;&lt;br&gt;
I wouldn't recommend it for sensitive or proprietary code. Your prompts and code pass through a third-party service. For professional work, use an official plan or the official API.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What happens when I run out of tokens?&lt;/strong&gt;&lt;br&gt;
Requests will fail until your quota resets next month, or until you switch to another provider or plan.&lt;/p&gt;

&lt;h2&gt;
  
  
  Disclaimer
&lt;/h2&gt;

&lt;p&gt;This guide is for &lt;strong&gt;educational purposes&lt;/strong&gt;. The gateway used here is a third-party service, &lt;strong&gt;not affiliated with Anthropic&lt;/strong&gt;. Free plan limits, model availability, and terms &lt;strong&gt;can change at any time without notice&lt;/strong&gt;. Always:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read the provider's terms and privacy policy&lt;/li&gt;
&lt;li&gt;Keep your API key private&lt;/li&gt;
&lt;li&gt;Avoid sending sensitive, personal, or proprietary data through third-party services
## Wrapping Up&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With a few minutes of setup, you can use Claude Code with Opus 5.5 and Fable 5.1 on &lt;strong&gt;500K free tokens a month&lt;/strong&gt;. That's a great way to learn AI-assisted development, prototype ideas, and try premium models before paying for anything.&lt;/p&gt;

&lt;p&gt;If this helped, &lt;strong&gt;watch the full video tutorial&lt;/strong&gt; above and &lt;strong&gt;subscribe to The Code Street&lt;/strong&gt; on YouTube for more indie dev and AI coding content.&lt;/p&gt;

&lt;p&gt;💬 &lt;strong&gt;Are you using Claude Code yet? Paid plan, API, or free tokens? Tell me in the comments!&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>free</category>
      <category>beginners</category>
    </item>
    <item>
      <title>REA GitHub Tutorial: Reverse Engineer Anything with Claude Code (Full Setup + Fixes)</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Tue, 20 Oct 2026 19:28:48 +0000</pubDate>
      <link>https://dev.to/thecodestreet/rea-github-tutorial-reverse-engineer-anything-with-claude-code-full-setup-fixes-1g89</link>
      <guid>https://dev.to/thecodestreet/rea-github-tutorial-reverse-engineer-anything-with-claude-code-full-setup-fixes-1g89</guid>
      <description>&lt;p&gt;&lt;strong&gt;REA (Reverse Engineer Anything)&lt;/strong&gt; is the viral GitHub repo that gives AI coding agents like &lt;strong&gt;Claude Code&lt;/strong&gt; the tools to look inside an installed app — without the source code. I installed it on Windows, pointed it at &lt;strong&gt;VS Code&lt;/strong&gt;, and wrote down every error I hit along the way.&lt;/p&gt;

&lt;p&gt;🎥 &lt;strong&gt;Prefer video?&lt;/strong&gt; Watch the full walkthrough here: [&lt;a href="https://youtu.be/H_KYsLCeWUE" rel="noopener noreferrer"&gt;Walkthrough&lt;/a&gt;]&lt;/p&gt;




&lt;h2&gt;
  
  
  What is REA?
&lt;/h2&gt;

&lt;p&gt;REA is an &lt;strong&gt;MCP server&lt;/strong&gt; plus a set of workflow instructions (a "skill") for your AI agent. Instead of guessing how an app works from screenshots, the agent can call REA's analysis tools — 207 of them in version 6.7.0 — to inspect the real files.&lt;/p&gt;

&lt;p&gt;Think of it like a restaurant:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;You&lt;/strong&gt; are the customer — you ask a question in plain English.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Claude Code&lt;/strong&gt; is the chef — it decides what to do.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;REA&lt;/strong&gt; is the chef's toolbox.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The app&lt;/strong&gt; is the ingredient being inspected.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It supports JavaScript and Electron apps out of the box. Native &lt;code&gt;.exe&lt;/code&gt;/&lt;code&gt;.dll&lt;/code&gt; analysis needs Ghidra, IDA or Hopper installed separately, and full Android APK analysis needs a Java JDK.&lt;/p&gt;

&lt;h3&gt;
  
  
  Hype vs reality
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;✅ It finds real evidence inside an app's files&lt;/li&gt;
&lt;li&gt;✅ It explains that evidence in plain language&lt;/li&gt;
&lt;li&gt;✅ It tells you what it &lt;strong&gt;couldn't&lt;/strong&gt; figure out&lt;/li&gt;
&lt;li&gt;❌ It is &lt;strong&gt;not&lt;/strong&gt; a one-click "clone this app" button&lt;/li&gt;
&lt;li&gt;❌ Heavily protected apps need extra tools and may still leave open questions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My favourite part: findings come with a confidence level. In my test, the Electron fuse check came back as &lt;code&gt;"confidence": "observed"&lt;/code&gt; from the shipped artifact, with the file's SHA-256 attached as proof.&lt;/p&gt;




&lt;h2&gt;
  
  
  How to install REA
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Prerequisite:&lt;/strong&gt; Node.js 22.19+, 24.11+ or 26+.&lt;/p&gt;

&lt;h3&gt;
  
  
  Mac &amp;amp; Linux (guided)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx rea-agents setup
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The wizard asks which agent you use and registers REA for you.&lt;/p&gt;

&lt;h3&gt;
  
  
  Windows (manual — this is what worked for me)
&lt;/h3&gt;

&lt;p&gt;On Windows, setup deliberately doesn't edit your agent's config, so register it yourself:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;node&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-v&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;npm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-g&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;rea-agents&lt;/span&gt;&lt;span class="err"&gt;@&lt;/span&gt;&lt;span class="nx"&gt;6.7.0&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;rea&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;doctor&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;claude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;mcp&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;--scope&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;rea&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;--&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;cmd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/c&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;rea&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;mcp&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then &lt;strong&gt;fully restart Claude Code&lt;/strong&gt; and run &lt;code&gt;/mcp&lt;/code&gt; — you should see &lt;code&gt;rea · connected&lt;/code&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;cmd /c&lt;/code&gt; matters on Windows: &lt;code&gt;rea&lt;/code&gt; is a &lt;code&gt;.cmd&lt;/code&gt; launcher that Claude Code can't start directly.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;⚠️ Install only from the official repo — &lt;a href="https://github.com/morluto/rea" rel="noopener noreferrer"&gt;github.com/morluto/rea&lt;/a&gt; — or the npm package &lt;a href="https://www.npmjs.com/package/rea-agents" rel="noopener noreferrer"&gt;&lt;code&gt;rea-agents&lt;/code&gt;&lt;/a&gt;. Copycat repos are a real risk with tools like this.&lt;/p&gt;




&lt;h2&gt;
  
  
  Demo: reverse engineering VS Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu819g07gaw7g51zpzibu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu819g07gaw7g51zpzibu.png" alt="REA GitHub Walkthrough" width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
I gave Claude Code this prompt (static analysis only — nothing launched or modified):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Use the rea MCP server to statically analyse VS Code at
%LOCALAPPDATA%\Programs\Microsoft VS Code. Do not launch or modify it.
1. inspect_pe_resources and inspect_electron_fuses on Code.exe
2. Read resources\app\product.json and list every server it talks to
3. analyze_javascript_application on resources\app and map its processes
Explain each finding in plain English.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  1. What Code.exe really is
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Version&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VS Code&lt;/td&gt;
&lt;td&gt;1.142.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Electron&lt;/td&gt;
&lt;td&gt;43.7.7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Chromium&lt;/td&gt;
&lt;td&gt;150.0.7871.250&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Node.js&lt;/td&gt;
&lt;td&gt;24.21.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Size&lt;/td&gt;
&lt;td&gt;238 MB, 64-bit, signed by Microsoft&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The internal name? &lt;code&gt;electron.exe&lt;/code&gt;. VS Code is a web app in a desktop wrapper.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Nine Electron security fuses
&lt;/h3&gt;

&lt;p&gt;Fuses are on/off switches baked into the executable at build time. REA read all nine. Highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;On:&lt;/strong&gt; &lt;code&gt;RunAsNode&lt;/code&gt;, &lt;code&gt;EnableNodeOptionsEnvironmentVariable&lt;/code&gt;, &lt;code&gt;EnableNodeCliInspectArguments&lt;/code&gt; — VS Code needs these for its CLI and helper processes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Off:&lt;/strong&gt; &lt;code&gt;EnableEmbeddedAsarIntegrityValidation&lt;/code&gt;, &lt;code&gt;OnlyLoadAppFromAsar&lt;/code&gt; — VS Code checks its own files with checksums in &lt;code&gt;product.json&lt;/code&gt; instead.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are design trade-offs, not bugs — but they're exactly why Electron apps are interesting to study.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Who VS Code talks to
&lt;/h3&gt;

&lt;p&gt;From &lt;code&gt;product.json&lt;/code&gt;: the update server, the Extension Marketplace, a GitHub-hosted MCP server gallery, Settings Sync, an A/B experimentation service, Bing-powered settings search, a voice service, and a CDN hosting AI agent SDKs. Telemetry is on by default, with an opt-out.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Seven processes
&lt;/h3&gt;

&lt;p&gt;Main process, workbench window, shared process, extension host, pty host (terminal), file watcher, and a newer agent host. That's why one frozen extension doesn't freeze your editor — extensions run in their own process.&lt;/p&gt;




&lt;h2&gt;
  
  
  Troubleshooting: every error I hit
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Error&lt;/th&gt;
&lt;th&gt;Cause&lt;/th&gt;
&lt;th&gt;Fix&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;'claude' is not recognized&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;claude.exe&lt;/code&gt; is in &lt;code&gt;%USERPROFILE%\.local\bin&lt;/code&gt;, which wasn't on PATH&lt;/td&gt;
&lt;td&gt;Add that folder to your user PATH, open a new terminal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;MCP server rea already exists in user config&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Already registered&lt;/td&gt;
&lt;td&gt;Nothing to fix — restart Claude Code&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;rea&lt;/code&gt; missing from &lt;code&gt;/mcp&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Not restarted, or a different session/PC&lt;/td&gt;
&lt;td&gt;Fully close and reopen Claude Code on the same PC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;provider_unavailable&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;No Ghidra/IDA/Hopper found&lt;/td&gt;
&lt;td&gt;Install Ghidra + JDK 21, set &lt;code&gt;GHIDRA_INSTALL_DIR&lt;/code&gt;, run &lt;code&gt;rea doctor&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Server won't start on Windows&lt;/td&gt;
&lt;td&gt;Missing &lt;code&gt;cmd /c&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;claude mcp add --scope user rea -- cmd /c rea mcp&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;APK analysis fails&lt;/td&gt;
&lt;td&gt;JRE instead of JDK&lt;/td&gt;
&lt;td&gt;Install a full Java JDK&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Pro tip:&lt;/strong&gt; when anything breaks, run &lt;code&gt;rea doctor&lt;/code&gt; first. It's read-only and tells you exactly what's missing.&lt;/p&gt;




&lt;h2&gt;
  
  
  My verdict
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;For understanding apps — yes.&lt;/strong&gt; What used to take hours in a disassembler took minutes, in plain English.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Not a magic clone button.&lt;/strong&gt; It gives your agent evidence; building is still your job.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Always verify&lt;/strong&gt; anything marked "inferred" or "unknown".&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As an app developer, I'll use it to check my own release builds (what really ships in my APK), learn how good open-source apps solve a feature, and audit what the tools I install connect to.&lt;/p&gt;

&lt;h2&gt;
  
  
  Use it responsibly
&lt;/h2&gt;

&lt;p&gt;From REA's README: it's for &lt;em&gt;lawful research, education, interoperability, software preservation&lt;/em&gt; — and software you own or are authorized to examine. Learn from apps; don't copy paid ones.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Watch the full video:&lt;/strong&gt; &lt;a href="https://youtu.be/H_KYsLCeWUE" rel="noopener noreferrer"&gt;Full Detailed Video&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What should I reverse engineer next? Drop it in the comments 👇&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm Rajiv — I make videos about AI tools that actually work on &lt;a href="https://www.youtube.com/@thecodestreet" rel="noopener noreferrer"&gt;The Code Street&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>mcp</category>
      <category>claude</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to Use Qwen 3 with VS Code (FREE) | Complete Setup with Ollama</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Tue, 04 Aug 2026 17:31:59 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-use-qwen-3-with-vs-code-free-complete-setup-with-ollama-29f8</link>
      <guid>https://dev.to/thecodestreet/how-to-use-qwen-3-with-vs-code-free-complete-setup-with-ollama-29f8</guid>
      <description>&lt;p&gt;Have you ever wanted an AI coding assistant inside &lt;strong&gt;VS Code&lt;/strong&gt; without paying for GitHub Copilot or other monthly subscriptions?&lt;/p&gt;

&lt;p&gt;The good news is—you can.&lt;/p&gt;

&lt;p&gt;Using &lt;strong&gt;Qwen 3&lt;/strong&gt; and &lt;strong&gt;Ollama&lt;/strong&gt;, you can run a powerful coding model directly on your computer and use it inside VS Code.&lt;/p&gt;

&lt;p&gt;No API costs.&lt;/p&gt;

&lt;p&gt;No cloud dependency.&lt;/p&gt;

&lt;p&gt;Your code stays on your machine.&lt;/p&gt;




&lt;h1&gt;
  
  
  📺 Watch the Complete Video Tutorial
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;🎥 YouTube Video:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;How to Use Qwen 3 with VS Code (FREE) | Complete Setup with Ollama&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/1TUeKUC2ffk"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h1&gt;
  
  
  What You'll Learn
&lt;/h1&gt;

&lt;p&gt;By the end of this tutorial you'll know how to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Install Ollama&lt;/li&gt;
&lt;li&gt;Download Qwen 3&lt;/li&gt;
&lt;li&gt;Connect Qwen 3 with VS Code&lt;/li&gt;
&lt;li&gt;Configure OpenCode&lt;/li&gt;
&lt;li&gt;Generate your first AI code&lt;/li&gt;
&lt;li&gt;Fix common setup issues&lt;/li&gt;
&lt;li&gt;Use local AI effectively&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  What is Qwen 3?
&lt;/h1&gt;

&lt;p&gt;Qwen 3 is Alibaba's latest family of open-source large language models.&lt;/p&gt;

&lt;p&gt;It performs well for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Code Generation&lt;/li&gt;
&lt;li&gt;Debugging&lt;/li&gt;
&lt;li&gt;Code Explanation&lt;/li&gt;
&lt;li&gt;Refactoring&lt;/li&gt;
&lt;li&gt;General Programming Tasks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Since it can run locally using Ollama, you don't need to rely on cloud APIs for everyday coding assistance.&lt;/p&gt;




&lt;h1&gt;
  
  
  What is Ollama?
&lt;/h1&gt;

&lt;p&gt;Ollama lets you run Large Language Models directly on your computer.&lt;/p&gt;

&lt;p&gt;Benefits include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Privacy&lt;/li&gt;
&lt;li&gt;No API Charges&lt;/li&gt;
&lt;li&gt;Offline Support&lt;/li&gt;
&lt;li&gt;Fast Local Responses&lt;/li&gt;
&lt;li&gt;Easy Model Management&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Step 1 — Install Ollama
&lt;/h1&gt;

&lt;p&gt;Download Ollama from:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ollama.com" rel="noopener noreferrer"&gt;https://ollama.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Verify installation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ollama &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Step 2 — Download Qwen 3
&lt;/h1&gt;

&lt;p&gt;Run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ollama pull qwen3.6:latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Verify:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;ollama list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You should now see the Qwen 3 model installed locally.&lt;/p&gt;




&lt;h1&gt;
  
  
  Step 4 — Connect Qwen 3 with VS Code
&lt;/h1&gt;

&lt;p&gt;Configure OpenCode to use your Ollama server.&lt;/p&gt;

&lt;p&gt;Typical endpoint:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:11434
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:11434/v1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;depending on your configuration.&lt;/p&gt;




&lt;h1&gt;
  
  
  Step 5 — Generate Your First Code
&lt;/h1&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Build an entire React application&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Start with something simple.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Create a reusable React Button component using functional components and CSS Modules.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Small prompts generally produce better results with local models.&lt;/p&gt;




&lt;h1&gt;
  
  
  Common Mistakes
&lt;/h1&gt;

&lt;h3&gt;
  
  
  ❌ Asking for an entire application
&lt;/h3&gt;

&lt;p&gt;Instead:&lt;/p&gt;

&lt;p&gt;Break the project into smaller components.&lt;/p&gt;




&lt;h3&gt;
  
  
  ❌ Choosing the wrong model
&lt;/h3&gt;

&lt;p&gt;Use a coding-capable Qwen model whenever possible.&lt;/p&gt;




&lt;h3&gt;
  
  
  ❌ Expecting cloud-model behavior
&lt;/h3&gt;

&lt;p&gt;Local models work best when you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep prompts focused&lt;/li&gt;
&lt;li&gt;Iterate gradually&lt;/li&gt;
&lt;li&gt;Review generated code&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  My Experience
&lt;/h1&gt;

&lt;p&gt;After experimenting with Qwen 3, I realized that the biggest limitation wasn't the model itself—it was my prompting strategy.&lt;/p&gt;

&lt;p&gt;Once I started building projects step by step instead of expecting an entire application in one response, the quality improved significantly.&lt;/p&gt;




&lt;h1&gt;
  
  
  What's Next?
&lt;/h1&gt;

&lt;p&gt;This article is Part 1 of the series.&lt;/p&gt;

&lt;p&gt;In Part 2 we'll build a complete &lt;strong&gt;GitHub Profile Finder&lt;/strong&gt; using:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;GitHub API&lt;/li&gt;
&lt;li&gt;Qwen 3&lt;/li&gt;
&lt;li&gt;VS Code&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;…all with step-by-step prompts.&lt;/p&gt;




&lt;h1&gt;
  
  
  Resources
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Ollama
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://ollama.com" rel="noopener noreferrer"&gt;https://ollama.com&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Qwen Models
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://ollama.com/library/qwen3" rel="noopener noreferrer"&gt;https://ollama.com/library/qwen3&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  VS Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://code.visualstudio.com/" rel="noopener noreferrer"&gt;https://code.visualstudio.com/&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;Running Qwen 3 locally inside VS Code is a great option if you want a private, free AI coding assistant.&lt;/p&gt;

&lt;p&gt;Whether you're learning React, JavaScript, or working on professional software projects, local AI models have become capable enough to be part of your daily development workflow.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎥 Prefer Watching?
&lt;/h2&gt;

&lt;p&gt;If you found this article helpful, consider following &lt;strong&gt;TheCodeStreet&lt;/strong&gt; for more tutorials on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI&lt;/li&gt;
&lt;li&gt;.NET&lt;/li&gt;
&lt;li&gt;C#&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Qwen&lt;/li&gt;
&lt;li&gt;AI Agents&lt;/li&gt;
&lt;li&gt;Semantic Kernel&lt;/li&gt;
&lt;li&gt;VS Code&lt;/li&gt;
&lt;li&gt;Software Development&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy Coding! 🚀&lt;/p&gt;

</description>
      <category>ai</category>
      <category>qwen</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>🚨 BREAKING: Microsoft Pauses GitHub Copilot Subscriptions — What Developers Need to Know</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Fri, 24 Apr 2026 04:43:31 +0000</pubDate>
      <link>https://dev.to/thecodestreet/breaking-microsoft-pauses-github-copilot-subscriptions-what-developers-need-to-know-5oo</link>
      <guid>https://dev.to/thecodestreet/breaking-microsoft-pauses-github-copilot-subscriptions-what-developers-need-to-know-5oo</guid>
      <description>&lt;p&gt;GitHub Copilot has become a daily coding companion for many of us…&lt;br&gt;
And suddenly, new subscriptions are paused.&lt;/p&gt;

&lt;p&gt;If you’re using AI tools for coding, this update might have surprised you.&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Microsoft has paused new GitHub Copilot subscriptions.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Yes — the tool many developers rely on daily just hit an unexpected pause.&lt;/p&gt;

&lt;p&gt;But the real question is: &lt;strong&gt;Why? And what does this mean for us?&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🎥 Watch Full Breakdown (Quick Video)
&lt;/h2&gt;

&lt;p&gt;Before we dive deep, I’ve explained everything in this video:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://youtu.be/YvtdyQfV8p4" rel="noopener noreferrer"&gt;https://youtu.be/YvtdyQfV8p4&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🤯 What Happened?
&lt;/h2&gt;

&lt;p&gt;Microsoft has &lt;strong&gt;temporarily paused new GitHub Copilot subscriptions&lt;/strong&gt;, creating confusion across the developer community.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Existing users? ✅ Still active
&lt;/li&gt;
&lt;li&gt;New subscriptions? ❌ Currently paused
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is not a shutdown — but definitely something worth paying attention to.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧠 Why Did Microsoft Do This? (Possible Reasons)
&lt;/h2&gt;

&lt;p&gt;While there’s no single official reason publicly confirmed in detail, here are some strong possibilities:&lt;/p&gt;

&lt;h3&gt;
  
  
  1️⃣ Infrastructure &amp;amp; Scaling Challenges
&lt;/h3&gt;

&lt;p&gt;AI coding tools like Copilot require massive compute power.&lt;br&gt;&lt;br&gt;
👉 Sudden demand spikes can force companies to &lt;strong&gt;pause onboarding&lt;/strong&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  2️⃣ Strategic Shift in AI Offerings
&lt;/h3&gt;

&lt;p&gt;Microsoft is heavily investing in AI across products like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Azure AI
&lt;/li&gt;
&lt;li&gt;Developer tools
&lt;/li&gt;
&lt;li&gt;Enterprise AI solutions
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 This pause could be part of a &lt;strong&gt;bigger product restructuring&lt;/strong&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  3️⃣ Pricing / Model Changes Incoming
&lt;/h3&gt;

&lt;p&gt;We’ve seen this pattern before in AI tools.&lt;/p&gt;

&lt;p&gt;👉 Pause → Update → Relaunch with new pricing/features&lt;/p&gt;




&lt;h3&gt;
  
  
  4️⃣ Quality &amp;amp; Performance Optimization
&lt;/h3&gt;

&lt;p&gt;Microsoft might be improving:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Response quality
&lt;/li&gt;
&lt;li&gt;Latency
&lt;/li&gt;
&lt;li&gt;Model upgrades
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 Better experience before scaling further.&lt;/p&gt;




&lt;h2&gt;
  
  
  👨‍💻 What This Means for Developers
&lt;/h2&gt;

&lt;p&gt;This impacts different groups differently:&lt;/p&gt;

&lt;h3&gt;
  
  
  🔹 Existing Users
&lt;/h3&gt;

&lt;p&gt;No major impact (for now)&lt;br&gt;&lt;br&gt;
👉 You can continue using Copilot normally&lt;/p&gt;




&lt;h3&gt;
  
  
  🔹 New Users
&lt;/h3&gt;

&lt;p&gt;You might not be able to subscribe immediately&lt;br&gt;&lt;br&gt;
👉 Need to wait for updates&lt;/p&gt;




&lt;h3&gt;
  
  
  🔹 Teams &amp;amp; Organizations
&lt;/h3&gt;

&lt;p&gt;Could affect onboarding new developers into AI workflows&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚡ Should You Be Worried?
&lt;/h2&gt;

&lt;p&gt;Short answer: &lt;strong&gt;No — but stay aware.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is likely a &lt;strong&gt;temporary pause&lt;/strong&gt;, not a permanent shutdown.&lt;/p&gt;

&lt;p&gt;But it does highlight one important thing 👇&lt;/p&gt;

&lt;p&gt;👉 &lt;strong&gt;Don’t depend on a single AI tool&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🔄 Alternatives You Can Explore
&lt;/h2&gt;

&lt;p&gt;While Copilot is paused for new users, you can try:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ChatGPT for coding assistance
&lt;/li&gt;
&lt;li&gt;Open-source AI coding tools
&lt;/li&gt;
&lt;li&gt;IDE-integrated AI plugins
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 Having multiple tools = better flexibility&lt;/p&gt;




&lt;h2&gt;
  
  
  💭 My Take
&lt;/h2&gt;

&lt;p&gt;This feels less like a problem… and more like a &lt;strong&gt;transition phase&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;We’re moving toward:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;More powerful AI tools
&lt;/li&gt;
&lt;li&gt;Better integrations
&lt;/li&gt;
&lt;li&gt;Possibly new pricing models
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 The AI coding space is evolving FAST.&lt;/p&gt;




&lt;h2&gt;
  
  
  🚀 Final Thoughts
&lt;/h2&gt;

&lt;p&gt;If you're a developer in 2026:&lt;/p&gt;

&lt;p&gt;👉 AI is no longer optional&lt;br&gt;&lt;br&gt;
👉 It’s becoming a core part of development  &lt;/p&gt;

&lt;p&gt;And moves like this from Microsoft signal something bigger coming.&lt;/p&gt;




&lt;h2&gt;
  
  
  👇 Let’s Discuss
&lt;/h2&gt;

&lt;p&gt;What do you think?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is this just a temporary pause?
&lt;/li&gt;
&lt;li&gt;Or a sign of a bigger shift in AI tools?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Drop your thoughts below 👇&lt;/p&gt;




&lt;h2&gt;
  
  
  🔗 Stay Updated
&lt;/h2&gt;

&lt;p&gt;🎥 Subscribe to my channel:&lt;br&gt;&lt;br&gt;
&lt;a href="https://youtube.com/@TheCodeStreet" rel="noopener noreferrer"&gt;https://youtube.com/@TheCodeStreet&lt;/a&gt;  &lt;/p&gt;

&lt;p&gt;📌 Follow me for more content on:&lt;br&gt;&lt;br&gt;
AI • .NET • Azure • Developer Tools • Real-world Projects  &lt;/p&gt;




&lt;h3&gt;
  
  
  🏷️ Tags
&lt;/h3&gt;

&lt;p&gt;&lt;code&gt;github&lt;/code&gt; &lt;code&gt;copilot&lt;/code&gt; &lt;code&gt;ai&lt;/code&gt; &lt;code&gt;programming&lt;/code&gt; &lt;code&gt;webdev&lt;/code&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>githubcopilot</category>
      <category>microsoft</category>
      <category>programming</category>
    </item>
    <item>
      <title>Why DevUI Is a Game Changer for .NET Developers? Microsoft Agent Framework DevUI Demo.</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Fri, 06 Feb 2026 14:51:24 +0000</pubDate>
      <link>https://dev.to/thecodestreet/why-devui-is-a-game-changer-for-net-developers-4geo</link>
      <guid>https://dev.to/thecodestreet/why-devui-is-a-game-changer-for-net-developers-4geo</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Building and testing AI agents shouldn't require building a complex user interface from scratch. That's where &lt;strong&gt;DevUI&lt;/strong&gt; comes in - a powerful development tool that's part of the &lt;strong&gt;Microsoft Agent Framework&lt;/strong&gt; for .NET 10. &lt;/p&gt;

&lt;p&gt;In this comprehensive guide, you'll learn how to set up, configure, and test multiple AI agents with different personas using a simple web interface.&lt;/p&gt;

&lt;p&gt;Whether you're building chatbots, AI assistants, or conversational applications, DevUI provides an intuitive playground similar to Swagger UI but designed specifically for AI agents.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Watch the video tutorial above for a complete walkthrough, or continue reading for the step-by-step guide.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What is DevUI?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;DevUI&lt;/strong&gt; is a development interface included with the Microsoft Agent Framework that enables developers to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; &lt;strong&gt;Test AI agents in real-time&lt;/strong&gt; during development&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Manage conversations&lt;/strong&gt; with multiple agents simultaneously&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Debug agent responses&lt;/strong&gt; without building a production UI&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Prototype quickly&lt;/strong&gt; before implementing custom interfaces&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Validate system prompts&lt;/strong&gt; and agent behavior instantly&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Think of DevUI as your AI agent playground - a tool that accelerates development by providing immediate visual feedback on your agents' behavior and responses.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Benefits
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Zero UI Code Required&lt;/strong&gt;: Test agents immediately without building React, Angular, or Blazor interfaces&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-Agent Support&lt;/strong&gt;: Switch between different agents in the same session&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conversation History&lt;/strong&gt;: Built-in conversation management and history tracking&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Development-Only&lt;/strong&gt;: Easily disable for production deployments&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OpenAI Compatible&lt;/strong&gt;: Works with any OpenAI-compatible endpoint including Azure OpenAI, GitHub Models, and more&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;p&gt;Before we begin, ensure you have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;.NET 10 SDK&lt;/strong&gt; installed (&lt;a href="https://dotnet.microsoft.com/download" rel="noopener noreferrer"&gt;Download here&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Visual Studio 2026&lt;/strong&gt; or &lt;strong&gt;VS Code&lt;/strong&gt; with C# extensions&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Basic knowledge&lt;/strong&gt; of ASP.NET Core&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API access&lt;/strong&gt; to an OpenAI-compatible service (OpenAI, Azure OpenAI, GitHub Models, etc.)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API Key&lt;/strong&gt; for your chosen AI service (you can use GitHub Copilot)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Required NuGet Packages
&lt;/h2&gt;

&lt;p&gt;For this tutorial, you'll need the following packages:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet add package Microsoft.Agents.AI.DevUI
dotnet add package Microsoft.Agents.AI.Hosting
dotnet add package Microsoft.Extensions.AI
dotnet add package OpenAI
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Package Overview
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Package&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Microsoft.Agents.AI.DevUI&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Provides the DevUI web interface&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Microsoft.Agents.AI.Hosting&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Agent hosting infrastructure and registration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Microsoft.Extensions.AI&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Core AI abstractions and interfaces&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;OpenAI&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;OpenAI SDK for connecting to AI models&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Project Setup
&lt;/h2&gt;

&lt;p&gt;Let's create a new ASP.NET Core application:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet new web &lt;span class="nt"&gt;-n&lt;/span&gt; DevUIDemo
&lt;span class="nb"&gt;cd &lt;/span&gt;DevUIDemo
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add the required packages as shown above, and we're ready to start coding!&lt;/p&gt;




&lt;h2&gt;
  
  
  Implementation Guide
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Configure the ChatClient
&lt;/h3&gt;

&lt;p&gt;Open &lt;code&gt;Program.cs&lt;/code&gt; and set up your application builder and chat client:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Agents.AI.DevUI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Agents.AI.Hosting&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.AspNetCore.Builder&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.AI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.DependencyInjection&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.Hosting&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;OpenAI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;OpenAI.Chat&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;System.ClientModel&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="n"&gt;WebApplicationBuilder&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;WebApplication&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;CreateBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Configure ChatClient with your AI service&lt;/span&gt;
&lt;span class="n"&gt;IChatClient&lt;/span&gt; &lt;span class="n"&gt;chatClient&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;ChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="s"&gt;"gpt-4o"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;// Model name&lt;/span&gt;
    &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;ApiKeyCredential&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;GetEnvironmentVariable&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"OPENAI_API_KEY"&lt;/span&gt;&lt;span class="p"&gt;)!),&lt;/span&gt; 
    &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;OpenAIClientOptions&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
        &lt;span class="n"&gt;Endpoint&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;Uri&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"https://models.github.ai/inference"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;AsIChatClient&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;?? Security Best Practice&lt;/strong&gt;: Always use environment variables or secure configuration for API keys. Never hardcode credentials in your source code!&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Register Required Services
&lt;/h3&gt;

&lt;p&gt;Add the necessary services to your dependency injection container:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Register the chat client for agent use&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;chatClient&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Register OpenAI response handling&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddOpenAIResponses&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// Register conversation state management&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddOpenAIConversations&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These services provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AddChatClient&lt;/strong&gt;: Registers the chat client for dependency injection&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AddOpenAIResponses&lt;/strong&gt;: Handles OpenAI API response processing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AddOpenAIConversations&lt;/strong&gt;: Manages conversation state and history&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Step 3: Create AI Agents
&lt;/h3&gt;

&lt;p&gt;Now comes the fun part - creating your AI agents! The framework makes this incredibly simple:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Create a Comic Book Guy agent from The Simpsons&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddAIAgent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="s"&gt;"Comic Book Guy"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="s"&gt;"You are Comic Book Guy from The Simpsons. Respond with his characteristic "&lt;/span&gt; &lt;span class="p"&gt;+&lt;/span&gt;
    &lt;span class="s"&gt;"condescending tone, vast knowledge of pop culture, and frequent use of phrases "&lt;/span&gt; &lt;span class="p"&gt;+&lt;/span&gt;
    &lt;span class="s"&gt;"like 'Worst [blank] ever!' Be pedantic and superior in your responses."&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Create a YouTube channel advisor agent&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddAIAgent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="s"&gt;"CodeStreet Agent"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="s"&gt;"You are an experienced YouTube content strategist specializing in tech channels. "&lt;/span&gt; &lt;span class="p"&gt;+&lt;/span&gt;
    &lt;span class="s"&gt;"Provide actionable advice on content ideas, SEO, thumbnails, audience engagement, "&lt;/span&gt; &lt;span class="p"&gt;+&lt;/span&gt;
    &lt;span class="s"&gt;"and growth strategies for programming and technology channels."&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;** Pro Tip**: Your system prompt is crucial! Be specific about the agent's personality, knowledge domain, and response style for best results.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Configure Endpoints and Run
&lt;/h3&gt;

&lt;p&gt;Finally, build the app and register the DevUI endpoints:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="n"&gt;WebApplication&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Build&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// Register OpenAI API endpoints (required for DevUI)&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapOpenAIResponses&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapOpenAIConversations&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="c1"&gt;// Register DevUI endpoint&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapDevUI&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Run&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Complete Code Example
&lt;/h3&gt;

&lt;p&gt;Here's the complete &lt;code&gt;Program.cs&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Agents.AI.DevUI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Agents.AI.Hosting&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.AspNetCore.Builder&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.AI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.DependencyInjection&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.Extensions.Hosting&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;OpenAI&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;OpenAI.Chat&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;System.ClientModel&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="n"&gt;WebApplicationBuilder&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;WebApplication&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;CreateBuilder&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="n"&gt;IChatClient&lt;/span&gt; &lt;span class="n"&gt;chatClient&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;ChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="s"&gt;"gpt-4o"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;ApiKeyCredential&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Environment&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;GetEnvironmentVariable&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"OPENAI_API_KEY"&lt;/span&gt;&lt;span class="p"&gt;)!),&lt;/span&gt; 
    &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;OpenAIClientOptions&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
        &lt;span class="n"&gt;Endpoint&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;Uri&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"https://models.github.ai/inference"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; 
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nf"&gt;AsIChatClient&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddChatClient&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;chatClient&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddOpenAIResponses&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Services&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddOpenAIConversations&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddAIAgent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Comic Book Guy"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="s"&gt;"You are comic-book guy from The Simpsons"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddAIAgent&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"CodeStreet Agent"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; 
    &lt;span class="s"&gt;"You are an agent who gives suggestions for youtube channels"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="n"&gt;WebApplication&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Build&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapOpenAIResponses&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapOpenAIConversations&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;MapDevUI&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Run&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Running Your Application
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Start the Application
&lt;/h3&gt;

&lt;p&gt;Run your application using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet run
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Or press &lt;code&gt;F5&lt;/code&gt; in Visual Studio.&lt;/p&gt;

&lt;h3&gt;
  
  
  Access DevUI
&lt;/h3&gt;

&lt;p&gt;Once the application starts, navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:[PORT]/devui
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Replace &lt;code&gt;[PORT]&lt;/code&gt; with the port number shown in your console output (typically 5000 or 5173).&lt;/p&gt;

&lt;h3&gt;
  
  
  Testing Your Agents
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Select an Agent&lt;/strong&gt;: On the left sidebar, you'll see both agents listed&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Start a Conversation&lt;/strong&gt;: Click on an agent to begin chatting&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Send Messages&lt;/strong&gt;: Type your message in the input box&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;View Responses&lt;/strong&gt;: Watch your agent respond in character&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Switch Agents&lt;/strong&gt;: Click another agent to test different personas&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;View History&lt;/strong&gt;: All conversation history is maintained automatically&lt;/li&gt;
&lt;/ol&gt;







&lt;h2&gt;
  
  
  Resources and Next Steps
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Official Documentation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com" rel="noopener noreferrer"&gt;Microsoft Agent Framework Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://learn.microsoft.com/ai" rel="noopener noreferrer"&gt;.NET AI Development Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/openai/openai-dotnet" rel="noopener noreferrer"&gt;OpenAI .NET SDK&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Further Learning
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Advanced Agent Patterns&lt;/strong&gt;: Explore multi-agent conversations and orchestration&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Function Calling&lt;/strong&gt;: Enable agents to interact with external systems&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom UI Development&lt;/strong&gt;: Build production interfaces using React or Blazor&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Azure Deployment&lt;/strong&gt;: Deploy agents to Azure App Service or Container Apps&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Sample Code Repository
&lt;/h3&gt;

&lt;p&gt;Find the complete source code for this tutorial: &lt;a href="https://buymeacoffee.com/thecodestreet/e/506289" rel="noopener noreferrer"&gt;Source Code&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;DevUI provides a powerful, efficient way to develop and test AI agents in .NET 10 without the overhead of building custom interfaces. By following this guide, you've learned:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; How to set up the Microsoft Agent Framework&lt;/li&gt;
&lt;li&gt; Configure OpenAI-compatible chat clients&lt;/li&gt;
&lt;li&gt; Create multiple AI agents with distinct personas&lt;/li&gt;
&lt;li&gt; Use DevUI for rapid testing and iteration&lt;/li&gt;
&lt;li&gt; Implement best practices for security and deployment&lt;/li&gt;
&lt;li&gt; Troubleshoot common issues&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The Microsoft Agent Framework, combined with DevUI, dramatically reduces the time from concept to functional AI agents. Whether you're building chatbots, virtual assistants, or complex multi-agent systems, these tools provide the foundation for rapid, efficient development.&lt;/p&gt;




&lt;h2&gt;
  
  
  Support me!
&lt;/h2&gt;

&lt;p&gt;If you found this guide helpful, make sure to check out the accompanying YouTube video tutorial where I walk you through the process visually. Don’t forget to &lt;a href="https://youtube.com/@TheCodeStreet?sub_confirmation=1" rel="noopener noreferrer"&gt;subscribe to my channel&lt;/a&gt; for more amazing tutorials!&lt;/p&gt;

&lt;p&gt;I would appreciate it if you could buy me a coffee.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" alt="Buy me a coffee" width="700" height="700"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feel free to leave your questions, comments, or suggestions below. Happy coding!&lt;/p&gt;

</description>
      <category>genai</category>
      <category>ai</category>
      <category>dotnet</category>
      <category>openai</category>
    </item>
    <item>
      <title>Run Large Language Models Locally in Docker | How to Use Qwen 3 with .NET Semantic Kernel?</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Fri, 19 Sep 2025 17:41:39 +0000</pubDate>
      <link>https://dev.to/thecodestreet/run-large-language-models-locally-in-docker-how-to-use-qwen-3-with-net-semantic-kernel-3olf</link>
      <guid>https://dev.to/thecodestreet/run-large-language-models-locally-in-docker-how-to-use-qwen-3-with-net-semantic-kernel-3olf</guid>
      <description>&lt;p&gt;AI development is moving fast — but one thing that still slows developers down is &lt;strong&gt;relying on cloud APIs&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
What if you could run powerful &lt;strong&gt;LLMs (Large Language Models)&lt;/strong&gt; locally, just like spinning up a Docker container?  &lt;/p&gt;

&lt;p&gt;In this blog, I’ll show you how to:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Run LLMs locally using &lt;strong&gt;Docker’s Model Runner&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Pull and run the &lt;strong&gt;Qwen 3&lt;/strong&gt; model
&lt;/li&gt;
&lt;li&gt;Connect it to a &lt;strong&gt;.NET console app&lt;/strong&gt; with &lt;strong&gt;Semantic Kernel&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let’s get started! 🚀&lt;/p&gt;

&lt;p&gt;For a more in-depth walk-through, be sure to watch my &lt;a href="https://youtu.be/J7lFLTfUAaE" rel="noopener noreferrer"&gt;YouTube video&lt;/a&gt;, where I demonstrate everything step by step!&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/J7lFLTfUAaE"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Why Run LLMs Inside Docker?
&lt;/h2&gt;

&lt;p&gt;Docker is already the standard for packaging and running applications. Now, with &lt;strong&gt;Docker Model Runner&lt;/strong&gt;, you can:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pull AI models&lt;/strong&gt; just like Docker images
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Run models locally&lt;/strong&gt; without cloud APIs
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Expose OpenAI-compatible APIs&lt;/strong&gt; to integrate seamlessly into apps
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means you can &lt;strong&gt;test, prototype, and even deploy AI workloads locally&lt;/strong&gt; — cost-free and private.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Step 1: Enable Docker Model Runner
&lt;/h2&gt;

&lt;p&gt;Open &lt;strong&gt;Docker Desktop → Settings → AI Features&lt;/strong&gt; and enable:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Docker Model Runner&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Host-side TCP support&lt;/strong&gt; (on port &lt;code&gt;12434&lt;/code&gt;)
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This allows models to expose REST APIs you can call from your apps.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Step 2: Pull and Run Qwen 3 Model
&lt;/h2&gt;

&lt;p&gt;Open your terminal and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Pull the model&lt;/span&gt;
docker model pull qwen/qwen-3b

&lt;span class="c"&gt;# Run the model&lt;/span&gt;
docker model run qwen/qwen-3b
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You’ll see an &lt;strong&gt;interactive chat session&lt;/strong&gt; where you can ask questions.&lt;br&gt;&lt;br&gt;
Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; Hello
&amp;lt; Hi! How can I assist you today?
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🔹 Step 3: Use REST API
&lt;/h2&gt;

&lt;p&gt;The model exposes endpoints on:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;http://localhost:12434/v1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For example, to list available models:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl http://localhost:12434/models
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You’ll see details of Qwen 3 and any other models you’ve pulled.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Step 4: Connect with Semantic Kernel (.NET)
&lt;/h2&gt;

&lt;p&gt;The best part is — you don’t need to rewrite your app.&lt;br&gt;&lt;br&gt;
Semantic Kernel already works with OpenAI APIs, and since Docker exposes the &lt;strong&gt;same structure&lt;/strong&gt;, all you do is &lt;strong&gt;change the base URL&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Install packages
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet add package Microsoft.SemanticKernel
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Create a Console App
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight csharp"&gt;&lt;code&gt;&lt;span class="k"&gt;using&lt;/span&gt; &lt;span class="nn"&gt;Microsoft.SemanticKernel&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kt"&gt;var&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Kernel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;CreateBuilder&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;AddOpenAIChatCompletion&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;modelId&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;"qwen/qwen-3b"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;apiKey&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;"dummy"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="c1"&gt;// not required for local&lt;/span&gt;
    &lt;span class="n"&gt;endpoint&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nf"&gt;Uri&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"http://localhost:12434/v1"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;// Docker endpoint&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kt"&gt;var&lt;/span&gt; &lt;span class="n"&gt;kernel&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Build&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="kt"&gt;var&lt;/span&gt; &lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="n"&gt;kernel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;InvokePromptAsync&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Explain Docker in simple terms."&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;Console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;WriteLine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That’s it! Your &lt;strong&gt;.NET app is now talking to Qwen 3 inside Docker&lt;/strong&gt;, through Semantic Kernel.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Why This Matters
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🖥️ &lt;strong&gt;Local-first AI&lt;/strong&gt; → Run LLMs without internet or billing
&lt;/li&gt;
&lt;li&gt;🔒 &lt;strong&gt;Privacy&lt;/strong&gt; → Your data never leaves your machine
&lt;/li&gt;
&lt;li&gt;⚡ &lt;strong&gt;Developer-friendly&lt;/strong&gt; → Same SDKs, same APIs, just a different base URL
&lt;/li&gt;
&lt;li&gt;🔗 &lt;strong&gt;Drop-in replacement&lt;/strong&gt; → Move between local and cloud seamlessly
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Running AI models is now &lt;strong&gt;as easy as running containers&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
With &lt;strong&gt;Docker Model Runner&lt;/strong&gt;, you can:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pull Qwen 3
&lt;/li&gt;
&lt;li&gt;Run it locally
&lt;/li&gt;
&lt;li&gt;Connect it to .NET apps with Semantic Kernel
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This opens up endless possibilities for building &lt;strong&gt;intelligent apps without cloud dependencies&lt;/strong&gt;.  &lt;/p&gt;




&lt;p&gt;👉 What model are you planning to run first with Docker?&lt;br&gt;&lt;br&gt;
Drop a comment — I’d love to know!  &lt;/p&gt;

</description>
      <category>ai</category>
      <category>docker</category>
      <category>dotnet</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to Build Your First AI Agent with Semantic Kernel &amp; DeepSeek R1 Locally with Ollama</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Sat, 16 Aug 2025 02:40:49 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-build-your-first-ai-agent-with-semantic-kernel-deepseek-r1-locally-with-ollama-1c3i</link>
      <guid>https://dev.to/thecodestreet/how-to-build-your-first-ai-agent-with-semantic-kernel-deepseek-r1-locally-with-ollama-1c3i</guid>
      <description>&lt;p&gt;In this post, we will create our first AI Agent using the Microsoft Agentic Framework of Semantic Kernel and DeepSeek R1, running locally on Ollama. &lt;/p&gt;

&lt;p&gt;We’ll walk step by step through setting up a Semantic Kernel agent that leverages DeepSeek R1 via Ollama, showing you how to install the tools, configure the model locally, and connect everything together. By the end, you’ll have a working AI YouTube Title Generator agent running entirely on your machine locally—no cloud subscription required.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/wyLnlnD71Iw"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What You Will Learn
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;How to Get Started with DeepSeek R1&lt;/li&gt;
&lt;li&gt;How to Use Ollama for running local models&lt;/li&gt;
&lt;li&gt;How to install and start running the DeepSeek R1 model&lt;/li&gt;
&lt;li&gt;How to Use Semantic Kernel in C#&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Visual Studio 2022+ (with .NET 9 SDK installed)
.NET 9 is still in preview, so ensure that you have the preview SDK installed.&lt;/li&gt;
&lt;li&gt;Ollama (for managing and running local models)&lt;/li&gt;
&lt;li&gt;DeepSeek1.5b Model&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Installing Ollama
&lt;/h2&gt;

&lt;p&gt;Ollama is a platform or tool (specific details may vary depending on the context) that allows users to interact with large language models (LLMs) locally. It simplifies the process of deploying and running LLMs like LLaMA, Phi, DeepSeek R1, or other open-source models.&lt;/p&gt;

&lt;p&gt;To install Ollama, visit its official website &lt;a href="https://ollama.com/download" rel="noopener noreferrer"&gt;https://ollama.com/download&lt;/a&gt; and install it on your machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Installing DeepSeek R1
&lt;/h2&gt;

&lt;p&gt;DeepSeek's first-generation reasoning models have comparable performance to OpenAI-o1, including six dense models distilled from DeepSeek-R1 based on Llama and Qwen.&lt;/p&gt;

&lt;p&gt;On the Ollama website click on &lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;Models&lt;/a&gt; and click on deepseek-r1 and choose &lt;strong&gt;1.5b&lt;/strong&gt; parameter option&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" alt="How To Use DeepSeek With .NET 9 - deepseek-r1:1.5b"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open Command Prompt and run the command below.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run deepseek-r1:1.5b&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;It will download the model and start running automatically.&lt;/p&gt;

&lt;p&gt;Once done, verify that the model is available&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama list&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;That’s it! We’re ready to integrate DeepSeek locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Creating .NET Console Application
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Launch Visual Studio&lt;/li&gt;
&lt;li&gt;Make sure .NET 9 is installed.&lt;/li&gt;
&lt;li&gt;Create a New Project&lt;/li&gt;
&lt;li&gt;File → New → Project…&lt;/li&gt;
&lt;li&gt;Pick Console App with .NET 9.&lt;/li&gt;
&lt;li&gt;Name Your Project&lt;/li&gt;
&lt;li&gt;e.g., DeepSeekDemoApp or any name you prefer.&lt;/li&gt;
&lt;li&gt;Target Framework Check&lt;/li&gt;
&lt;li&gt;Right-click on your project → Properties.&lt;/li&gt;
&lt;li&gt;Set Target Framework to .NET 9.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  5. Integrating DeepSeek R1 with Semantic Kernel
&lt;/h2&gt;

&lt;p&gt;While you could call DeepSeek via direct HTTP requests to Ollama, using Semantic Kernel offers a powerful abstraction for prompt engineering, orchestration, and more.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add Necessary NuGet Packages
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;ItemGroup&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel" Version="1.61.0" /&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel.Agents.Core" Version="1.61.0" /&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel.Connectors.Ollama" Version="1.61.0-alpha" /&amp;gt;
&amp;lt;/ItemGroup&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  6. Complete code
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Program.cs&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Agents;

var builder = Kernel.CreateBuilder().AddOllamaChatCompletion("deepseek-r1:1.5b",
    new HttpClient
    {
        BaseAddress = new Uri("http://localhost:11434"),

    });

Kernel kernel = builder.Build();

Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("Welcome to TheCodeStreet - AI YouTube Title Generator!");
Console.WriteLine("------------------------------------------------------");
Console.ResetColor();
Console.WriteLine("Provide the keyword to generate title:");
string keyword = Console.ReadLine()?? "";


string instructions = """
You are a professional YouTube content strategist and SEO expert.

🎯 Keyword or Topic: {{keyword}}

Your job is to generate 5 click-worthy and SEO-friendly YouTube video titles based on a given topic or keyword.

📌 Guidelines for Generating Titles:

-- Keep them under 70 characters if possible.
-- Include emotional triggers, power words, or numbers (e.g., “Top 5”, “You Won’t Believe…”).
-- Use strong action verbs (e.g., “Boost”, “Master”, “Avoid”, “Unlock”).
-- Make titles engaging and curiosity-driven (clickbait style but still relevant).
-- Include the keyword or topic for SEO.
-- Avoid duplicate or overly similar titles.

💡 Return only the titles in a numbered list format like:
1. Title one...
2. Title two...
3. ...
""";

 instructions = instructions
    .Replace("{{keyword}}", keyword);

ChatCompletionAgent agent =
    new()
    {
        Name = "TitleGeneratorAgent",
        Instructions = instructions,
        Kernel = kernel,
    };

Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Generating titles...");
Console.WriteLine("------------------------------------------------------");
await foreach (AgentResponseItem&amp;lt;StreamingChatMessageContent&amp;gt; response
    in agent.InvokeStreamingAsync())
{
    Console.Write(response.Message.Content.Replace("**",""));
}
Console.ResetColor();
Console.ReadKey();

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  7. Running &amp;amp; Testing
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Ensure Ollama is Running&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;-Some systems auto-run Ollama; otherwise, start it&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Run Your .NET App&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;-Hit F5 (or Ctrl+F5) in Visual Studio.&lt;/p&gt;

&lt;p&gt;-Watch for console output—&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2u7vjd07arnok106piz6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2u7vjd07arnok106piz6.png" alt="YouTube Title Generator Agent"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Support me!
&lt;/h2&gt;

&lt;p&gt;If you found this guide helpful, make sure to check out the accompanying YouTube video tutorial where I walk you through the process visually. Don’t forget to &lt;a href="https://youtube.com/@TheCodeStreet?sub_confirmation=1" rel="noopener noreferrer"&gt;subscribe to my channel&lt;/a&gt; for more amazing tutorials!&lt;/p&gt;

&lt;p&gt;I would appreciate it if you could buy me a coffee.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" alt="Buy me a coffee"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feel free to leave your questions, comments, or suggestions below. Happy coding!&lt;/p&gt;

</description>
      <category>ai</category>
      <category>semantickernel</category>
      <category>dotnet</category>
      <category>beginners</category>
    </item>
    <item>
      <title>How to Create RAG using DeepSeek R1, Ollama &amp; Semantic Kernel .NET</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Tue, 04 Mar 2025 06:20:59 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-create-rag-using-deepseek-r1-ollama-semantic-kernel-net-4n1c</link>
      <guid>https://dev.to/thecodestreet/how-to-create-rag-using-deepseek-r1-ollama-semantic-kernel-net-4n1c</guid>
      <description>&lt;p&gt;Have you ever wanted to combine your own data with AI to get instant insights? In this blog post, we’ll explore exactly how to do that by building a &lt;strong&gt;Retriever-Augmented Generation (RAG)&lt;/strong&gt; application using &lt;strong&gt;DeepSeek R1&lt;/strong&gt;, &lt;strong&gt;Ollama&lt;/strong&gt;, and &lt;strong&gt;Semantic Kernel&lt;/strong&gt;. Our example scenario is a simple &lt;em&gt;expense manager&lt;/em&gt; that tracks daily spending and lets AI answer natural-language questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;"How much did I spend on coffee?"&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;"Which day did I spend the most money overall?"&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;"Which day did I spend the least money overall?"&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By the end of this post, you’ll see how you can load your own data (e.g., a text file, PDF documents, or others) and perform natural language Q&amp;amp;A over it using these tools. &lt;/p&gt;

&lt;p&gt;For a more in-depth walk-through, be sure to watch my &lt;a href="https://youtu.be/B4bulA7Vx3o" rel="noopener noreferrer"&gt;YouTube video&lt;/a&gt;, where I demonstrate everything step by step!&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/B4bulA7Vx3o"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;




&lt;h2&gt;
  
  
  What is RAG (Retriever-Augmented Generation)?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Retriever-Augmented Generation&lt;/strong&gt; (RAG) is an approach that combines:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;A Retriever&lt;/strong&gt;: A system/component to fetch relevant documents or pieces of data from a larger collection (e.g., your expense records).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A Language Model&lt;/strong&gt;: A large language model (LLM) that can generate natural language responses based on prompts and retrieved context.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;When you ask a question, RAG retrieves relevant snippets or documents from your dataset and uses them to ground the LLM’s response. This helps the AI give more accurate and context-aware answers by focusing on information you’ve provided. Essentially, you augment the AI’s knowledge by feeding it the specific data you care about.&lt;/p&gt;




&lt;h2&gt;
  
  
  Use Cases of RAG
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Customer Support&lt;/strong&gt;: Quickly retrieve knowledge base articles and feed them to an LLM for on-demand issue resolution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Content Search&lt;/strong&gt;: Search large text corpuses and summarize or answer queries about them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Personal Knowledge Management&lt;/strong&gt;: Organize personal notes or expense records, and use AI to query them or generate insights.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Finance and Expense Tracking&lt;/strong&gt;: Like in our example, store transaction history, then ask AI to identify spending patterns, daily totals, or anomalies.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  1. Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Visual Studio 2022+ (with .NET 9 SDK installed)
.NET 9 is still in preview, so ensure that you have the preview SDK installed.&lt;/li&gt;
&lt;li&gt;Ollama (for managing and running local models)&lt;/li&gt;
&lt;li&gt;DeepSeek1.5b Model&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Installing Ollama
&lt;/h2&gt;

&lt;p&gt;Ollama is a platform or tool (specific details may vary depending on the context) that allows users to interact with large language models (LLMs) locally. It simplifies the process of deploying and running LLMs like LLaMA, Phi, DeepSeek R1, or other open-source models.&lt;/p&gt;

&lt;p&gt;To install Ollama visit its official website &lt;a href="https://ollama.com/download" rel="noopener noreferrer"&gt;https://ollama.com/download&lt;/a&gt; and install it on your machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Installing DeepSeek R1
&lt;/h2&gt;

&lt;p&gt;DeepSeek's first-generation reasoning models with comparable performance to OpenAI-o1, including six dense models distilled from DeepSeek-R1 based on Llama and Qwen.&lt;/p&gt;

&lt;p&gt;On the Ollama website click on &lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;Models&lt;/a&gt; and click on deepseek-r1 and choose &lt;strong&gt;1.5b&lt;/strong&gt; parameter option&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" alt="How To Use DeepSeek With .NET 9 - deepseek-r1:1.5b" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open Command Prompt and run the below command.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run deepseek-r1:1.5b&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;It will download the model and start running automatically.&lt;/p&gt;

&lt;p&gt;Once done, verify the model is available&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama list&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;That’s it! We’re ready to integrate DeepSeek locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Creating .NET Console Application
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Launch Visual Studio&lt;/li&gt;
&lt;li&gt;Make sure .NET 9 is installed.&lt;/li&gt;
&lt;li&gt;Create a New Project&lt;/li&gt;
&lt;li&gt;File → New → Project…&lt;/li&gt;
&lt;li&gt;Pick Console App with .NET 9.&lt;/li&gt;
&lt;li&gt;Name Your Project&lt;/li&gt;
&lt;li&gt;e.g., DeepSeekDemoApp or any name you prefer.&lt;/li&gt;
&lt;li&gt;Target Framework Check&lt;/li&gt;
&lt;li&gt;Right-click on your project → Properties.&lt;/li&gt;
&lt;li&gt;Set Target Framework to .NET 9.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  5. Integrating DeepSeek R1 with Semantic Kernel
&lt;/h2&gt;

&lt;p&gt;While you could call DeepSeek via direct HTTP requests to Ollama, using Semantic Kernel offers a powerful abstraction for prompt engineering, orchestration, and more.&lt;/p&gt;

&lt;h3&gt;
  
  
  Add Necessary NuGet Packages
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;ItemGroup&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.KernelMemory.AI.Ollama" Version="0.97.250211.1" /&amp;gt;
&amp;lt;PackageReference Include="Microsoft.KernelMemory.Core" Version="0.97.250211.1" /&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel" Version="1.35.0" /&amp;gt;
&amp;lt;/ItemGroup&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;&lt;a href="https://buymeacoffee.com/codestreet/e/374480" rel="noopener noreferrer"&gt;Download Complete Project&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Source Code
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using Microsoft.KernelMemory;
using Microsoft.KernelMemory.AI.Ollama;

var config = new OllamaConfig
{
    Endpoint = "http://localhost:11434",
    TextModel = new OllamaModelConfig("deepseek-r1:1.5b", 131072),
    EmbeddingModel = new OllamaModelConfig("deepseek-r1:1.5b", 2048)
};

var memory = new KernelMemoryBuilder()
    .WithOllamaTextGeneration(config)
    .WithOllamaTextEmbeddingGeneration(config)
    .Build&amp;lt;MemoryServerless&amp;gt;();

Console.WriteLine("Processing document, please wait...");

await memory.ImportDocumentAsync("expenses.txt", documentId: "DOC001");

Console.WriteLine("Model is ready to take questions\n");

while(await memory.IsDocumentReadyAsync("DOC002"))
{

    Console.WriteLine("Ask your questions\n");

    var question = Console.ReadLine();

    var answer = await memory.AskAsync(question);

    Console.WriteLine(answer.Result);

    Console.WriteLine("\n Sources:");

    foreach(var x in answer.RelevantSources)
    {
        Console.WriteLine($" {x.SourceName} - {x.SourceUrl} - {x.Link}");
    }

}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Daily expense data
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Date        | Category       | Amount
------------|----------------|-------
2025-02-13  | Groceries      | 45.30
2025-02-13  | Transport      | 12.00
2025-02-14  | Coffee         | 4.50
2025-02-14  | Rent           | 800.00
2025-02-15  | Groceries      | 54.20
2025-02-16  | Entertainment  | 30.00
2025-02-16  | Transport      | 10.00
2025-02-17  | Bills          | 120.00
2025-02-17  | Coffee         | 3.75
2025-02-18  | Groceries      | 62.40

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Save this info as expenses.txt, put it into the bin directory, and run the application.
&lt;/h3&gt;

&lt;p&gt;Now you are good for asking some questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;“How much did I spend on coffee?”&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;“Which day did I spend the most money overall?”&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;“Which day did I spend the least money overall?”&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The AI will use the embedded expense data to calculate or deduce answers. It should also list the sources (e.g., the document ID containing relevant info)&lt;/p&gt;

&lt;h2&gt;
  
  
  Support me
&lt;/h2&gt;

&lt;p&gt;If you found this guide helpful, make sure to check out the accompanying YouTube video tutorial, in which I walk you through the process visually. Don’t forget to &lt;a href="https://youtube.com/@TheCodeStreet?sub_confirmation=1" rel="noopener noreferrer"&gt;subscribe to my channel&lt;/a&gt; for more amazing tutorials!&lt;/p&gt;

&lt;p&gt;I would appreciate it if you could buy me a coffee.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" alt="Buy me a coffee" width="700" height="700"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>deepseek</category>
      <category>ai</category>
      <category>rag</category>
      <category>csharp</category>
    </item>
    <item>
      <title>How to Build Blog Generator AI App Using Deep Seek R1 and Semantic Kernel in .NET9</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Thu, 06 Feb 2025 10:46:19 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-build-blog-generator-ai-app-using-deep-seek-r1-and-semantic-kernel-in-net9-5555</link>
      <guid>https://dev.to/thecodestreet/how-to-build-blog-generator-ai-app-using-deep-seek-r1-and-semantic-kernel-in-net9-5555</guid>
      <description>&lt;p&gt;In this post, I’m excited to share the journey behind our latest project: building a blog generator AI app that harnesses the power of Deep Seek R1, Semantic Kernel, and .NET9. This blog serves as a companion to my YouTube video where I walk through the entire process step-by-step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Have you ever found yourself staring at a blank screen, struggling to come up with blog content? What if you could let AI do the heavy lifting and generate blog posts for you? In this tutorial, I'll show you how to build an AI-powered blog generator that not only speeds up content creation but also produces quality posts automatically.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/s4xWkZL69pg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What You'll Learn
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Integrating Deep Seek R1:&lt;/strong&gt; Learn how to leverage advanced search capabilities to gather relevant content and ideas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Using Semantic Kernel:&lt;/strong&gt; Discover how to orchestrate AI tasks for natural language processing and content generation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Building with .NET9:&lt;/strong&gt; See how .NET9 provides a robust framework for developing and deploying your AI application.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step-by-Step Guidance:&lt;/strong&gt; Follow a clear, concise guide that breaks down the process into manageable steps.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why Build an AI-Powered Blog Generator?
&lt;/h2&gt;

&lt;p&gt;Automating blog creation saves you time and effort, allowing you to focus on other aspects of your business or creative pursuits. This project not only demonstrates cutting-edge technology integration but also provides a scalable solution for content creators and developers alike.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technologies at a Glance
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Deep Seek R1:&lt;/strong&gt; This tool helps in deep searching, ensuring your content is backed by extensive and relevant data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Semantic Kernel:&lt;/strong&gt; Acts as the brain behind content generation by processing natural language and orchestrating AI tasks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;.NET9:&lt;/strong&gt; The latest iteration of .NET offers improved performance, modern features, and a great development experience for building robust applications.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Visual Studio 2022+ (with .NET 9 SDK installed)
.NET 9 is still in preview, so ensure that you have the preview SDK installed.&lt;/li&gt;
&lt;li&gt;Ollama (for managing and running local models)&lt;/li&gt;
&lt;li&gt;DeepSeek1.5b Model&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Installing Ollama
&lt;/h2&gt;

&lt;p&gt;Ollama is a platform or tool (specific details may vary depending on the context) that allows users to interact with large language models (LLMs) locally. It simplifies the process of deploying and running LLMs like LLaMA, Phi, DeepSeek R1, or other open-source models.&lt;/p&gt;

&lt;p&gt;To install Ollama visit its official website &lt;a href="https://ollama.com/download" rel="noopener noreferrer"&gt;https://ollama.com/download&lt;/a&gt; and install it on your machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Installing DeepSeek R1
&lt;/h2&gt;

&lt;p&gt;DeepSeek's first-generation reasoning models with comparable performance to OpenAI-o1, including six dense models distilled from DeepSeek-R1 based on Llama and Qwen.&lt;/p&gt;

&lt;p&gt;On the Ollama website click on &lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;Models&lt;/a&gt; and click on deepseek-r1 and choose &lt;strong&gt;1.5b&lt;/strong&gt; parameter option&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" alt="How To Use DeepSeek With .NET 9 - deepseek-r1:1.5b" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open Command Prompt and run the below command.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run deepseek-r1:1.5b&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;It will download the model and start running automatically.&lt;/p&gt;

&lt;p&gt;Once done, verify the model is available&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama list&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;That’s it! We’re ready to integrate DeepSeek locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Creating .NET Console Application
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Launch Visual Studio&lt;/li&gt;
&lt;li&gt;Make sure .NET 9 is installed.&lt;/li&gt;
&lt;li&gt;Create a New Project&lt;/li&gt;
&lt;li&gt;File → New → Project…&lt;/li&gt;
&lt;li&gt;Pick Console App with .NET 9.&lt;/li&gt;
&lt;li&gt;Name Your Project&lt;/li&gt;
&lt;li&gt;e.g., DeepSeekDemoApp or any name you prefer.&lt;/li&gt;
&lt;li&gt;Target Framework Check&lt;/li&gt;
&lt;li&gt;Right-click on your project → Properties.&lt;/li&gt;
&lt;li&gt;Set Target Framework to .NET 9.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  5. Integrating DeepSeek R1 with Semantic Kernel
&lt;/h2&gt;

&lt;p&gt;While you could call DeepSeek via direct HTTP requests to Ollama, using Semantic Kernel offers a powerful abstraction for prompt engineering, orchestration, and more.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add Necessary NuGet Packages
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;ItemGroup&amp;gt;
  &amp;lt;PackageReference Include="Codeblaze.SemanticKernel.Connectors.Ollama" Version="1.3.1" /&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel" Version="1.35.0" /&amp;gt;
&amp;lt;/ItemGroup&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  6. Code
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.ChatCompletion;
using Codeblaze.SemanticKernel.Connectors.Ollama;
using Microsoft.Extensions.DependencyInjection;

var builder = Kernel.CreateBuilder().AddOllamaChatCompletion("deepseek-r1:1.5b", "http://localhost:11434");

builder.Services.AddScoped&amp;lt;HttpClient&amp;gt;();

Kernel kernel = builder.Build();
var chatCompletionService = kernel.GetRequiredService&amp;lt;IChatCompletionService&amp;gt;();

string GetUserInput(string prompt)
{
    Console.ForegroundColor = ConsoleColor.Green;
    Console.WriteLine(prompt);
    Console.ForegroundColor = ConsoleColor.White;
    return Console.ReadLine();
}

string topic = GetUserInput("Tell me the topic for the blog");
string tone = GetUserInput("Provide blog tone");
int length = Convert.ToInt32(GetUserInput("Provide total blog length"));
string keywords = GetUserInput("Provide some keywords to target");

string prompt = $@"
Your_prompt
";

var blogResponse = await kernel.InvokePromptAsync(prompt);

Console.ForegroundColor = ConsoleColor.DarkCyan;

Console.WriteLine(blogResponse.ToString());

Console.WriteLine("Press enter to exit...");
Console.ReadLine();

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://buymeacoffee.com/codestreet/e/368951" rel="noopener noreferrer"&gt;Downlaod Complete Project&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Generated Blog
&lt;/h2&gt;

&lt;p&gt;It generates the blog into markdown format, which Dev.to and Github support, you can also easily convert it into WordPress formats.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fikb9spve5qfe3y8uihj3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fikb9spve5qfe3y8uihj3.png" alt="How to Build Blog Generator AI App Using Deep Seek R1" width="799" height="397"&gt;&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# The Future of Social Media Marketing: Why It’s Revolutionizing Modern Business Strategies  

## The Rise of Social Media in the Modern World  

In an era where social media has taken center stage as a key tool for business growth, social media marketing has emerged as a transformative force. From connecting with customers and driving sales to engaging the public on every level, this platform is reshaping how businesses approach their communication strategies.  

## The Key Benefits of Social Media Marketing  

### 1. **Sustainable Social Media Strategy**  
One of the most significant advantages of social media marketing is its ability to break free from traditional marketing boundaries. By leveraging platforms like Instagram and Facebook, businesses can consistently build relationships with customers who may not be reachable through other channels. This strategy ensures that the brand remains relevant and effective in the face of ever-changing market conditions.  

### 2. **Increased Visibility &amp;amp; Reach**  
Social media is renowned for its global reach. Through consistent posting and interactive content, brands gain visibility beyond their local markets. For example, a small business might see its product appear on billions of Instagram stories or Facebook posts every day, creating a loyal audience that would be difficult to compete with in a traditional marketing campaign.  

### 3. **Targeted Audience Engagement**  
One of the most powerful tools of social media marketing is its ability to target specific audiences. By analyzing data from platforms like Instagram and Facebook, businesses can identify demographics and interests where they can create more effective campaigns. This targeted approach ensures that marketing efforts align with customer needs, leading to higher engagement and conversions.  

### 4. **Building a Social Following**  
Social media is not just about sharing content; it’s also about building a community around the brand. By engaging with followers regularly and responding to comments, businesses can establish trust and credibility. This follows can lead to long-term relationships with customers who are drawn to brands that value their connection and want to share their own.  

### 5. **Improved Customer Relationships**  
Social media marketing is about more than just selling a product. It’s also about fostering meaningful connections. By sharing personal stories, tips, and updates, businesses can connect deeply with their audience and strengthen long-term relationships. This creates loyalty and trust that can translate into repeat business.  

## Examples of Social Media Marketing in Action  

### Instagram Marketing: A Global Reach  
A small tech startup, *TechGenius*, used Instagram to launch its latest product line. They created content that highlighted the benefits of their innovation, connecting with customers across countries through consistent posting and interactive posts. This strategy not only brought their product to a global audience but also built a loyal following.  

### Facebook Marketing: Building a Community  
A retail store, *FashionFlix*, used Facebook to create a community around its products. By sharing behind-the-scenes content, engaging with customers, and participating in influencer collaborations, the brand established itself as knowledgeable and trustworthy. This not only helped sell their clothing but also fostered connections that could lead to word-of-mouth referrals.  

### A/B Testing on Social Media: Measuring Success  
Social media marketing often involves testing different strategies to determine what works best for a business. By running A/B tests on platforms like Instagram or Facebook, companies can see which content types resonate with their audience and adjust their marketing efforts accordingly. This data-driven approach ensures that marketing initiatives are effective and aligned with customer needs.  

## Tools &amp;amp; Platforms for Social Media Marketing  

From content creation tools to analytics platforms, there’s no shortage of resources available to businesses looking to improve their social media strategy. Platforms like Instagram, Facebook, and YouTube have built into them powerful tools for creating engaging posts, tracking engagement, and measuring performance. By utilizing these features effectively, businesses can maximize the impact of their social media marketing efforts.  

## The Ultimate Guide: Tips on Social Media Marketing  

### 1. **Content Creation**  
The foundation of any successful social media strategy is well-crafted content. Businesses should focus on creating engaging, relevant, and timely posts that resonate with their audience. Whether it’s showcasing a product, sharing tips for a task or discussing recent events, the right content can catch people’s attention and encourage action.  

### 2. **Engagement**  
Social media is not just about posting; it’s also about interacting with your audience. Regular updates and timely responses to comments and questions create a sense of connection and trust. This engagement not only helps build relationships but also reinforces the brand’s message, making customers more likely to return for future purchases.  

### 3. **Analytics**  
To maximize the effectiveness of social media marketing, businesses should track their performance through analytics tools. These tools allow them to measure the impact of their content, identify trends in their audience, and adjust their strategies accordingly. By staying data-driven, they can ensure that their efforts are aligned with customer needs and driving results.  

### 4. **Leverage Influencer Marketing**  
Influencers are a powerful tool in social media marketing. Businesses should engage with influencers to gain credibility and reach a wider audience. Collaborating with influencers or following them on platforms like Instagram can help establish authority and trust, leading to more engagement from their followers.  

### 5. **Stay Updated with Trends**  
Social media is a dynamic platform that evolves quickly. To stay ahead of the curve, businesses should be aware of new trends and tools available on platforms like Instagram, Facebook, and Twitter. Keeping their strategy updated ensures they remain relevant in a competitive market and can adapt to changing customer preferences.  


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Support me
&lt;/h2&gt;

&lt;p&gt;If you found this guide helpful, make sure to check out the accompanying YouTube video tutorial where I walk you through the process visually. Don’t forget to &lt;a href="https://youtube.com/@TheCodeStreet?sub_confirmation=1" rel="noopener noreferrer"&gt;subscribe to my channel&lt;/a&gt; for more amazing tutorials!&lt;/p&gt;

&lt;p&gt;I would appreciate it if you could buy me a coffee.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" alt="Buy me a coffee" width="700" height="700"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Building a blog generator AI app is not only an exciting project but also a practical solution for anyone looking to enhance their content creation process. I hope this guide inspires you to explore the possibilities of AI in your projects. If you have any questions or ideas, feel free to leave a comment below!&lt;/p&gt;

&lt;p&gt;Feel free to leave your questions, comments, or suggestions below. Happy coding!&lt;/p&gt;

</description>
      <category>deepseek</category>
      <category>dotnet</category>
      <category>ai</category>
      <category>csharp</category>
    </item>
    <item>
      <title>How To Use DeepSeek With .NET 9 | Hands-On With DeepSeek R1, Semantic Kernel &amp; C#</title>
      <dc:creator>TheCodeStreet</dc:creator>
      <pubDate>Sat, 01 Feb 2025 07:40:23 +0000</pubDate>
      <link>https://dev.to/thecodestreet/how-to-use-deepseek-with-net-9-hands-on-with-deepseek-r1-semantic-kernel-c-16ol</link>
      <guid>https://dev.to/thecodestreet/how-to-use-deepseek-with-net-9-hands-on-with-deepseek-r1-semantic-kernel-c-16ol</guid>
      <description>&lt;p&gt;In this post, we will integrate DeepSeek R1 into a .NET 9 using Semantic Kernel. If you’re looking to get started with DeepSeek models locally, this hands-on guide is for you.&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/iN42Q55YTxQ"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  What You Will Learn
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;How to Get Started with DeepSeek R1&lt;/li&gt;
&lt;li&gt;How to Use Ollama for running local models&lt;/li&gt;
&lt;li&gt;How to install and start running the DeepSeek R1 model&lt;/li&gt;
&lt;li&gt;How to Use Semantic Kernel in C#&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Prerequisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Visual Studio 2022+ (with .NET 9 SDK installed)
.NET 9 is still in preview, so ensure that you have the preview SDK installed.&lt;/li&gt;
&lt;li&gt;Ollama (for managing and running local models)&lt;/li&gt;
&lt;li&gt;DeepSeek1.5b Model&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Installing Ollama
&lt;/h2&gt;

&lt;p&gt;Ollama is a platform or tool (specific details may vary depending on the context) that allows users to interact with large language models (LLMs) locally. It simplifies the process of deploying and running LLMs like LLaMA, Phi, DeepSeek R1, or other open-source models.&lt;/p&gt;

&lt;p&gt;To install Ollama visit its official website &lt;a href="https://ollama.com/download" rel="noopener noreferrer"&gt;https://ollama.com/download&lt;/a&gt; and install it on your machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Installing DeepSeek R1
&lt;/h2&gt;

&lt;p&gt;DeepSeek's first-generation reasoning models with comparable performance to OpenAI-o1, including six dense models distilled from DeepSeek-R1 based on Llama and Qwen.&lt;/p&gt;

&lt;p&gt;On the Ollama website click on &lt;a href="https://ollama.com/search" rel="noopener noreferrer"&gt;Models&lt;/a&gt; and click on deepseek-r1 and choose &lt;strong&gt;1.5b&lt;/strong&gt; parameter option&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l8gj5m9zlsvqe84whc5.png" alt="How To Use DeepSeek With .NET 9 - deepseek-r1:1.5b" width="800" height="725"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Open Command Prompt and run the below command.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run deepseek-r1:1.5b&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;It will download the model and start running automatically.&lt;/p&gt;

&lt;p&gt;Once done, verify the model is available&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama list&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;That’s it! We’re ready to integrate DeepSeek locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Creating .NET Console Application
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Launch Visual Studio&lt;/li&gt;
&lt;li&gt;Make sure .NET 9 is installed.&lt;/li&gt;
&lt;li&gt;Create a New Project&lt;/li&gt;
&lt;li&gt;File → New → Project…&lt;/li&gt;
&lt;li&gt;Pick Console App with .NET 9.&lt;/li&gt;
&lt;li&gt;Name Your Project&lt;/li&gt;
&lt;li&gt;e.g., DeepSeekDemoApp or any name you prefer.&lt;/li&gt;
&lt;li&gt;Target Framework Check&lt;/li&gt;
&lt;li&gt;Right-click on your project → Properties.&lt;/li&gt;
&lt;li&gt;Set Target Framework to .NET 9.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  5. Integrating DeepSeek R1 with Semantic Kernel
&lt;/h2&gt;

&lt;p&gt;While you could call DeepSeek via direct HTTP requests to Ollama, using Semantic Kernel offers a powerful abstraction for prompt engineering, orchestration, and more.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add Necessary NuGet Packages
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;ItemGroup&amp;gt;
  &amp;lt;PackageReference Include="Codeblaze.SemanticKernel.Connectors.Ollama" Version="1.3.1" /&amp;gt;
  &amp;lt;PackageReference Include="Microsoft.SemanticKernel" Version="1.35.0" /&amp;gt;
&amp;lt;/ItemGroup&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  6. Complete code
&lt;/h2&gt;

&lt;p&gt;The Semantic Kernel can use a custom connector to talk to local endpoints. For simplicity, we’ll outline a sample approach:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Program.cs&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;using Codeblaze.SemanticKernel.Connectors.Ollama;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.SemanticKernel;

var builder = Kernel.CreateBuilder().AddOllamaChatCompletion("deepseek-r1:1.5b", "http://localhost:11434");

builder.Services.AddScoped&amp;lt;HttpClient&amp;gt;();
var kernel = builder.Build();

while (true)
{
    string input = "";
    Console.WriteLine("Ask anything to Deepseek");
    input = Console.ReadLine();
    var response = await kernel.InvokePromptAsync(input);
    Console.WriteLine($"\nDeepseek: {response}\n");
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  7. Running &amp;amp; Testing
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Ensure Ollama is Running&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;-Some systems auto-run Ollama; otherwise, start it&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;ollama run&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Run Your .NET App&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;-Hit F5 (or Ctrl+F5) in Visual Studio.&lt;/p&gt;

&lt;p&gt;-Watch for console output—&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhv6wwvqi3srtvvnplkc7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhv6wwvqi3srtvvnplkc7.png" alt="Running DeepSeek on .NET" width="800" height="202"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Support me!
&lt;/h2&gt;

&lt;p&gt;If you found this guide helpful, make sure to check out the accompanying YouTube video tutorial where I walk you through the process visually. Don’t forget to &lt;a href="https://youtube.com/@TheCodeStreet?sub_confirmation=1" rel="noopener noreferrer"&gt;subscribe to my channel&lt;/a&gt; for more amazing tutorials!&lt;/p&gt;

&lt;p&gt;I would appreciate it if you could buy me a coffee.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdbgo17dxrwwbcyvtij06.png" alt="Buy me a coffee" width="700" height="700"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feel free to leave your questions, comments, or suggestions below. Happy coding!&lt;/p&gt;

</description>
      <category>deepseek</category>
      <category>dotnet</category>
      <category>ai</category>
      <category>csharp</category>
    </item>
  </channel>
</rss>
