<?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>Ai-Tools on Mini Fish</title>
    <link>https://blog.minifish.org/tags/ai-tools/</link>
    <description>Recent content in Ai-Tools on Mini Fish</description>
    <image>
      <title>Mini Fish</title>
      <url>https://blog.minifish.org/android-chrome-512x512.png</url>
      <link>https://blog.minifish.org/android-chrome-512x512.png</link>
    </image>
    <generator>Hugo -- 0.161.1</generator>
    <language>en-US</language>
    <copyright>Mini Fish 2014-present. Licensed under CC-BY-NC</copyright>
    <lastBuildDate>Sun, 24 May 2026 20:00:00 +0800</lastBuildDate>
    <atom:link href="https://blog.minifish.org/tags/ai-tools/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Minifish Lab Projects</title>
      <link>https://blog.minifish.org/posts/minifish-lab-projects/</link>
      <pubDate>Sun, 24 May 2026 20:00:00 +0800</pubDate>
      <guid>https://blog.minifish.org/posts/minifish-lab-projects/</guid>
      <description>A living index of Minifish Lab projects, with short notes on what each project does, its current status, and the project notes in this series.</description>
      <content:encoded><![CDATA[<p>This is a living index of the projects I keep under Minifish Lab. Some of them are public. Some are private because they contain personal operations, deployment assumptions, trading workflow details, or code that is useful to me but not ready to be maintained for other people.</p>
<p>The goal of this series is not to pretend every small repository should become a product. The goal is to leave a useful engineering record: why each project exists, what design choices mattered, what I learned from it, and where the boundary is between a good private tool and a project worth publishing.</p>
<p>I will keep this page updated as projects change.</p>
<h2 id="project-map">Project map</h2>
<table>
  <thead>
      <tr>
          <th>Project</th>
          <th>Area</th>
          <th>Source</th>
          <th>Status</th>
          <th>Project note</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td><code>PocketBabel</code></td>
          <td>AI / Browser app</td>
          <td>Public</td>
          <td>Active</td>
          <td><a href="/posts/pocketbabel-browser-translation/">PocketBabel: Browser Translation Without a Backend</a></td>
      </tr>
      <tr>
          <td><code>tailgate</code></td>
          <td>AI infrastructure</td>
          <td>Private</td>
          <td>Active</td>
          <td><a href="/posts/tailgate-private-ai-gateway/">Tailgate: A Private AI Gateway for Local and Remote Models</a></td>
      </tr>
      <tr>
          <td><code>qwen-local</code></td>
          <td>Local AI</td>
          <td>Private</td>
          <td>Active</td>
          <td><a href="/posts/qwen-local-on-apple-silicon/">qwen-local: Running an OpenAI-Compatible Model Service on Apple Silicon</a></td>
      </tr>
      <tr>
          <td><code>tapsurge</code></td>
          <td>Offline frontend tool</td>
          <td>Private</td>
          <td>Active</td>
          <td><a href="/posts/tapsurge-ipad-tap-test/">TapSurge: An iPad Tap-Speed Tool Built for Competition Use</a></td>
      </tr>
      <tr>
          <td><code>ob-sizer</code></td>
          <td>Database tooling</td>
          <td>Private</td>
          <td>Active</td>
          <td><a href="/posts/ob-sizer-capacity-estimator/">OB Sizer: Turning Migration Sizing into a Browser Tool</a></td>
      </tr>
      <tr>
          <td><code>agentd</code></td>
          <td>Agent runtime</td>
          <td>Private</td>
          <td>Experimental</td>
          <td><a href="/posts/agentd-wasm-agent-runtime/">agentd: A Wasm-Native Harness for Personal Agents</a></td>
      </tr>
      <tr>
          <td><code>tegdb</code></td>
          <td>Database</td>
          <td>Public</td>
          <td>Experimental</td>
          <td><a href="/posts/tegdb-embedded-database/">TegDB: Notes from Building a Small Embedded Database</a></td>
      </tr>
      <tr>
          <td><code>ob-skills</code></td>
          <td>AI workflow / Database</td>
          <td>Public</td>
          <td>Active</td>
          <td><a href="/posts/ob-skills-oceanbase-agent-skills/">ob-skills: Packaging OceanBase Knowledge as Agent Skills</a></td>
      </tr>
      <tr>
          <td><code>quacklake</code></td>
          <td>Analytics</td>
          <td>Private</td>
          <td>Prototype</td>
          <td><a href="/posts/quacklake-wasm-analytics-prototype/">QuackLake: A DuckDB-WASM Analytics Prototype</a></td>
      </tr>
      <tr>
          <td><code>scale-kv</code></td>
          <td>Storage systems</td>
          <td>Private</td>
          <td>Experimental</td>
          <td><a href="/posts/scale-kv-storage-experiment/">scale-kv: A Storage Experiment About Complexity</a></td>
      </tr>
      <tr>
          <td><code>cta-guard</code></td>
          <td>Trading systems</td>
          <td>Private</td>
          <td>Sensitive</td>
          <td><a href="/posts/cta-guard-trading-risk-system/">cta-guard: Risk Controls Before Trading Logic</a></td>
      </tr>
      <tr>
          <td><code>tegdb-server</code></td>
          <td>Database server</td>
          <td>Public</td>
          <td>Experimental</td>
          <td><a href="/posts/tegdb-server-postgres-compatible/">tegdb-server: Putting a PostgreSQL-Compatible Protocol in Front of TegDB</a></td>
      </tr>
      <tr>
          <td><code>bedrock-lab</code></td>
          <td>Game modding</td>
          <td>Private</td>
          <td>Small tool</td>
          <td><a href="/posts/bedrock-lab-behavior-pack/">Bedrock Lab: A Behavior Pack as a Small Rules Sandbox</a></td>
      </tr>
      <tr>
          <td><code>aeroplay</code></td>
          <td>Offline games</td>
          <td>Public</td>
          <td>Template-ready</td>
          <td><a href="/posts/aeroplay-offline-game-hub/">AeroPlay: A Flight-Mode Game Hub</a></td>
      </tr>
      <tr>
          <td><code>map-ask</code></td>
          <td>Maps / AI</td>
          <td>Private</td>
          <td>Prototype</td>
          <td><a href="/posts/map-ask-natural-language-geosearch/">map-ask: Natural-Language Geospatial Search</a></td>
      </tr>
      <tr>
          <td><code>good-fishing-day</code></td>
          <td>Personal dashboard</td>
          <td>Private</td>
          <td>Personal utility</td>
          <td><a href="/posts/good-fishing-day-dashboard/">good-fishing-day: A Fishing Weather Dashboard</a></td>
      </tr>
  </tbody>
</table>
<h2 id="why-write-about-private-projects">Why write about private projects?</h2>
<p>Open source is not the only useful form of sharing. A private project can still contain lessons worth publishing:</p>
<ul>
<li>how the problem was framed</li>
<li>which constraints shaped the architecture</li>
<li>what was deliberately left out</li>
<li>where a prototype became too complex</li>
<li>what I would do differently next time</li>
</ul>
<p>For private repositories, these notes avoid secrets, private network details, exact production configuration, personal data, and sensitive business or trading parameters. The public artifact is the engineering story, not a dump of implementation details.</p>
<h2 id="how-i-classify-these-projects">How I classify these projects</h2>
<p>Some projects are small tools that should stay small. <code>tapsurge</code>, <code>good-fishing-day</code>, and <code>bedrock-lab</code> are in that category. Their value comes from being built for one specific situation.</p>
<p>Some are experiments in system shape. <code>agentd</code>, <code>scale-kv</code>, <code>quacklake</code>, <code>tegdb</code>, and <code>tegdb-server</code> are more about understanding boundaries than shipping a polished product.</p>
<p>Some are workbench infrastructure. <code>qwen-local</code>, <code>tailgate</code>, <code>PocketBabel</code>, and <code>ob-skills</code> exist because I want AI tools to fit into my own environment instead of depending entirely on remote services.</p>
<p>Some projects sit close to professional or sensitive domains. <code>ob-sizer</code> is safe to discuss at the methodology level. <code>cta-guard</code> needs more caution: the interesting public topic is risk control and operational design, not trading edge.</p>
<h2 id="maintenance-rule">Maintenance rule</h2>
<p>When a project changes meaningfully, I will update this index first. If the change is only implementation detail, the individual post can stay as a snapshot. If the project changes direction, graduates into a product, or gets retired, the index should say so plainly.</p>
<p>That makes this page the map, and each project post a field note.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
