<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>GitHub &#183; PiniShv</title><link>https://pinishv.com/tags/github/</link><description>Pini Shvartsman leads AI transformation inside a 100+ engineer SaaS org. Field notes on autonomous engineering: AI-powered execution, human accountability.</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Pini Shvartsman</copyright><lastBuildDate>Sun, 05 Apr 2026 10:00:00 +0200</lastBuildDate><atom:link href="https://pinishv.com/tags/github/index.xml" rel="self" type="application/rss+xml"/><item><title>The IDE Is Becoming Mission Control</title><link>https://pinishv.com/articles/ide-becoming-mission-control/</link><pubDate>Sun, 05 Apr 2026 10:00:00 +0200</pubDate><guid>https://pinishv.com/articles/ide-becoming-mission-control/</guid><description>Cursor 3 rebuilt its UI around agents. GitHub calls Agent HQ &amp;lsquo;mission control.&amp;rsquo; VS Code is &amp;lsquo;your home for multi-agent development.&amp;rsquo; JetBrains Air says the quiet part out loud: build tools around the agent, not the editor. The file tree isn&amp;rsquo;t disappearing. It&amp;rsquo;s just no longer the main character.</description><content:encoded>&lt;p>Something happened in the last few months that&amp;rsquo;s bigger than any single product launch.&lt;/p>
&lt;p>&lt;a
href="https://cursor.com/blog/cursor-3"
target="_blank"
>Cursor 3&lt;/a> rebuilt its interface from scratch &amp;ldquo;centered around agents.&amp;rdquo; &lt;a
href="https://github.blog/news-insights/company-news/welcome-home-agents/"
target="_blank"
>GitHub Agent HQ&lt;/a> calls its control surface &amp;ldquo;mission control.&amp;rdquo; &lt;a
href="https://code.visualstudio.com/blogs/2026/02/05/multi-agent-development"
target="_blank"
>VS Code&lt;/a> describes itself as &amp;ldquo;your home for multi-agent development.&amp;rdquo; &lt;a
href="https://blog.jetbrains.com/fleet/2025/12/the-future-of-fleet/"
target="_blank"
>JetBrains Air&lt;/a> says the quiet part out loud: traditional IDEs add tools to the editor, while Air &amp;ldquo;builds tools around the agent.&amp;rdquo;&lt;/p>
&lt;p>That&amp;rsquo;s not one company experimenting. That&amp;rsquo;s every major vendor converging on the same architectural shift.&lt;/p>
&lt;p>The IDE is becoming mission control. The file tree isn&amp;rsquo;t disappearing. It&amp;rsquo;s just no longer the main character.&lt;/p>
&lt;h2 class="relative group">What actually changed
&lt;div id="what-actually-changed" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#what-actually-changed" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>I &lt;a
href="https://pinishv.com/articles/the-magic-behind-ai-ides-how-cursor-windsurf-and-friends-actually-work/">wrote about how AI IDEs work&lt;/a> last year. Back then the story was three systems in a trench coat: autocomplete, context engine, agent harness. The editor was still the center. The AI was a feature bolted on.&lt;/p>
&lt;p>That&amp;rsquo;s not what&amp;rsquo;s happening now. The center of gravity is moving. The primary surface is shifting from &amp;ldquo;navigate files and type code&amp;rdquo; to &amp;ldquo;assign, monitor, steer, and review agent work.&amp;rdquo;&lt;/p>
&lt;p>Look at what the vendors are actually building:&lt;/p>
&lt;p>&lt;strong>Cursor 3&lt;/strong> puts all local and cloud agents in one sidebar, including ones started from mobile, web, Slack, GitHub, and Linear. That&amp;rsquo;s closer to an operations console than a code explorer.&lt;/p>
&lt;p>&lt;strong>GitHub&lt;/strong> added an Agents tab directly inside repositories with a &amp;ldquo;mission control style view.&amp;rdquo; You choose from a fleet of agents, assign work in parallel, and track progress from any device. I &lt;a
href="https://pinishv.com/articles/github-agent-hq-mission-control/">covered Agent HQ&lt;/a> when it launched. This is the next step.&lt;/p>
&lt;p>&lt;strong>&lt;a
href="https://windsurf.com/editor"
target="_blank"
>Windsurf&lt;/a>&lt;/strong> added parallel multi-agent sessions, Git worktrees, and side-by-side Cascade panes. Its vocabulary is plans, todo lists, queued messages, simultaneous cascades, and workflows. That&amp;rsquo;s orchestration language, not file navigation language.&lt;/p>
&lt;p>&lt;strong>&lt;a
href="https://blog.replit.com/2025-replit-in-review"
target="_blank"
>Replit&lt;/a>&lt;/strong> says the platform became &amp;ldquo;Agent-first.&amp;rdquo; Agent 4 adds parallel agents, visible task progress, and the ability to design while the agent builds in the background. That&amp;rsquo;s basically a kanban board fused with an IDE.&lt;/p>
&lt;p>&lt;strong>&lt;a
href="https://firebase.google.com/docs/studio"
target="_blank"
>Firebase Studio&lt;/a>&lt;/strong> describes itself as an agentic cloud-based development environment. But Google&amp;rsquo;s newer &lt;a
href="https://antigravity.google"
target="_blank"
>Antigravity&lt;/a> is the one that says the quiet part out loud. Their tagline: &amp;ldquo;evolving the IDE into the agent-first era.&amp;rdquo; They explicitly frame it as: &amp;ldquo;the tools of yesterday focused on helping you write code faster; the tools of tomorrow need to help you orchestrate it.&amp;rdquo; That&amp;rsquo;s not an AI feature added to an editor. That&amp;rsquo;s a new product category.&lt;/p>
&lt;p>&lt;strong>&lt;a
href="https://zed.dev/agentic"
target="_blank"
>Zed&lt;/a>&lt;/strong> added Agentic Editing, third-party agents through ACP, and says the goal is switching between multiple agents without switching editors. Their roadmap includes subagent support and multi-agent collaboration.&lt;/p>
&lt;p>Every one of these announcements uses the same vocabulary: agents, sessions, tasks, parallel work, orchestration, monitoring. Not files, buffers, tabs, and syntax highlighting.&lt;/p>
&lt;h2 class="relative group">Not everyone is moving at the same speed
&lt;div id="not-everyone-is-moving-at-the-same-speed" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#not-everyone-is-moving-at-the-same-speed" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>There&amp;rsquo;s useful nuance here.&lt;/p>
&lt;p>&lt;strong>VS Code and Zed&lt;/strong> are still fundamentally editors that are becoming multi-agent hosts. The file tree is still front and center. The agents are a powerful addition, but the architecture is additive.&lt;/p>
&lt;p>&lt;strong>Cursor, Windsurf, and Replit&lt;/strong> are further along. The center of gravity has shifted toward session and task management. The code is still there, but it&amp;rsquo;s becoming a drill-down surface rather than the starting point.&lt;/p>
&lt;p>&lt;strong>JetBrains Air and Google Antigravity&lt;/strong> are the clearest examples of vendors saying, explicitly, that the editor is no longer the thing the rest of the product is built around. Air exists specifically because JetBrains decided another editor wasn&amp;rsquo;t enough differentiation and killed Fleet to focus on agentic workflows.&lt;/p>
&lt;p>That spectrum matters. If you&amp;rsquo;re evaluating tools for your team, know where on this axis you&amp;rsquo;re comfortable. Some teams want an editor that happens to run agents. Some want an agent platform that happens to have an editor. Those are different products for different stages of trust.&lt;/p>
&lt;h2 class="relative group">What this actually means
&lt;div id="what-this-actually-means" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#what-this-actually-means" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>This is a change in power structure.&lt;/p>
&lt;p>For decades, the code editor held a monopoly as the primary surface of software development. You lived in it. Everything started there. The file tree was your map of the project.&lt;/p>
&lt;p>That monopoly is ending. The editor is becoming one pane inside a larger agent-control system. You still need it. But you also need a task view, a session manager, an agent roster, a monitoring surface, and a way to review what shipped while you were doing something else.&lt;/p>
&lt;p>I wrote about &lt;a
href="https://pinishv.com/articles/cursor-automations-ai-stopped-waiting/">Cursor Automations&lt;/a> triggering agents from events. I wrote about &lt;a
href="https://pinishv.com/articles/claude-computer-use-dispatch/">Claude&amp;rsquo;s computer use&lt;/a> controlling your desktop from your phone. I wrote about &lt;a
href="https://pinishv.com/articles/deerflow-bytedance-super-agent-harness/">DeerFlow&lt;/a> orchestrating sub-agents in sandboxes. All of those are pieces of the same shift. The IDE is becoming the place where you manage all of it.&lt;/p>
&lt;p>The engineers who adapt will treat their IDE the way a DevOps engineer treats a dashboard: a control surface for work happening across multiple systems, some of it human, some of it autonomous, most of it concurrent.&lt;/p>
&lt;p>The ones who don&amp;rsquo;t will wonder why their editor feels increasingly like the wrong tool for the job.&lt;/p>
&lt;hr>
&lt;p>&lt;em>How is your IDE workflow changing with agents? Still file-first or shifting to something else? I&amp;rsquo;d love to hear it. Find me on &lt;a
href="https://x.com/PiniShv"
target="_blank"
>X&lt;/a> or &lt;a
href="https://t.me/by_Pini"
target="_blank"
>Telegram&lt;/a>.&lt;/em>&lt;/p></content:encoded><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://pinishv.com/articles/ide-becoming-mission-control/feature.png"/></item><item><title>Glassworm Is Back. Your Code Review Won't Catch It.</title><link>https://pinishv.com/articles/glassworm-invisible-unicode-supply-chain/</link><pubDate>Sun, 22 Mar 2026 20:00:00 +0200</pubDate><guid>https://pinishv.com/articles/glassworm-invisible-unicode-supply-chain/</guid><description>151 malicious packages in one week. The payload is invisible. Literally invisible. Glassworm uses Unicode characters that don&amp;rsquo;t render in any editor, terminal, or code review tool. And the cover commits are AI-generated. Here&amp;rsquo;s how it works and why your current defenses probably miss it.</description><content:encoded>&lt;p>Between March 3 and 9, 2026, &lt;a
href="https://www.aikido.dev/blog/the-return-of-the-invisible-threat-hidden-pua-unicode-hits-github-repositorties"
target="_blank"
>Aikido Security documented&lt;/a> 151 malicious packages uploaded across GitHub repositories, npm, and the VS Code/Open VSX marketplace. The campaign is called Glassworm, and it&amp;rsquo;s back for a second wave after first appearing in March 2025.&lt;/p>
&lt;p>What makes Glassworm different from most supply chain attacks is the technique. The malicious payload is invisible. Not obfuscated. Not minified. &lt;a
href="https://agent-wars.com/news/2026-03-14-glassworm-unicode-pua-supply-chain-attack"
target="_blank"
>Invisible&lt;/a>.&lt;/p>
&lt;p>I&amp;rsquo;ve been writing about &lt;a
href="https://pinishv.com/articles/ai-browser-hijacking-how-companies-fight-prompt-injection/">AI security threats&lt;/a> and &lt;a
href="https://pinishv.com/articles/securing-the-ai-supply-chain/">supply chain risks&lt;/a> for a while. Glassworm is the kind of attack that should change how you think about what &amp;ldquo;reviewing code&amp;rdquo; actually means.&lt;/p>
&lt;h2 class="relative group">How it works
&lt;div id="how-it-works" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#how-it-works" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>Unicode has a range called the Private Use Area (PUA): characters from &lt;code>U+FE00&lt;/code> to &lt;code>U+FE0F&lt;/code> and &lt;code>U+E0100&lt;/code> to &lt;code>U+E01EF&lt;/code>. These characters are valid Unicode. They exist in the spec. But they don&amp;rsquo;t render. Not in VS Code. Not in your terminal. Not in GitHub&amp;rsquo;s diff view. Not in any standard code review interface.&lt;/p>
&lt;p>Glassworm encodes malicious JavaScript payloads as sequences of these invisible characters, stuffed inside what looks like an empty string. The actual code in the file looks something like this:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="kr">const&lt;/span> &lt;span class="nx">s&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">v&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="p">[...&lt;/span>&lt;span class="nx">v&lt;/span>&lt;span class="p">].&lt;/span>&lt;span class="nx">map&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">w&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="p">(&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">w&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nx">w&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">codePointAt&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">),&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">w&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mh">0xFE00&lt;/span> &lt;span class="o">&amp;amp;&amp;amp;&lt;/span> &lt;span class="nx">w&lt;/span> &lt;span class="o">&amp;lt;=&lt;/span> &lt;span class="mh">0xFE0F&lt;/span> &lt;span class="o">?&lt;/span> &lt;span class="nx">w&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mh">0xFE00&lt;/span> &lt;span class="o">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="nx">w&lt;/span> &lt;span class="o">&amp;gt;=&lt;/span> &lt;span class="mh">0xE0100&lt;/span> &lt;span class="o">&amp;amp;&amp;amp;&lt;/span> &lt;span class="nx">w&lt;/span> &lt;span class="o">&amp;lt;=&lt;/span> &lt;span class="mh">0xE01EF&lt;/span> &lt;span class="o">?&lt;/span> &lt;span class="nx">w&lt;/span> &lt;span class="o">-&lt;/span> &lt;span class="mh">0xE0100&lt;/span> &lt;span class="o">+&lt;/span> &lt;span class="mi">16&lt;/span> &lt;span class="o">:&lt;/span> &lt;span class="kc">null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">)).&lt;/span>&lt;span class="nx">filter&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">n&lt;/span> &lt;span class="p">=&amp;gt;&lt;/span> &lt;span class="nx">n&lt;/span> &lt;span class="o">!==&lt;/span> &lt;span class="kc">null&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nb">eval&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">Buffer&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">from&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">s&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="sb">``&lt;/span>&lt;span class="p">)).&lt;/span>&lt;span class="nx">toString&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;utf-8&amp;#39;&lt;/span>&lt;span class="p">));&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Those backticks at the end look empty. They&amp;rsquo;re not. They contain hundreds of invisible PUA characters that, when decoded by the function above, produce a full malicious payload. The &lt;code>eval()&lt;/code> executes it at runtime. No visible trace in the source file.&lt;/p>
&lt;p>The decoded payloads steal tokens, credentials, and secrets, using Solana blockchain as the command-and-control channel to make the exfiltration harder to trace and block.&lt;/p>
&lt;h2 class="relative group">Why this is harder to catch than you think
&lt;div id="why-this-is-harder-to-catch-than-you-think" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#why-this-is-harder-to-catch-than-you-think" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>Traditional code review fails completely against this. A human looking at the diff sees a small utility function and an empty string. Syntax highlighting doesn&amp;rsquo;t flag it. Linting doesn&amp;rsquo;t catch it because the characters are valid Unicode. Grep doesn&amp;rsquo;t find it because you can&amp;rsquo;t search for characters you can&amp;rsquo;t see.&lt;/p>
&lt;p>AI code review tools face the same problem. They operate on the visible text of the code. If the malicious content is invisible characters inside a string literal, the model sees an empty string. The &lt;a
href="https://techcrunch.com/2026/03/09/anthropic-launches-code-review-tool-to-check-flood-of-ai-generated-code"
target="_blank"
>Anthropic Code Review tool&lt;/a> that launched this month dispatches agents to analyze PRs for bugs and security issues. But if the payload isn&amp;rsquo;t visible in the code representation the model receives, it doesn&amp;rsquo;t get analyzed.&lt;/p>
&lt;p>And Glassworm&amp;rsquo;s operators are making detection even harder. The visible parts of malicious commits, the parts humans and AI can see, are &lt;a
href="https://agent-wars.com/news/2026-03-15-glassworm-returns-invisible-unicode-attacks-hit-150-github-repos-npm-and-vs-code"
target="_blank"
>deliberately convincing&lt;/a>. Documentation tweaks. Version bumps. Minor bug fixes. Stylistically consistent with the target repository. Security researchers believe attackers are using LLMs to generate these cover changes at scale across 151+ different codebases.&lt;/p>
&lt;p>So you have AI generating realistic-looking innocent commits to cover payloads that are invisible to both human reviewers and AI reviewers. That&amp;rsquo;s a new class of problem.&lt;/p>
&lt;h2 class="relative group">What this means for your team
&lt;div id="what-this-means-for-your-team" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#what-this-means-for-your-team" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>If you&amp;rsquo;re pulling npm packages, installing VS Code extensions, or depending on open source libraries (so, everyone), here&amp;rsquo;s what matters:&lt;/p>
&lt;p>&lt;strong>Your current review process probably doesn&amp;rsquo;t detect this.&lt;/strong> Unless your toolchain specifically scans for Unicode PUA characters in source files, invisible payloads pass through. &lt;a
href="https://snyk.io/articles/defending-against-glassworm/"
target="_blank"
>Snyk&amp;rsquo;s analysis&lt;/a> recommends detecting Unicode characters by category rather than maintaining explicit character lists, which means your existing SAST tools need updating.&lt;/p>
&lt;p>&lt;strong>Pin your dependencies and audit updates.&lt;/strong> Glassworm targets existing repos with seemingly innocent version bumps and doc changes. If you auto-merge dependency updates or trust patch versions without review, you&amp;rsquo;re exposed.&lt;/p>
&lt;p>&lt;strong>Scan for &lt;code>eval()&lt;/code> and dynamic execution patterns.&lt;/strong> The invisible payload still needs &lt;code>eval()&lt;/code> or an equivalent to execute. Static analysis rules that flag dynamic code execution in dependency code are your best early warning.&lt;/p>
&lt;p>&lt;strong>Be suspicious of repos you haven&amp;rsquo;t verified recently.&lt;/strong> Some of the compromised repos had over 1,400 GitHub stars. Popularity doesn&amp;rsquo;t mean safety. The Wasmer WebAssembly runtime was among the targeted projects.&lt;/p>
&lt;p>&lt;strong>VS Code extensions are a vector.&lt;/strong> Glassworm hit the Open VSX marketplace too. Extensions run with significant privileges. If your team installs extensions casually, you have an unmonitored attack surface.&lt;/p>
&lt;h2 class="relative group">The bigger picture
&lt;div id="the-bigger-picture" class="anchor">&lt;/div>
&lt;span
class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100 select-none">
&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700 !no-underline" href="#the-bigger-picture" aria-label="Anchor">#&lt;/a>
&lt;/span>
&lt;/h2>
&lt;p>I&amp;rsquo;ve written about &lt;a
href="https://pinishv.com/articles/ai-security-culture-problem/">AI security as a culture problem&lt;/a> and &lt;a
href="https://pinishv.com/articles/building-ai-systems-that-dont-break-under-attack/">building systems that don&amp;rsquo;t break under attack&lt;/a>. Glassworm sits at the intersection of two trends I keep coming back to.&lt;/p>
&lt;p>First, AI is accelerating both sides. Defenders are using AI to review code faster. Attackers are using AI to generate convincing cover commits at scale. The speed advantage isn&amp;rsquo;t one-sided.&lt;/p>
&lt;p>Second, the supply chain is where the real vulnerability concentration lives. Your code might be clean. Your review process might be solid. But if one of your 400 transitive dependencies gets compromised with an invisible payload that no human or AI reviewer can see, none of that matters.&lt;/p>
&lt;p>Glassworm didn&amp;rsquo;t exploit a zero-day. It didn&amp;rsquo;t find a novel vulnerability. It exploited the gap between what we look at and what we actually see. That gap is getting wider as codebases grow faster, reviews get thinner, and both sides of the attack use AI to scale.&lt;/p>
&lt;p>The fix isn&amp;rsquo;t one tool or one policy. It&amp;rsquo;s treating your supply chain with the same paranoia you&amp;rsquo;d treat your own production code. Because right now, for a lot of teams, that&amp;rsquo;s the door nobody&amp;rsquo;s watching.&lt;/p>
&lt;hr>
&lt;p>&lt;em>Seen something like Glassworm in your own supply chain? Dealing with invisible threats in your dependencies? I&amp;rsquo;d love to hear about it. Find me on &lt;a
href="https://x.com/PiniShv"
target="_blank"
>X&lt;/a> or &lt;a
href="https://t.me/by_Pini"
target="_blank"
>Telegram&lt;/a>.&lt;/em>&lt;/p></content:encoded><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://pinishv.com/articles/glassworm-invisible-unicode-supply-chain/feature.png"/></item></channel></rss>