<?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: E_Bwill</title>
    <description>The latest articles on DEV Community by E_Bwill (@ebwi11).</description>
    <link>https://dev.to/ebwi11</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3405320%2Fdba7e3dd-e589-4860-b8bb-b242d2efb04e.png</url>
      <title>DEV Community: E_Bwill</title>
      <link>https://dev.to/ebwi11</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ebwi11"/>
    <language>en</language>
    <item>
      <title>Building AgentSmith-HUB: A High-Performance Security Data Pipeline with Real-Time Detection</title>
      <dc:creator>E_Bwill</dc:creator>
      <pubDate>Fri, 01 Aug 2025 09:26:14 +0000</pubDate>
      <link>https://dev.to/ebwi11/building-agentsmith-hub-a-high-performance-security-data-pipeline-with-real-time-detection-1h14</link>
      <guid>https://dev.to/ebwi11/building-agentsmith-hub-a-high-performance-security-data-pipeline-with-real-time-detection-1h14</guid>
      <description>&lt;p&gt;Over the past few months, I’ve been working on a project called AgentSmith-HUB. It started as an experiment to build a lightweight, flexible rules engine for security data processing, but eventually became a full platform for real-time threat detection and response.&lt;/p&gt;

&lt;p&gt;This post explains why I built it, how it works, and what kind of use cases it supports.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why I Built It
&lt;/h2&gt;

&lt;p&gt;Security teams often deal with massive volumes of logs and alerts. Traditional SIEMs can be heavy, expensive, or inflexible. In many cases, teams want to build their own detection logic, integrate with existing systems, and have full control over data pipelines.&lt;/p&gt;

&lt;p&gt;I wanted something that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Processes logs in real time&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Allows flexible detection logic (regex, thresholds, enrichment)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Supports custom plugins for threat intel lookups, automated responses, or data transformations&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Can run in distributed mode and scale easily&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Is fast enough to handle high-throughput data&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What It Is
&lt;/h2&gt;

&lt;p&gt;AgentSmith-HUB is an open-source security data pipeline platform with a built-in real-time detection engine.&lt;/p&gt;

&lt;p&gt;Main features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Flexible rules engine with a simple XML-like syntax (, , , )&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Plugin system (built-in and custom) for enrichment, alerting, and external integrations&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cluster/distributed mode for scalability&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Full-featured web UI for building and testing workflows visually&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MCP (Model Context Protocol) support, so it can integrate with LLM-based assistants for rule editing and operations&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Integrates with Kafka, Elasticsearch, and cloud logging services&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Performance
&lt;/h2&gt;

&lt;p&gt;In testing (8 complex rules), it processed around 40,000 messages per second with sub-millisecond latency on a 2‑CPU, 4‑GB server.&lt;/p&gt;

&lt;h2&gt;
  
  
  Typical Use Cases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Intrusion detection with flexible rules and enrichment&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automated response workflows (block IP, send alerts, enrich data with threat intel)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Real-time log analysis and masking of sensitive information&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A lightweight alternative to heavy SIEM setups&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Example Rule
&lt;/h2&gt;

&lt;p&gt;Here’s a simple rule that detects admin logins and appends additional fields:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight xml"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;rule&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"detect_admin_login"&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"Detect Admin Login"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;check&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"EQU"&lt;/span&gt; &lt;span class="na"&gt;field=&lt;/span&gt;&lt;span class="s"&gt;"username"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;admin&lt;span class="nt"&gt;&amp;lt;/check&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;append&lt;/span&gt; &lt;span class="na"&gt;field=&lt;/span&gt;&lt;span class="s"&gt;"alert"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;admin login detected&lt;span class="nt"&gt;&amp;lt;/append&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/rule&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The engine supports flexible execution order. You can append data before checks, use thresholds, or call custom plugins as part of rule execution.&lt;/p&gt;

&lt;h2&gt;
  
  
  More Functions Show
&lt;/h2&gt;

&lt;p&gt;Dashboard:&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%2F923funa400b7e3c6c1dh.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%2F923funa400b7e3c6c1dh.png" alt="Dashboard" width="800" height="821"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ruleset Example:&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%2F3m75h3z1d3ov6bxrssru.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%2F3m75h3z1d3ov6bxrssru.png" alt="Ruleset Example" width="800" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ruleset Example:&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%2F5jvcg8v4c1hglmja28r2.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%2F5jvcg8v4c1hglmja28r2.png" alt="Ruleset Example" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Edit Rule:&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%2Fdpu909oxqqr3g823srew.gif" 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%2Fdpu909oxqqr3g823srew.gif" alt=" " width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Edit Project:&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%2F2gemuebw79o17clfga7p.gif" 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%2F2gemuebw79o17clfga7p.gif" alt=" " width="" height=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Push Changes:&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%2Fc4ker7s3d283ho4yzh8t.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%2Fc4ker7s3d283ho4yzh8t.png" alt="Push Changes" width="800" height="446"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ruleset Test:&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%2F1l8g3c60ydgt9zhj4an8.gif" 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%2F1l8g3c60ydgt9zhj4an8.gif" alt=" " width="720" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;MCP:&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%2Faqfolw5kt81pvb1zruln.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%2Faqfolw5kt81pvb1zruln.png" alt="MCP" width="800" height="1507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Plugin Test:&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%2Fykmar9uvz837i5mrm9mx.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%2Fykmar9uvz837i5mrm9mx.png" alt="Plugin Test" width="800" height="625"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Search:&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%2F9zt5sa3bgq3asc285ogk.gif" 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%2F9zt5sa3bgq3asc285ogk.gif" alt=" " width="720" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What’s Next
&lt;/h2&gt;

&lt;p&gt;I’m planning to add more built-in plugins, improve cluster management, and explore deeper MCP-based integrations for LLM-assisted SOC operations.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;p&gt;GitHub: &lt;a href="https://github.com/EBWi11/AgentSmith-HUB" rel="noopener noreferrer"&gt;https://github.com/EBWi11/AgentSmith-HUB&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you’ve built similar tools or worked on custom detection pipelines, I’d love to hear your thoughts and feedback!&lt;/p&gt;

</description>
      <category>security</category>
      <category>cybersecurity</category>
    </item>
  </channel>
</rss>
