<?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: Ashlesha Anjarkar</title>
    <description>The latest articles on DEV Community by Ashlesha Anjarkar (@ashlesha_anjarkar_25).</description>
    <link>https://dev.to/ashlesha_anjarkar_25</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%2F4207736%2Fac5beb5d-cb73-4c9e-bada-ad461dc6cf54.png</url>
      <title>DEV Community: Ashlesha Anjarkar</title>
      <link>https://dev.to/ashlesha_anjarkar_25</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ashlesha_anjarkar_25"/>
    <language>en</language>
    <item>
      <title>Building BlinkGuard: A Pre-Sign AI Transaction Firewall &amp; Trading Copilot on Solana</title>
      <dc:creator>Ashlesha Anjarkar</dc:creator>
      <pubDate>Sat, 14 Nov 2026 09:22:32 +0000</pubDate>
      <link>https://dev.to/ashlesha_anjarkar_25/building-blinkguard-a-pre-sign-ai-transaction-firewall-trading-copilot-on-solana-2i14</link>
      <guid>https://dev.to/ashlesha_anjarkar_25/building-blinkguard-a-pre-sign-ai-transaction-firewall-trading-copilot-on-solana-2i14</guid>
      <description>&lt;p&gt;Every month, Web3 users lose millions to blind-signing wallet drainers disguised as routine DeFi transactions. At the same time, autonomous AI agents executing on-chain swaps lack standardized preflight security guardrails.&lt;/p&gt;

&lt;p&gt;Over the weekend for the &lt;strong&gt;MLH Solana Global Hackathon&lt;/strong&gt;, I built &lt;strong&gt;BlinkGuard&lt;/strong&gt;—a real-time, pre-sign AI transaction firewall and natural-language trading copilot on Solana.&lt;/p&gt;

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




&lt;h2&gt;
  
  
  ⚡ The Problem We Solved
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Blind Signing &amp;amp; Phishing Drainers:&lt;/strong&gt; Standard wallet approval popups obscure complex contract logic, tricking users into approving unbounded token delegations or malicious escrow instructions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unsafe AI Agent Execution:&lt;/strong&gt; Autonomous agents interacting with Solana DEXs are vulnerable to prompt injection and malicious swap routing without an independent verification layer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DeFi UX Friction:&lt;/strong&gt; Setting slippage thresholds, verifying token mints, and finding optimal liquidity routes across AMMs remains intimidating for everyday users.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  💡 How BlinkGuard Works
&lt;/h2&gt;

&lt;p&gt;BlinkGuard acts as a two-sided defensive layer on Solana:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;For End Users:&lt;/strong&gt; A conversational DeFi swap copilot powered by &lt;strong&gt;Gemini 2.5 Flash&lt;/strong&gt; and &lt;strong&gt;Jupiter V6&lt;/strong&gt;. You type plain English (e.g., &lt;em&gt;"Swap 0.5 SOL to USDC"&lt;/em&gt;), and BlinkGuard simulates the balance changes, assigns a &lt;strong&gt;0–100 Risk Score&lt;/strong&gt;, and cryptographically attests the preflight check via Phantom Wallet (&lt;code&gt;signMessage&lt;/code&gt;). If a drainer pattern or unbounded authority delegation is detected (Risk Score ≥ 80), the signature button locks automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;For Autonomous AI Agents:&lt;/strong&gt; A standardized &lt;strong&gt;Solana Agent Skill&lt;/strong&gt; endpoint (&lt;code&gt;/api/skill&lt;/code&gt;) that any agent runtime can call as zero-trust middleware before signing a transaction.&lt;/li&gt;
&lt;/ul&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
text
User / Agent Prompt
       │
       ▼
[/api/parse] (Gemini 2.5 Flash Structured Schema)
       │
       ├─► Threat Detected (Risk Score ≥ 80 / Drainer Vector)
       │     └─► [LOCK] Signature button disabled &amp;amp; malicious vector flagged
       │
       └─► Intent Benign (Risk Score &amp;lt; 20)
             │
             ├─► [Jupiter v6] Optimized swap route fetched
             ├─► [Simulation] Expected in/out token balance diffs confirmed
             └─► [Wallet] Phantom signs cryptographic preflight attestation receipt

🛠️ Tech Stack

    Frontend &amp;amp; Framework: Next.js 15 (App Router), React, Tailwind CSS, Lucide Icons

    Blockchain &amp;amp; Wallet: @solana/web3.js, Solana Wallet Adapter (Phantom, Solflare)

    AI Engine: Google GenAI SDK (gemini-2.5-flash with strict JSON Schema evaluation)

    DEX Aggregation: Jupiter Aggregator API v6

    Deployment: Vercel

🤖 Solana Agent Skill Integration (/api/skill)

To make BlinkGuard composable for other builders, it exposes a machine-readable manifest and execution handler at https://blinkguard-uoq6-six.vercel.app/api/skill.

Any AI agent can audit an intent before signing using our TypeScript SDK (lib/solanaAgentSkill.ts):
TypeScript

import { blinkGuardAgentSkill } from "@/lib/solanaAgentSkill";

// Run preflight audit before initiating wallet signature
const result = await blinkGuardAgentSkill.execute({
  prompt: "Swap 0.5 SOL to USDC",
  userAddress: "YourSolanaPublicKeyHere",
});

if (!result.allowed) {
  console.error("Execution blocked by BlinkGuard:", result.reason);
}

🔗 Try It Out &amp;amp; Source Code

    Live dApp: https://blinkguard-uoq6-six.vercel.app

    Agent Skill Endpoint: https://blinkguard-uoq6-six.vercel.app/api/skill

&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/anjarkar25-max" rel="noopener noreferrer"&gt;
        anjarkar25-max
      &lt;/a&gt; / &lt;a href="https://github.com/anjarkar25-max/blinkguard" rel="noopener noreferrer"&gt;
        blinkguard
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;🛡️ BlinkGuard&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Pre-Sign AI Transaction Firewall &amp;amp; Natural-Language Trading Copilot on Solana&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Built for the Solana Global Hackathon (Major League Hacking)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://blinkguard-uoq6-six.vercel.app" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/2d27f571e7e65466e7a8b4e270f3d5c0eea80767a3cda3f4de879b49a00c1fc7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6976655f644170702d56657263656c2d626c61636b3f7374796c653d666f722d7468652d6261646765266c6f676f3d76657263656c" alt="Live App"&gt;&lt;/a&gt;
&lt;a href="https://blinkguard-uoq6-six.vercel.app/api/skill" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/2ec6f53555e69041c16bd5cc9e07c72a416af4dedbfd149b6379efe6114b1e98/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f536f6c616e615f4167656e745f536b696c6c2d456e64706f696e742d707572706c653f7374796c653d666f722d7468652d6261646765" alt="Solana Skill"&gt;&lt;/a&gt;
&lt;a href="https://youtu.be/l7HRs26oFD8" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/00ac2a93193d3dca0a9f4a92954798ed0cf5e79c2c5cbaf98c9e7440b7751f9f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f44656d6f5f566964656f2d596f75547562652d7265643f7374796c653d666f722d7468652d6261646765266c6f676f3d796f7574756265" alt="YouTube Demo"&gt;&lt;/a&gt;
&lt;a href="https://github.com/anjarkar25-max/blinkguard/LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0ac79306c9a7268e26607c9784445f9dc06354db2ca29ea05b90d467931552e0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e7376673f7374796c653d666f722d7468652d6261646765" alt="License: MIT"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;⚡ The Problem&lt;/h2&gt;
&lt;/div&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Blind Signing &amp;amp; Phishing Drainers:&lt;/strong&gt; Users frequently authorize unbounded token delegations, malicious escrow instructions, or fake airdrop claims because standard wallet approval dialogs obscure transaction logic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Autonomous Agent Security Risks:&lt;/strong&gt; AI trading agents operating on Solana lack standardized, independent preflight execution guardrails, exposing them to prompt injections and compromised swap routes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Complex DeFi Friction:&lt;/strong&gt; Navigating decentralized exchanges, slippage thresholds, liquidity routes, and mint addresses presents a steep technical barrier for everyday users.&lt;/li&gt;
&lt;/ol&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;💡 Solution: What is BlinkGuard?&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;BlinkGuard delivers an active, two-sided defensive layer on Solana:&lt;/p&gt;


&lt;ul&gt;

&lt;li&gt;

&lt;strong&gt;For End Users:&lt;/strong&gt; A natural-language DeFi copilot that simulates transactions, scores threats (0–100), and dynamically disables signature actions upon detecting malicious drainer patterns.&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;For Autonomous AI Agents:&lt;/strong&gt; A standardized Solana Agent Skill endpoint (&lt;code&gt;/api/skill&lt;/code&gt;) and SDK (&lt;code&gt;lib/solanaAgentSkill.ts&lt;/code&gt;…&lt;/li&gt;

&lt;/ul&gt;&lt;/div&gt;
&lt;br&gt;
  &lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/anjarkar25-max/blinkguard" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;

&lt;p&gt;I would love to hear your feedback on the architecture or ideas for expanding the preflight simulation rules! Drop a comment below if you're building with Solana or AI agents. 👇&lt;br&gt;
&lt;/p&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>solana</category>
      <category>ai</category>
      <category>web3</category>
      <category>nextjs</category>
    </item>
    <item>
      <title>How I Built Lazarus: Autonomous Legacy Resurrection with Kiro Specs, Custom MCP, and Differential Fuzzing</title>
      <dc:creator>Ashlesha Anjarkar</dc:creator>
      <pubDate>Sat, 14 Nov 2026 07:23:42 +0000</pubDate>
      <link>https://dev.to/ashlesha_anjarkar_25/how-i-built-lazarus-autonomous-legacy-resurrection-with-kiro-specs-custom-mcp-and-differential-25m5</link>
      <guid>https://dev.to/ashlesha_anjarkar_25/how-i-built-lazarus-autonomous-legacy-resurrection-with-kiro-specs-custom-mcp-and-differential-25m5</guid>
      <description>&lt;p&gt;Engineering teams sit on unmaintained legacy JavaScript modules they are afraid to touch because manual rewrites introduce silent edge-case regressions. For &lt;strong&gt;Kiroween 2026&lt;/strong&gt; (Frankenstein category), I built &lt;strong&gt;Lazarus&lt;/strong&gt; — an autonomous legacy resurrection engine that stitches an isolated execution sandbox together with a 4-agent Kiro Crew and &lt;code&gt;fast-check&lt;/code&gt; property-based differential fuzzing.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Operating Table:&lt;/strong&gt; &lt;a href="https://lazarus-yf0a.onrender.com" rel="noopener noreferrer"&gt;https://lazarus-yf0a.onrender.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository &amp;amp; &lt;code&gt;.kiro/&lt;/code&gt; Artifacts:&lt;/strong&gt; &lt;a href="https://github.com/anjarkar25-max/lazarus" rel="noopener noreferrer"&gt;https://github.com/anjarkar25-max/lazarus&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Social Blitz Post (#KiroweenHackathon26):&lt;/strong&gt; &lt;a href="https://x.com/ashlesha_25/status/2121502679369421082" rel="noopener noreferrer"&gt;https://x.com/ashlesha_25/status/2121502679369421082&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why Unit Tests Miss Legacy Regressions
&lt;/h3&gt;

&lt;p&gt;Consider a classic ES5 32-bit integer truncation expression: &lt;code&gt;(n / 2) | 0&lt;/code&gt;. A naive modernization replaces &lt;code&gt;| 0&lt;/code&gt; with &lt;code&gt;Math.floor(n / 2)&lt;/code&gt;. On positive integers, both match. On negative odd integers like &lt;code&gt;-3&lt;/code&gt;, &lt;code&gt;(-3 / 2) | 0&lt;/code&gt; evaluates to &lt;code&gt;-1&lt;/code&gt;, whereas &lt;code&gt;Math.floor(-3 / 2)&lt;/code&gt; evaluates to &lt;code&gt;-2&lt;/code&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  How Lazarus Proves Behavioral Parity
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Isolated Sandbox (&lt;code&gt;src/sandbox/&lt;/code&gt;):&lt;/strong&gt; Executes untrusted legacy code in a locked-down Node child process with strict memory, timeout, filesystem, and network restrictions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom MCP Server (&lt;code&gt;lazarus-sandbox&lt;/code&gt;):&lt;/strong&gt; Exposes &lt;code&gt;run_legacy_probe&lt;/code&gt; over stdio in &lt;code&gt;.kiro/settings/mcp.json&lt;/code&gt; so agents safely probe legacy expressions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;4-Agent Kiro Crew (&lt;code&gt;.kiro/agents/&lt;/code&gt;):&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Archaeologist&lt;/strong&gt; probes boundary inputs to capture baseline runtime traces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Architect&lt;/strong&gt; synthesizes observed behavior into formal Kiro specifications.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Necromancer&lt;/strong&gt; modernizes the code to ES2022+.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exorcist&lt;/strong&gt; runs &lt;code&gt;fast-check&lt;/code&gt; differential fuzzing (&lt;code&gt;Object.is&lt;/code&gt; parity checks for &lt;code&gt;-0&lt;/code&gt; vs &lt;code&gt;+0&lt;/code&gt;, &lt;code&gt;NaN&lt;/code&gt;, and integer truncation). When Exorcist finds a divergence, it shrinks the input to a minimal counterexample and feeds it back to Necromancer to self-heal automatically.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Engineered with Kiro Spec-Driven Development
&lt;/h3&gt;

&lt;p&gt;Every subsystem in Lazarus was designed using formal requirements, architecture designs, and implementation task lists inside &lt;code&gt;.kiro/specs/&lt;/code&gt;, paired with repository-wide steering guidelines (&lt;code&gt;.kiro/steering/&lt;/code&gt;) and an automated on-save Vitest hook (&lt;code&gt;.kiro/hooks/run-tests-on-save.json&lt;/code&gt;) verifying 86 passing tests across 10 suites.&lt;/p&gt;

</description>
      <category>kiro</category>
      <category>javascript</category>
      <category>testing</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
