<?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>Forem: lulu77-mm</title>
    <description>The latest articles on Forem by lulu77-mm (@lulu77mm).</description>
    <link>https://forem.com/lulu77mm</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%2F3880091%2F21d746e6-e5a1-48b5-86a7-ba835cd20dda.png</url>
      <title>Forem: lulu77-mm</title>
      <link>https://forem.com/lulu77mm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/lulu77mm"/>
    <language>en</language>
    <item>
      <title>My OpenClaw Journey: A Lazy Developer's Path to Model Integration</title>
      <dc:creator>lulu77-mm</dc:creator>
      <pubDate>Fri, 17 Apr 2026 05:47:52 +0000</pubDate>
      <link>https://forem.com/lulu77mm/my-openclaw-journey-a-lazy-developers-path-to-model-integration-50p3</link>
      <guid>https://forem.com/lulu77mm/my-openclaw-journey-a-lazy-developers-path-to-model-integration-50p3</guid>
      <description>&lt;p&gt;&lt;strong&gt;📦 1. Installing OpenClaw — Smooth and Simple&lt;/strong&gt;&lt;br&gt;
OpenClaw has been everywhere lately, so I finally decided to give it a shot. The installation was surprisingly painless:&lt;/p&gt;

&lt;p&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%2Fkh2qs84qk1w48wkj00gf.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%2Fkh2qs84qk1w48wkj00gf.png" alt=" " width="677" height="93"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The script handled all dependencies automatically, and the interactive wizard walked me through the basic setup. Within ten minutes, that little lobster icon was up and running in my terminal. I thought, "This is way easier than I expected."&lt;br&gt;
&lt;strong&gt;🔌 2. Connecting Models: OpenRouter Works, But…&lt;/strong&gt;&lt;br&gt;
With the lobster installed, it was time to give it a brain. My first stop was OpenRouter—an old friend at this point.&lt;/p&gt;

&lt;p&gt;OpenRouter has a massive model catalog, over 300 of them. All my daily drivers—GPT, Claude, Gemini,are right there. I followed their docs, plugged in my API key, and formatted the model references as openrouter//. Tested it, and it worked. The integration itself wasn't the issue.&lt;/p&gt;

&lt;p&gt;The friction came every time I wanted to add a new model.&lt;/p&gt;

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

&lt;p&gt;I'd have to go back to OpenRouter's docs, look up the exact model identifier, confirm the contextWindow, check if it supported multimodal inputs, note the pricing, and then manually add another entry to my models.json. After adding a few models, my config file became bloated and hard to manage.&lt;/p&gt;

&lt;p&gt;I kept thinking: Is there a platform that can just handle this configuration for me?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you know any tools or tricks that make this easier, please drop them in the comments. I genuinely need them 🙏&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🔍 3. Stumbling Upon BasicRouter.ai&lt;/strong&gt;&lt;br&gt;
While searching for a more hands-off solution, I happened to land on BasicRouter.ai.&lt;/p&gt;

&lt;p&gt;At first glance, the model count is noticeably smaller than OpenRouter's—around 50 versus 300+. But as I scanned the list, I realized nearly every model I actually use day-to-day was there: GPT-4o, Claude Sonnet 4.6, Gemini, Kimi, Qwen. Scrolling further, I also spotted image generation (Kling-image, Qwen-image) and video generation (Kling, Seedence, Wan). More than enough for my needs.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;📄 4. The Pleasant Surprise: A Dedicated OpenClaw Integration Guide&lt;/strong&gt;&lt;br&gt;
What really made me decide to try BasicRouter was a specific article in their documentation:&lt;br&gt;
"How to Integrate BasicRouter Platform API into OpenClaw"&lt;/p&gt;

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

&lt;p&gt;This wasn't the typical "We're OpenAI-compatible, figure it out yourself" note. It clearly explained the role of OpenClaw's three key configuration files:&lt;br&gt;
| File | Purpose |&lt;br&gt;
|------|---------|&lt;br&gt;
| models.json | Defines providers, baseUrl, and model parameters |&lt;br&gt;
| openclaw.json | Registers authentication profiles and sets default models |&lt;br&gt;
| auth-profiles.json | Stores API keys separately (secure and easy to rotate) |&lt;/p&gt;

&lt;p&gt;Even better, every step came with complete, copy-paste ready JSON blocks. I didn't have to guess contextWindow or maxTokens values—they were already filled in with sensible defaults. I just needed to swap in the model IDs I wanted.&lt;/p&gt;

&lt;p&gt;Here's a snippet of how I configured BasicRouter in models.json:&lt;/p&gt;

&lt;p&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%2Ffvluw66ri9g95rdsonvn.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%2Ffvluw66ri9g95rdsonvn.png" alt=" " width="765" height="624"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And the API key stored separately in auth-profiles.json:&lt;/p&gt;

&lt;p&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%2Fop7fvx3np7gdyh55jj28.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%2Fop7fvx3np7gdyh55jj28.png" alt=" " width="546" height="255"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The whole setup took less than ten minutes—way faster than digging through individual provider docs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✅ 5. It Just Worked&lt;/strong&gt;&lt;br&gt;
After updating the configs and restarting OpenClaw, I ran a few quick tests:&lt;br&gt;
| Task | Model | Result |&lt;br&gt;
|------|-------|--------|&lt;br&gt;
| Text summarization | Claude 4.6 | ✅ Instant response |&lt;br&gt;
| Image generation | Qwen-image | ✅ Image ready in seconds |&lt;br&gt;
| Video generation | Kling | ✅ Clip done in under a minute |&lt;/p&gt;

&lt;p&gt;Switching between models was seamless—just change basicrouter/ in the prompt.&lt;/p&gt;

&lt;p&gt;Also worth mentioning: BasicRouter gave me $5 in free credits just for signing up. After all those tests—text, images, video—I'd used less than $2.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🏁 Final Thoughts&lt;/strong&gt;&lt;br&gt;
OpenClaw itself is easy to set up. The real time sink is finding and configuring the "food" to feed it. OpenRouter solved the availability problem—I could access almost any model I wanted. But BasicRouter solved the friction problem, especially with that dedicated OpenClaw integration guide. For a lazy developer like me, that kind of hand-holding is a lifesaver.&lt;/p&gt;

&lt;p&gt;How are you all handling model integration with OpenClaw? Got any tips or tricks to make it even smoother? Let me know in the comments! 🦞&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>openclawchallenge</category>
      <category>openrouter</category>
      <category>basicrouter</category>
    </item>
    <item>
      <title>I Generated 20+ Images for Free: My BasicRouter.ai Test Run</title>
      <dc:creator>lulu77-mm</dc:creator>
      <pubDate>Thu, 16 Apr 2026 04:08:38 +0000</pubDate>
      <link>https://forem.com/lulu77mm/i-generated-20-images-for-free-my-basicrouterai-test-run-1l5e</link>
      <guid>https://forem.com/lulu77mm/i-generated-20-images-for-free-my-basicrouterai-test-run-1l5e</guid>
      <description>&lt;p&gt;If you’ve been building AI agents or just tinkering with multi-modal projects, you’ve probably felt the pain of dealing with separate endpoints for text, image, and video. I recently signed up for BasicRouter.ai mostly out of curiosity, and I ended up running a pretty extensive test of their media generation capabilities.&lt;/p&gt;

&lt;p&gt;The platform isn't just a text aggregator; they've got a robust set of Image and Video Generation APIs baked right into the same endpoint. I was able to spin up tests for Kling-image, and Qwen-image. For video, I played around with Kling, Seedance (ByteDance), and Wan (Alibaba Cloud).&lt;/p&gt;

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

&lt;p&gt;Here’s the part that actually saved me time: the Visual Playground. I didn’t have to write a Python script just to see if a prompt worked. I just typed in my scene description, hit generate, and watched the video render in the browser. It made rapid iteration so much faster—no more waiting for local scripts to finish just to find out my prompt was slightly off.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This image was generated using qwen-image-2.0-pro.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;One thing I also appreciate is that the platform feels surprisingly grounded for being a newer aggregator. They've listed direct integrations with major cloud providers like Volcengine, Microsoft Azure, and BytePlus. It’s not just some proxy flying under the radar; it feels like a legit piece of infrastructure.&lt;/p&gt;

&lt;p&gt;I also put their OpenClaw integration to the test. I run an OpenClaw instance locally (that whole “feed the lobster” setup), and BasicRouter.ai makes it trivial to plug in your API key and base URL. They literally walk you through the config file setup and test the connection for you.&lt;/p&gt;

&lt;p&gt;And yes, the $5 welcome bonus is real. Before my actual balance took effect, I used it to generate about 20 images (I haven't used them all yet)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This image was generated using kling-v3-omni-image.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;Is anyone else using a gateway that handles multi-modal this cleanly? Curious what else is out there in 2026☺.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
      <category>tooling</category>
    </item>
  </channel>
</rss>
