<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://ramadanma.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://ramadanma.github.io/" rel="alternate" type="text/html" /><updated>2026-06-29T17:16:34+08:00</updated><id>https://ramadanma.github.io/feed.xml</id><title type="html">Ramadan Ma</title><subtitle>专注于 AI 视觉应用与智能体系统的全链路开发，涵盖 YOLO 模型训练、RAG 知识库、智能体节点开发与生产部署。</subtitle><author><name>Ramadan Ma</name><email>yijium9@outlook.com</email></author><entry><title type="html">ran-agent：邮件驱动的多功能 AI 智能体</title><link href="https://ramadanma.github.io/2026/06/29/ranagent/" rel="alternate" type="text/html" title="ran-agent：邮件驱动的多功能 AI 智能体" /><published>2026-06-29T16:00:00+08:00</published><updated>2026-06-29T16:00:00+08:00</updated><id>https://ramadanma.github.io/2026/06/29/ranagent</id><content type="html" xml:base="https://ramadanma.github.io/2026/06/29/ranagent/"><![CDATA[<div class="lang-block" data-lang="zh">

  <p><a href="https://github.com/ramadanma/ran-agent"><img src="https://img.shields.io/badge/GitHub-ran--agent-181717?style=flat-square&amp;logo=github" alt="GitHub" /></a>
<img src="https://img.shields.io/badge/Python-3776AB?style=flat-square&amp;logo=python&amp;logoColor=white" alt="Python" />
<img src="https://img.shields.io/badge/Claude-D97757?style=flat-square" alt="Claude" />
<img src="https://img.shields.io/badge/MCP-111827?style=flat-square" alt="MCP" /></p>

  <p><strong>ran-agent</strong> 是一个以邮件为指令入口、可配置智能体群组的多功能 AI 智能体系统。</p>

  <h2 id="section">背景</h2>

  <p>OpenClaw 火了之后，我想真正搞懂这类 AI 编程助手产品背后的工作原理——Skill、Tool Call、Agent Loop 是怎么跑起来的。于是我借助 Claude Code 从零开发了这个项目。</p>

  <p>由于在 Windows 环境下开发，无法使用 macOS 特有的系统级多端调用能力，我换了一个思路：<strong>用邮件作为指令通道</strong>——用户向指定邮箱发送命令，智能体接收、解析并执行，再将结果回复到邮箱。</p>

  <h2 id="section-1">主要功能</h2>

  <ul>
    <li><strong>邮件指令触发</strong> — 向指定邮箱发送自然语言命令，触发智能体执行任务</li>
    <li><strong>智能体群组配置</strong> — 在管理页面配置多个 Agent，协作完成复杂任务</li>
    <li><strong>工具调用支持</strong> — 集成 MCP 等工具调用协议，扩展 Agent 能力边界</li>
    <li><strong>跨平台运行</strong> — 基于 Python 开发，Windows / macOS / Linux 均可部署</li>
  </ul>

  <h2 id="section-2">工作原理</h2>

  <div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>用户发送邮件命令
      ↓
邮件监听服务解析指令
      ↓
调度到对应 Agent（或 Agent 群组）
      ↓
Agent 执行任务（含工具调用）
      ↓
结果回复到邮箱
</code></pre></div>  </div>

  <h2 id="section-3">技术选型</h2>

  <table>
    <thead>
      <tr>
        <th>模块</th>
        <th>技术</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Agent 推理</td>
        <td>Claude API</td>
      </tr>
      <tr>
        <td>工具调用</td>
        <td>MCP（Model Context Protocol）</td>
      </tr>
      <tr>
        <td>指令通道</td>
        <td>SMTP / IMAP（邮件收发）</td>
      </tr>
      <tr>
        <td>开发框架</td>
        <td>Python</td>
      </tr>
    </tbody>
  </table>

  <h2 id="section-4">项目地址</h2>

  <p><a href="https://github.com/ramadanma/ran-agent">github.com/ramadanma/ran-agent</a></p>

</div>

<div class="lang-block" data-lang="en">

  <p><a href="https://github.com/ramadanma/ran-agent"><img src="https://img.shields.io/badge/GitHub-ran--agent-181717?style=flat-square&amp;logo=github" alt="GitHub" /></a>
<img src="https://img.shields.io/badge/Python-3776AB?style=flat-square&amp;logo=python&amp;logoColor=white" alt="Python" />
<img src="https://img.shields.io/badge/Claude-D97757?style=flat-square" alt="Claude" />
<img src="https://img.shields.io/badge/MCP-111827?style=flat-square" alt="MCP" /></p>

  <p><strong>ran-agent</strong> is a multi-function AI agent system that accepts commands via email and supports configurable agent groups.</p>

  <h2 id="background">Background</h2>

  <p>After OpenClaw gained traction, I wanted to understand how AI coding-assistant products actually work under the hood — how Skills, Tool Calls, and Agent Loops are executed. So I built this project from scratch using Claude Code.</p>

  <p>Developing on Windows, I didn’t have access to the system-level multi-platform calling capabilities available on macOS, so I took a different approach: <strong>using email as the command channel</strong>. Users send a natural-language command to a designated mailbox; the agent receives, parses, and executes it, then replies with the result.</p>

  <h2 id="key-features">Key Features</h2>

  <ul>
    <li><strong>Email Command Trigger</strong> — Send natural-language commands to a mailbox; the agent picks them up and runs</li>
    <li><strong>Agent Group Configuration</strong> — Set up multiple agents on a management page and have them collaborate on complex tasks</li>
    <li><strong>Tool Call Support</strong> — Integrates MCP and other tool-call protocols to extend agent capabilities</li>
    <li><strong>Cross-platform</strong> — Python-based; runs on Windows, macOS, and Linux</li>
  </ul>

  <h2 id="how-it-works">How It Works</h2>

  <div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>User sends an email command
          ↓
Mail listener parses the instruction
          ↓
Dispatched to the relevant Agent (or Agent group)
          ↓
Agent executes the task (with tool calls as needed)
          ↓
Result is sent back by email
</code></pre></div>  </div>

  <h2 id="tech-stack">Tech Stack</h2>

  <table>
    <thead>
      <tr>
        <th>Module</th>
        <th>Technology</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Agent Reasoning</td>
        <td>Claude API</td>
      </tr>
      <tr>
        <td>Tool Calls</td>
        <td>MCP (Model Context Protocol)</td>
      </tr>
      <tr>
        <td>Command Channel</td>
        <td>SMTP / IMAP (email)</td>
      </tr>
      <tr>
        <td>Runtime</td>
        <td>Python</td>
      </tr>
    </tbody>
  </table>

  <h2 id="repository">Repository</h2>

  <p><a href="https://github.com/ramadanma/ran-agent">github.com/ramadanma/ran-agent</a></p>

</div>]]></content><author><name>Ramadan Ma</name><email>yijium9@outlook.com</email></author><category term="开源项目" /><category term="AI Agent" /><category term="Python" /><category term="MCP" /><category term="自动化" /><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">RanVision：自定义规则 YOLO 检测系统</title><link href="https://ramadanma.github.io/2026/06/29/ranvision/" rel="alternate" type="text/html" title="RanVision：自定义规则 YOLO 检测系统" /><published>2026-06-29T15:00:00+08:00</published><updated>2026-06-29T15:00:00+08:00</updated><id>https://ramadanma.github.io/2026/06/29/ranvision</id><content type="html" xml:base="https://ramadanma.github.io/2026/06/29/ranvision/"><![CDATA[<div class="lang-block" data-lang="zh">

  <p><a href="https://github.com/ramadanma/RanVision"><img src="https://img.shields.io/badge/GitHub-RanVision-181717?style=flat-square&amp;logo=github" alt="GitHub" /></a>
<img src="https://img.shields.io/badge/Python-3776AB?style=flat-square&amp;logo=python&amp;logoColor=white" alt="Python" />
<img src="https://img.shields.io/badge/YOLO-111827?style=flat-square" alt="YOLO" />
<img src="https://img.shields.io/badge/OpenCV-5C3EE8?style=flat-square&amp;logo=opencv&amp;logoColor=white" alt="OpenCV" /></p>

  <p><strong>RanVision</strong> 是一个基于 YOLO 的可视化人员检测系统，支持自定义规则，并在触发时自动发送报告。</p>

  <h2 id="section">背景</h2>

  <p>在视觉 AI 的日常工作中，我接触了大量安全监控、人员统计、行为合规等场景。每个项目都需要重新搭建一套检测流程，配置起来繁琐重复。于是我想做一个通用的框架——接入任意视频源，定义规则，触发时自动通知。</p>

  <h2 id="section-1">主要功能</h2>

  <ul>
    <li><strong>自定义检测区域</strong> — 在视频画面中划定 ROI 区域，仅对区域内的目标生效</li>
    <li><strong>灵活的规则配置</strong> — 设定人员数量、停留时长、进出方向等触发条件</li>
    <li><strong>多通道报告推送</strong> — 触发后通过 Email 或 HTTP 接口发送截图与事件描述</li>
    <li><strong>多视频源支持</strong> — 兼容本地摄像头、RTSP 流、本地视频文件</li>
  </ul>

  <h2 id="section-2">技术栈</h2>

  <table>
    <thead>
      <tr>
        <th>模块</th>
        <th>技术</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>目标检测</td>
        <td>YOLOv8（Ultralytics）</td>
      </tr>
      <tr>
        <td>图像处理</td>
        <td>OpenCV</td>
      </tr>
      <tr>
        <td>推理加速</td>
        <td>CUDA / ONNX Runtime</td>
      </tr>
      <tr>
        <td>通知推送</td>
        <td>SMTP（Email）、HTTP Webhook</td>
      </tr>
    </tbody>
  </table>

  <h2 id="section-3">使用场景</h2>

  <ul>
    <li>安全监控：检测禁区内是否有人员</li>
    <li>人员统计：统计区域内同一时刻的人数</li>
    <li>行为合规：检测人员在指定区域的停留时长</li>
  </ul>

  <h2 id="section-4">项目地址</h2>

  <p><a href="https://github.com/ramadanma/RanVision">github.com/ramadanma/RanVision</a></p>

</div>

<div class="lang-block" data-lang="en">

  <p><a href="https://github.com/ramadanma/RanVision"><img src="https://img.shields.io/badge/GitHub-RanVision-181717?style=flat-square&amp;logo=github" alt="GitHub" /></a>
<img src="https://img.shields.io/badge/Python-3776AB?style=flat-square&amp;logo=python&amp;logoColor=white" alt="Python" />
<img src="https://img.shields.io/badge/YOLO-111827?style=flat-square" alt="YOLO" />
<img src="https://img.shields.io/badge/OpenCV-5C3EE8?style=flat-square&amp;logo=opencv&amp;logoColor=white" alt="OpenCV" /></p>

  <p><strong>RanVision</strong> is a YOLO-based visual person detection system with a custom rule engine that automatically sends reports when conditions are triggered.</p>

  <h2 id="background">Background</h2>

  <p>Through daily work in visual AI — security monitoring, headcount analytics, behavioral compliance — I found myself rebuilding the same detection pipeline for each new project. I wanted a general-purpose framework: connect any video source, define rules, get notified when they fire.</p>

  <h2 id="key-features">Key Features</h2>

  <ul>
    <li><strong>Custom Detection Zones</strong> — Draw ROI regions on the video frame; rules apply only within them</li>
    <li><strong>Flexible Rule Configuration</strong> — Set conditions based on person count, dwell time, entry/exit direction, and more</li>
    <li><strong>Multi-channel Report Delivery</strong> — When triggered, send screenshots and event descriptions via Email or HTTP webhook</li>
    <li><strong>Multiple Video Sources</strong> — Supports local cameras, RTSP streams, and local video files</li>
  </ul>

  <h2 id="tech-stack">Tech Stack</h2>

  <table>
    <thead>
      <tr>
        <th>Module</th>
        <th>Technology</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Object Detection</td>
        <td>YOLOv8 (Ultralytics)</td>
      </tr>
      <tr>
        <td>Image Processing</td>
        <td>OpenCV</td>
      </tr>
      <tr>
        <td>Inference Acceleration</td>
        <td>CUDA / ONNX Runtime</td>
      </tr>
      <tr>
        <td>Notification Delivery</td>
        <td>SMTP (Email), HTTP Webhook</td>
      </tr>
    </tbody>
  </table>

  <h2 id="use-cases">Use Cases</h2>

  <ul>
    <li><strong>Security Monitoring</strong> — Detect unauthorized presence in restricted zones</li>
    <li><strong>Headcount Analytics</strong> — Count the number of people in an area at any given moment</li>
    <li><strong>Behavioral Compliance</strong> — Measure how long personnel remain in a designated zone</li>
  </ul>

  <h2 id="repository">Repository</h2>

  <p><a href="https://github.com/ramadanma/RanVision">github.com/ramadanma/RanVision</a></p>

</div>]]></content><author><name>Ramadan Ma</name><email>yijium9@outlook.com</email></author><category term="开源项目" /><category term="YOLO" /><category term="OpenCV" /><category term="Python" /><category term="计算机视觉" /><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">RanTerm：专为 macOS 设计的 SSH &amp;amp; SFTP 客户端</title><link href="https://ramadanma.github.io/2026/06/29/ranterm/" rel="alternate" type="text/html" title="RanTerm：专为 macOS 设计的 SSH &amp;amp; SFTP 客户端" /><published>2026-06-29T14:00:00+08:00</published><updated>2026-06-29T14:00:00+08:00</updated><id>https://ramadanma.github.io/2026/06/29/ranterm</id><content type="html" xml:base="https://ramadanma.github.io/2026/06/29/ranterm/"><![CDATA[<div class="lang-block" data-lang="zh">

  <p><a href="https://apps.apple.com/us/app/ranterm/id6777069968?mt=12"><img src="https://img.shields.io/badge/Mac%20App%20Store-RanTerm-0D96F6?style=flat-square&amp;logo=apple&amp;logoColor=white" alt="Mac App Store" /></a>
<img src="https://img.shields.io/badge/macOS-000000?style=flat-square&amp;logo=apple&amp;logoColor=white" alt="macOS" />
<img src="https://img.shields.io/badge/C%23-239120?style=flat-square&amp;logo=csharp&amp;logoColor=white" alt="C#" /></p>

  <p><strong>RanTerm</strong> 是我独立开发并上架 Mac App Store 的 macOS SSH &amp; SFTP 终端工具。</p>

  <h2 id="section">做这个工具的原因</h2>

  <p>接触过很多远程连接工具，MobaXterm 让我印象最深——它能实时浏览远程目录、在线编辑文件，功能很强大。但它是 Windows 工具，在 macOS 上没有对应的原生替代品，体验上总差一点。</p>

  <p>日常工作里需要频繁连接训练机、标注机、部署服务器，SSH 和 SFTP 是每天都离不开的操作。于是我决定自己做一个——Mac 原生、够用、不臃肿。</p>

  <h2 id="section-1">主要功能</h2>

  <ul>
    <li><strong>SSH 终端连接</strong> — 支持密码和密钥认证，多标签管理会话</li>
    <li><strong>SFTP 文件管理</strong> — 可视化浏览远程目录，拖拽传输文件</li>
    <li><strong>多会话管理</strong> — 同时保持多个连接，快速切换</li>
    <li><strong>macOS 原生体验</strong> — 遵循 macOS 设计规范，轻量、流畅</li>
  </ul>

  <h2 id="section-2">下载</h2>

  <p><a href="https://apps.apple.com/us/app/ranterm/id6777069968?mt=12">Mac App Store → RanTerm</a></p>

  <p>有问题或建议欢迎通过 <a href="mailto:yijium9@outlook.com">邮件</a> 联系我。</p>

</div>

<div class="lang-block" data-lang="en">

  <p><a href="https://apps.apple.com/us/app/ranterm/id6777069968?mt=12"><img src="https://img.shields.io/badge/Mac%20App%20Store-RanTerm-0D96F6?style=flat-square&amp;logo=apple&amp;logoColor=white" alt="Mac App Store" /></a>
<img src="https://img.shields.io/badge/macOS-000000?style=flat-square&amp;logo=apple&amp;logoColor=white" alt="macOS" />
<img src="https://img.shields.io/badge/C%23-239120?style=flat-square&amp;logo=csharp&amp;logoColor=white" alt="C#" /></p>

  <p><strong>RanTerm</strong> is a macOS SSH &amp; SFTP terminal client I independently developed and published on the Mac App Store.</p>

  <h2 id="why-i-built-this">Why I Built This</h2>

  <p>Of all the remote connection tools I’ve used, MobaXterm stood out — it lets you browse remote directories in real time and edit files directly. Powerful, but it’s a Windows tool, and there’s no native macOS equivalent that matches that experience.</p>

  <p>In my day-to-day work, connecting to training machines, annotation servers, and deployment environments is constant. SSH and SFTP are indispensable. So I decided to build my own: native Mac, capable, and lean.</p>

  <h2 id="key-features">Key Features</h2>

  <ul>
    <li><strong>SSH Terminal</strong> — Password and key-based authentication, multi-tab session management</li>
    <li><strong>SFTP File Manager</strong> — Browse remote directories visually, drag-and-drop file transfers</li>
    <li><strong>Multi-session Management</strong> — Maintain multiple connections simultaneously, switch instantly</li>
    <li><strong>Native macOS Experience</strong> — Follows macOS design conventions; lightweight and smooth</li>
  </ul>

  <h2 id="download">Download</h2>

  <p><a href="https://apps.apple.com/us/app/ranterm/id6777069968?mt=12">Mac App Store → RanTerm</a></p>

  <p>Questions or feedback? Reach me at <a href="mailto:yijium9@outlook.com">yijium9@outlook.com</a>.</p>

</div>]]></content><author><name>Ramadan Ma</name><email>yijium9@outlook.com</email></author><category term="应用开发" /><category term="RanTerm" /><category term="macOS" /><category term="SSH" /><category term="SFTP" /><category term="App Store" /><summary type="html"><![CDATA[]]></summary></entry></feed>