<?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: ModelFild</title>
    <description>The latest articles on DEV Community by ModelFild (@_f467169b51ec73738019e6).</description>
    <link>https://dev.to/_f467169b51ec73738019e6</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4207076%2Feebd705c-5277-40fc-8370-3d1f8610c54c.jpg</url>
      <title>DEV Community: ModelFild</title>
      <link>https://dev.to/_f467169b51ec73738019e6</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/_f467169b51ec73738019e6"/>
    <language>en</language>
    <item>
      <title>One API key, 700+ models: why I stopped juggling vendor accounts</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Sun, 15 Nov 2026 05:13:33 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/one-api-key-700-models-why-i-stopped-juggling-vendor-accounts-4ne1</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/one-api-key-700-models-why-i-stopped-juggling-vendor-accounts-4ne1</guid>
      <description>&lt;p&gt;I work on &lt;a href="https://modelfold.ai/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;ModelFold&lt;/a&gt;. This is a walkthrough of the public catalog and the OpenAI-compatible API as they stood on 14 November 2026. Prices move. Treat the live &lt;a href="https://modelfold.ai/pricing?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;pricing page&lt;/a&gt; as the invoice, not this article.&lt;/p&gt;

&lt;p&gt;Most AI side projects die in the accounts tab.&lt;/p&gt;

&lt;p&gt;You start with one chat model. Then you need an image model for the landing page, a video model for the demo, a TTS voice for the onboarding clip. Each vendor wants its own key, its own SDK, its own dashboard, and a card on file. Switching a model is never "change the &lt;code&gt;model&lt;/code&gt; string". It is a new account, a new request shape, and a new invoice.&lt;/p&gt;

&lt;p&gt;ModelFold is the opposite of that setup. One prepaid-credit account. One OpenAI-compatible key. A public catalog that, on 14 November 2026, listed &lt;strong&gt;700+ models from 92 providers&lt;/strong&gt; — 702 marketplace listings if you count variants. Chat, video, image, audio, 3D and office are on the same bill. That catalog size is why we describe it as the world's largest AI model gateway; the number you can verify is the directory, not a third-party ranking.&lt;/p&gt;

&lt;p&gt;Create a key here: &lt;a href="https://modelfold.ai/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;modelfold.ai&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What "one key" actually means
&lt;/h2&gt;

&lt;p&gt;The OpenAI-compatible base URL is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://modelfold.ai/v1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Chat, image, video and audio share the same host and the same &lt;code&gt;Authorization: Bearer&lt;/code&gt; header. You change the path and the &lt;code&gt;model&lt;/code&gt; id.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"your_key"&lt;/span&gt;

&lt;span class="c"&gt;# list what you can actually call today&lt;/span&gt;
curl -sS https://modelfold.ai/v1/models \
  -H &lt;span class="s2"&gt;"Authorization: Bearer $MODELFOLD_API_KEY"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A chat call looks like any other OpenAI-style client:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://modelfold.ai/v1/chat/completions \
  -H &lt;span class="s2"&gt;"Authorization: Bearer $MODELFOLD_API_KEY"&lt;/span&gt; \
  -H &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; \
  -d &lt;span class="s1"&gt;'{
    "model": "claude-sonnet-5-5",
    "messages": [{"role":"user","content":"Summarize this PR in four bullets."}],
    "max_tokens": 400
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An image call uses the same key on a different path:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://modelfold.ai/v1/images/generations \
  -H &lt;span class="s2"&gt;"Authorization: Bearer $MODELFOLD_API_KEY"&lt;/span&gt; \
  -H &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; \
  -d &lt;span class="s1"&gt;'{
    "model": "gpt-image-2",
    "prompt": "A whiteboard photo of a 700-model API gateway, documentary lighting",
    "n": 1
  }'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Video is the same pattern on &lt;code&gt;/v1/videos/generations&lt;/code&gt;. Model ids come from &lt;code&gt;GET /v1/models&lt;/code&gt; or from the &lt;a href="https://modelfold.ai/market?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;market&lt;/a&gt;, not from memory. The catalog changes.&lt;/p&gt;

&lt;p&gt;Python, if you already have the OpenAI SDK:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="n"&gt;openai&lt;/span&gt; &lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nc"&gt;OpenAI&lt;/span&gt;

&lt;span class="n"&gt;client&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;OpenAI&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;api_key&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"your_key"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;base_url&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"https://modelfold.ai/v1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;chat&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;chat&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;completions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;model&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"deepseek-v4-pro"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s2"&gt;"role"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"content"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;"Give me a 3-step plan to batch-generate product stills."&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;chat&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;choices&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That is the whole point: the application code stays still. The model field is the switch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Coding agents: Claude Code, Codex, Cursor
&lt;/h2&gt;

&lt;p&gt;The same account also speaks the protocols those tools already use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Claude Code CLI&lt;/strong&gt; — Anthropic-compatible gateway. The client appends &lt;code&gt;/v1/messages&lt;/code&gt; itself, so the base URL stops at &lt;code&gt;/anthropic&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_BASE_URL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;https://modelfold.ai/anthropic
&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_AUTH_TOKEN&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;$MODELFOLD_API_KEY&lt;/span&gt;
&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-sonnet-5-5
&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_DEFAULT_SONNET_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-sonnet-5-5
&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_DEFAULT_OPUS_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-opus-5-5
&lt;span class="kd"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;ANTHROPIC_DEFAULT_HAIKU_MODEL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;claude-haiku-5-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Haiku is required. Background tasks will ask for a Haiku-tier id; if it is missing they fall back to a vendor name ModelFold does not serve. Discover ids with &lt;code&gt;GET https://modelfold.ai/anthropic/v1/models&lt;/code&gt;. Walkthrough: &lt;a href="https://modelfold.ai/docs/en/ai-agent/claude-code?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;Claude Code CLI&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Codex CLI&lt;/strong&gt; — OpenAI Responses API. Codex appends &lt;code&gt;/responses&lt;/code&gt; itself.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight toml"&gt;&lt;code&gt;&lt;span class="na"&gt;model&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"gpt-6-astra"&lt;/span&gt;
&lt;span class="na"&gt;model_provider&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"ModelFold"&lt;/span&gt;
&lt;span class="k"&gt;[model_providers.ModelFold]&lt;/span&gt;
&lt;span class="na"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"ModelFold"&lt;/span&gt;
&lt;span class="na"&gt;base_url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"https://modelfold.ai/openai/v1"&lt;/span&gt;
&lt;span class="na"&gt;env_key&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"MODELFOLD_API_KEY"&lt;/span&gt;
&lt;span class="na"&gt;wire_api&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"responses"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Put this in &lt;code&gt;~/.codex/config.toml&lt;/code&gt; (user-level; project-level &lt;code&gt;model_providers&lt;/code&gt; is ignored). List slugs from &lt;code&gt;GET https://modelfold.ai/openai/v1/models&lt;/code&gt;. Guide: &lt;a href="https://modelfold.ai/docs/en/ai-agent/codex-cli?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;Codex CLI&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cursor&lt;/strong&gt; — override the OpenAI base URL if your plan exposes that setting:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;URL: https://modelfold.ai/v1
API Key: your ModelFold key
Model ID: claude-opus-5-5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Cursor page is a configuration note, not a claim that every agent feature was re-tested in that client. Guide: &lt;a href="https://modelfold.ai/docs/en/ai-agent/cursor?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;Cursor&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Price: a dated snapshot, not a slogan
&lt;/h2&gt;

&lt;p&gt;Billing is prepaid credits. No monthly seat. 200 credits = $1 USD on the public packs ($5 → 1,000 credits). Failed generations are not charged. Credits do not expire.&lt;/p&gt;

&lt;p&gt;The homepage comparison table is computed against the same model's official list price. I am not going to freeze a "save X%" headline here, because that number is regenerated from the live catalog. On 14 November 2026 the public table included rows like these:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Unit&lt;/th&gt;
&lt;th&gt;ModelFold&lt;/th&gt;
&lt;th&gt;Official list on our table&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;GPT Image 2 (text to image)&lt;/td&gt;
&lt;td&gt;per image&lt;/td&gt;
&lt;td&gt;$0.04&lt;/td&gt;
&lt;td&gt;$0.219&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kling 4.0 keyframe, 720p, 5s&lt;/td&gt;
&lt;td&gt;per video&lt;/td&gt;
&lt;td&gt;$0.855&lt;/td&gt;
&lt;td&gt;$1.1775&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Seedance 2.5, 480p, 5s&lt;/td&gt;
&lt;td&gt;per 5 seconds&lt;/td&gt;
&lt;td&gt;$0.84&lt;/td&gt;
&lt;td&gt;see live row&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Haiku 4.5 input&lt;/td&gt;
&lt;td&gt;per 1M tokens&lt;/td&gt;
&lt;td&gt;$0.32&lt;/td&gt;
&lt;td&gt;$1.00&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Fable 5.2 input&lt;/td&gt;
&lt;td&gt;per 1M tokens&lt;/td&gt;
&lt;td&gt;$3.84&lt;/td&gt;
&lt;td&gt;$8.00&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Those dollars are display prices from &lt;a href="https://modelfold.ai/pricing?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;modelfold.ai/pricing&lt;/a&gt; on that date. Larger packs add bonus credits; do not reverse a model rate from the $50 or $500 pack. If a row is marked as an estimated official reference, treat it as a reference, not a quote from the vendor's invoice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Direct routes, not a mashed-up "almost that model"
&lt;/h2&gt;

&lt;p&gt;The product claim on the homepage is straightforward: each listing calls the original model, with more than one route behind it so a busy path can fail over. A generation that fails is $0. You are billed for a result.&lt;/p&gt;

&lt;p&gt;I did not run a paid generation while writing this article. The curl examples above are the request shape. Confirm a key with &lt;code&gt;GET /v1/models&lt;/code&gt; before you spend.&lt;/p&gt;

&lt;h2&gt;
  
  
  When this is the wrong tool
&lt;/h2&gt;

&lt;p&gt;If you already have a single-vendor contract with committed volume, stay there. If you need a model that is not on the catalog, it is not on the catalog — check the market rather than assuming a name from a launch blog. If you are serving weights on your own GPU, this is a hosted API, not a local runtime.&lt;/p&gt;

&lt;p&gt;If you are tired of five dashboards for one prototype, one key is the whole pitch.&lt;/p&gt;

&lt;p&gt;Register, create a key, and call the catalog: &lt;a href="https://modelfold.ai/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;https://modelfold.ai/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Chinese homepage: &lt;a href="https://modelfold.ai/zh/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;https://modelfold.ai/zh/&lt;/a&gt; · Market: &lt;a href="https://modelfold.ai/market?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=700-launch" rel="noopener noreferrer"&gt;https://modelfold.ai/market&lt;/a&gt; · Machine-readable catalog: &lt;a href="https://modelfold.ai/llms.txt" rel="noopener noreferrer"&gt;https://modelfold.ai/llms.txt&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>api</category>
      <category>tutorial</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Claude Fable 5.2 Is Now on ModelFold: Bring a Problem Worth Solving</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Thu, 12 Nov 2026 13:59:31 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/claude-fable-52-is-now-on-modelfold-bring-a-problem-worth-solving-2c9n</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/claude-fable-52-is-now-on-modelfold-bring-a-problem-worth-solving-2c9n</guid>
      <description>&lt;p&gt;Claude Fable 5.2 arrived on ModelFold today, November 12. You can try it in the web chat or connect through the API. A useful place to start is a problem you are already trying to solve.&lt;/p&gt;

&lt;p&gt;Anthropic positions Fable 5.2 for demanding reasoning and agentic work that needs sustained progress. Think debugging a complicated codebase, working across a stack of documents, or untangling a technical question with several dependent steps.&lt;/p&gt;

&lt;p&gt;The published specifications include a one-million-token context window and up to 128,000 output tokens, with text and image input and text output. That creates room for more source material and a fuller explanation. Actual limits in each ModelFold interface are listed on the relevant page.&lt;/p&gt;

&lt;p&gt;We ran two small tests through ModelFold to see what that looks like in practice.&lt;/p&gt;

&lt;p&gt;The first described an order endpoint where clients retry after a timeout and the server has no idempotency key. Fable identified the risks of duplicate orders and charges, suggested idempotency keys backed by a unique constraint, and outlined checks for concurrency and timeout retries. In three lines, it connected the bug, the fix, and a way to verify the fix.&lt;/p&gt;

&lt;p&gt;The second was a project handoff exercise. It kept “development complete,” “copy awaiting confirmation,” “mobile acceptance testing incomplete,” and “not yet deployed” separate. It did not invent dates or treat a passing build as proof of a successful release. That kind of restraint matters when a summary will guide somebody else's next action.&lt;/p&gt;

&lt;p&gt;Two short tests are no substitute for a broader evaluation. They do suggest a useful question to ask of a reasoning model: does the answer leave you with a next step you can actually check?&lt;/p&gt;

&lt;p&gt;Bring your code, documents, or a difficult question and give it a try. For an existing API client, use the model ID &lt;code&gt;claude-fable-5-2&lt;/code&gt; with &lt;code&gt;/v1/chat/completions&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;ModelFold: &lt;a href="https://modelfold.ai" rel="noopener noreferrer"&gt;https://modelfold.ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Model details: &lt;a href="https://modelfold.ai/models/claude-fable-5-2" rel="noopener noreferrer"&gt;https://modelfold.ai/models/claude-fable-5-2&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>llm</category>
      <category>api</category>
    </item>
    <item>
      <title>Claude Fable 5.2: Can It Move a Stuck Engineering Task Forward?</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Thu, 12 Nov 2026 12:03:54 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/claude-fable-52-can-it-move-a-stuck-engineering-task-forward-1poo</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/claude-fable-52-can-it-move-a-stuck-engineering-task-forward-1poo</guid>
      <description>&lt;p&gt;When a new model arrives, the first question is usually how well it scores. My first question is more practical: would I give it the problem I've been stuck on for two days?&lt;/p&gt;

&lt;p&gt;That might be a bug spanning several layers of a service, a set of conflicting requirements, or a handoff that leaves the next engineer guessing what actually shipped. A useful answer should help someone take the next step and check whether it worked.&lt;/p&gt;

&lt;p&gt;Anthropic released Claude Fable 5.2 on November 9, 2026, positioning it for demanding reasoning and long-horizon agentic work. Those are broad claims. I wanted to start with something small enough to inspect.&lt;/p&gt;

&lt;p&gt;On November 12, I ran two short prompts through ModelFold using &lt;code&gt;claude-fable-5-2&lt;/code&gt;. Both returned successfully through the Chat Completions endpoint. Neither was a benchmark, and neither involved running a real payment flow or changing a production system.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test 1: Make a code review actionable
&lt;/h2&gt;

&lt;p&gt;The first prompt described an order endpoint:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The client retries after a timeout.&lt;/li&gt;
&lt;li&gt;Every request creates an order and initiates a charge.&lt;/li&gt;
&lt;li&gt;There is no idempotency key.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I asked for exactly three short lines: risk, fix, and verification. The prompt and response were in Chinese; the following is an English translation of the response:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Risk: Timeout retries are treated as new requests, creating duplicate orders and charges, with financial losses and customer complaints.&lt;/p&gt;

&lt;p&gt;Fix: Have the client send an idempotency key, enforce a unique constraint on the server, and return the original result for duplicate requests.&lt;/p&gt;

&lt;p&gt;Verification: Send concurrent requests and timeout retries with the same key; confirm there is only one order, one charge, and a consistent response.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The last line is what interested me. “Add an idempotency key” gives you a direction. Specifying concurrent requests, timeout retries, and the expected order and charge counts gives a developer or tester something concrete to work with.&lt;/p&gt;

&lt;p&gt;It is still only review advice. The model did not execute the payment system or validate its charge handling. An implementation would also need to address transactions, in-progress requests, and recovery from failures.&lt;/p&gt;

&lt;p&gt;For this input, the answer was a useful starting point for implementation and acceptance criteria. It was not evidence that the system had become safe.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test 2: Keep a handoff honest
&lt;/h2&gt;

&lt;p&gt;The second prompt described a search page with a deliberately mixed status:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Development is complete and the local build passes. It has not been deployed to production. Product has not approved the empty-state copy, and mobile acceptance testing in the test environment has not been done.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The request was to organize this into three lines—completed, pending confirmation, and next steps—using only the supplied facts, without adding dates or guessing an outcome.&lt;/p&gt;

&lt;p&gt;Translated from the Chinese response:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Completed: Development of the new search page is complete, and the local build passes.&lt;/p&gt;

&lt;p&gt;Pending confirmation: Product has not yet approved the empty-state copy.&lt;/p&gt;

&lt;p&gt;Next steps: Mobile acceptance testing in the test environment has not been done, and production deployment is still pending.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There is nothing spectacular about that output. Its value is that it preserves the distinction between “implemented,” “build passes,” and “live.” It also leaves unapproved copy and untested mobile behavior unresolved.&lt;/p&gt;

&lt;p&gt;A handoff becomes much less useful when a polished summary quietly turns unfinished work into completed work. In this example, the model kept those boundaries intact.&lt;/p&gt;

&lt;p&gt;Two short responses cannot establish general reliability or rank a model against its competitors. They do suggest two worthwhile things to test further: whether technical advice includes a way to verify it, and whether summaries preserve the limits of the evidence.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the larger context window could help with
&lt;/h2&gt;

&lt;p&gt;The official specifications list a one-million-token context window and a maximum output of 128,000 tokens, with text and image input and text output.&lt;/p&gt;

&lt;p&gt;I did not test those limits, image understanding, or sustained autonomous work. Nor should the official limits be read as a guarantee that every integration exposes the full capacity.&lt;/p&gt;

&lt;p&gt;What the larger window suggests is room to provide a more complete problem: symptoms, relevant code, previous attempts, constraints, and the deliverable you need. It does not remove the need to organize that material.&lt;/p&gt;

&lt;p&gt;For a code review, I would start with something like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here is the endpoint, the error, and the causes I have already ruled out. Rank the three most likely remaining problems by the available evidence. Propose the smallest change and verification steps. Mark any conclusion that needs more evidence.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For conflicting requirements:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Find contradictions across these three documents. Identify the original passage for each conflict. Do not invent commitments to reconcile them.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For a screenshot:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Check whether the primary button, error messages, and form labels are ambiguous. Explain the visual evidence for each issue.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;These are suggested follow-up tasks, not tests I ran for this article. The common thread is specifying what a usable result should contain before asking the model to produce it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with the task you can evaluate
&lt;/h2&gt;

&lt;p&gt;Anthropic recommends starting with Opus 5.5 for most coding and knowledge work, then considering Fable as task complexity warrants. That seems like a sensible way to approach it.&lt;/p&gt;

&lt;p&gt;For a small copy change or a straightforward summary, start with the model you already know. For a difficult problem, prepare the context and acceptance criteria, then see whether Fable 5.2 finds a missing condition, explains uncertainty, or proposes a next step you can check.&lt;/p&gt;

&lt;p&gt;Output length alone is a poor measure of progress. A short answer that identifies the untested assumption can be more useful than pages of plausible explanation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Trying the same model through ModelFold
&lt;/h2&gt;

&lt;p&gt;ModelFold added Claude Fable 5.2 on November 12. At &lt;a href="https://modelfold.ai" rel="noopener noreferrer"&gt;modelfold.ai&lt;/a&gt;, search the model marketplace for Claude Fable 5.2 and open its detail page for the web chat entry point and API examples.&lt;/p&gt;

&lt;p&gt;For an existing integration, use the model ID &lt;code&gt;claude-fable-5-2&lt;/code&gt;. ModelFold provides Chat Completions at &lt;code&gt;/v1/chat/completions&lt;/code&gt; and a Claude Messages interface; follow the example for the interface you choose and check its request format. Both tests above used the former.&lt;/p&gt;

&lt;p&gt;As checked on November 12, the ModelFold detail page displayed these rates:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Usage&lt;/th&gt;
&lt;th&gt;Credits per million tokens&lt;/th&gt;
&lt;th&gt;Approximate USD per million tokens&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Input&lt;/td&gt;
&lt;td&gt;768&lt;/td&gt;
&lt;td&gt;$3.84&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Output&lt;/td&gt;
&lt;td&gt;3,840&lt;/td&gt;
&lt;td&gt;$19.20&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;These are per-million-token rates, not a fixed price per question. Input and output are billed separately, thinking tokens are billed as output, and including conversation history increases input usage. Refer to the current page and actual usage settlement for subsequent charges.&lt;/p&gt;

&lt;p&gt;My suggestion is to start with a small problem whose background you understand and whose result you can inspect. Ask for one pass, then check what it resolved and what it left open before giving it a larger task.&lt;/p&gt;

&lt;p&gt;That is how I want to evaluate Fable 5.2: can it turn a vague problem into something testable, attach verification to a proposed fix, and leave missing information visibly unresolved?&lt;/p&gt;

&lt;p&gt;Pick one of those tasks you've had parked for a week. Give it the evidence, define what progress would look like, and see whether the next step becomes clearer.&lt;/p&gt;

</description>
      <category>api</category>
      <category>ai</category>
      <category>claude</category>
      <category>llm</category>
    </item>
    <item>
      <title>Call GPT Image 2.6 on ModelFold</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Sat, 07 Nov 2026 05:15:04 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/call-gpt-image-26-on-modelfold-4a97</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/call-gpt-image-26-on-modelfold-4a97</guid>
      <description>&lt;p&gt;GPT Image 2.6 is available on ModelFold through one API key and one endpoint. Six model IDs cover the tier and the task. The model page Playground shows the form and a built-in sample before you write the call.&lt;/p&gt;

&lt;p&gt;This note is from the ModelFold team. It describes how to integrate the model. Capabilities below were read from the model page and the API docs on November 7, 2026. If those pages change, the pages win.&lt;/p&gt;

&lt;p&gt;The model page lists the provider as OpenAI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Six model IDs
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model ID&lt;/th&gt;
&lt;th&gt;Use&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/economy-text-to-image&lt;/td&gt;
&lt;td&gt;Economy, text to image&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/economy-image-to-image&lt;/td&gt;
&lt;td&gt;Economy, image to image&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/flare-text-to-image&lt;/td&gt;
&lt;td&gt;Flare, text to image&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/flare-image-to-image&lt;/td&gt;
&lt;td&gt;Flare, image to image&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/sunburst-text-to-image&lt;/td&gt;
&lt;td&gt;Sunburst, text to image&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gpt-image-2-6/sunburst-image-to-image&lt;/td&gt;
&lt;td&gt;Sunburst, image to image&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The page describes Flare as the faster option and Sunburst as the option aimed at detail and consistent edits. Both support 1K, 2K and 4K, for text to image and image to image. Economy stays at 1K. It returns PNG, and Economy text to image can also return GIF.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it in the browser
&lt;/h2&gt;

&lt;p&gt;English is the default site, with no language prefix:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://modelfold.ai/models/gpt-image-2-6#playground" rel="noopener noreferrer"&gt;https://modelfold.ai/models/gpt-image-2-6#playground&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can view the six tiers, the prefilled form and the sample output while logged out. Run asks you to sign in. The screenshots below were taken logged out on November 7, 2026. The pictures are the page's own samples, not new generations for this article.&lt;/p&gt;

&lt;p&gt;Economy text to image. The form shows aspect ratio, background, output format, and the GIF frame fields used by text to image.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F36y73qab3045wpb291cs.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F36y73qab3045wpb291cs.png" alt="Economy text-to-image Playground" width="800" height="573"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Flare text to image. This tier adds resolution. The sample on the page is a GIF.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fos13mzs8cwxgq3bxhnep.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fos13mzs8cwxgq3bxhnep.png" alt="Flare text-to-image Playground" width="800" height="627"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sunburst text to image. Resolution, background and output format match Flare text to image.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxlnrjqrt796l23nyk8yf.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxlnrjqrt796l23nyk8yf.png" alt="Sunburst text-to-image Playground" width="800" height="627"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sunburst image to image. The reference sits on the left. The sample result sits on the right.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh0x3neq5ipmcor1x61xt.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh0x3neq5ipmcor1x61xt.png" alt="Sunburst image-to-image Playground" width="800" height="810"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The API
&lt;/h2&gt;

&lt;p&gt;Text to image and image to image both use:&lt;/p&gt;

&lt;p&gt;POST &lt;a href="https://modelfold.ai/v1/images/generations" rel="noopener noreferrer"&gt;https://modelfold.ai/v1/images/generations&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Send &lt;code&gt;Authorization: Bearer&lt;/code&gt; and &lt;code&gt;Content-Type: application/json&lt;/code&gt;. The call waits until the image is finished. The image address is &lt;code&gt;url&lt;/code&gt; inside &lt;code&gt;data&lt;/code&gt;. There is no separate status poll, and you should not send a callback URL.&lt;/p&gt;

&lt;p&gt;Keep the key in your own environment. The samples use the placeholder &lt;code&gt;YOUR_MODELFOLD_API_KEY&lt;/code&gt;. Do not paste a real key into the command or into a repository.&lt;/p&gt;

&lt;p&gt;Economy text to image, 1K PNG:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://modelfold.ai/v1/images/generations &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer YOUR_MODELFOLD_API_KEY"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"model":"gpt-image-2-6/economy-text-to-image","prompt":"A glass bottle on a white table, soft daylight, product photo.","aspect_ratio":"1:1","output_format":"png"}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;urllib.request&lt;/span&gt;

&lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;YOUR_MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;span class="n"&gt;body&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;dumps&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;model&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;gpt-image-2-6/economy-text-to-image&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;prompt&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;A glass bottle on a white table, soft daylight, product photo.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;aspect_ratio&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;1:1&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;output_format&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;png&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;}).&lt;/span&gt;&lt;span class="nf"&gt;encode&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="n"&gt;req&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;urllib&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;request&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Request&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;https://modelfold.ai/v1/images/generations&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;body&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;headers&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Authorization&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Bearer &lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Content-Type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;application/json&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;method&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;POST&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# The timeout is a client limit, not a limit published by the API. The call waits until generation finishes.
&lt;/span&gt;&lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="n"&gt;urllib&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;request&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;urlopen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;timeout&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;300&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;resp&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;load&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;resp&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;data&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;url&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Image to image must include &lt;code&gt;input_urls&lt;/code&gt;. This URL is a public sample already hosted on the site, used here only to show the field.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://modelfold.ai/v1/images/generations &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer YOUR_MODELFOLD_API_KEY"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Content-Type: application/json"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'{"model":"gpt-image-2-6/economy-image-to-image","prompt":"Turn this product photo into a colored-pencil sketch on ivory paper. Keep the shape and the lettering.","aspect_ratio":"auto","output_format":"png","input_urls":["https://modelfold.ai/examples/gpt-image-2-6/gpt-image-2-6_flare-image-to-image-mw5vq7bn-um2v09.webp"]}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Flare and Sunburst use the same path with a different &lt;code&gt;model&lt;/code&gt;. Those tiers accept &lt;code&gt;resolution&lt;/code&gt; (&lt;code&gt;1K&lt;/code&gt;, &lt;code&gt;2K&lt;/code&gt; or &lt;code&gt;4K&lt;/code&gt;). For a GIF, set &lt;code&gt;output_format&lt;/code&gt; to &lt;code&gt;gif&lt;/code&gt; and send &lt;code&gt;frame_count&lt;/code&gt; plus &lt;code&gt;frame_duration_ms&lt;/code&gt;. Omit &lt;code&gt;resolution&lt;/code&gt; on Economy.&lt;/p&gt;

&lt;h2&gt;
  
  
  Parameters
&lt;/h2&gt;

&lt;p&gt;From the model page:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Supported values&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;prompt&lt;/td&gt;
&lt;td&gt;1 to 20,000 characters&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;input_urls&lt;/td&gt;
&lt;td&gt;Required for image to image. Up to 16 public JPEG, PNG or WebP URLs, up to 30 MB each&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;resolution&lt;/td&gt;
&lt;td&gt;Flare and Sunburst: 1K (default), 2K, 4K. Economy is 1K only; omit this field&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;aspect_ratio&lt;/td&gt;
&lt;td&gt;Flare and Sunburst: auto, 1:1, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5, 16:9, 9:16, 2:1, 1:2, 21:9, 9:21, 3:1, 1:3. Economy: auto, 1:1, 16:9, 9:16, 3:2, 2:3, 21:9, 4:3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;background&lt;/td&gt;
&lt;td&gt;auto, opaque or transparent. Applies only at 1K&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;output_format&lt;/td&gt;
&lt;td&gt;Flare and Sunburst: png, jpeg, webp; text to image also gif. Economy: png; text to image also gif&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;frame_count&lt;/td&gt;
&lt;td&gt;GIF on text to image only. Flare and Sunburst: auto, 4, 9, 16. Economy text to image also 25, 36, 64&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;frame_duration_ms&lt;/td&gt;
&lt;td&gt;Integers from 20 to 2000. The page says values are rounded to 10 ms&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;One task per request. The page says there is no batch count and no quality parameter. GIF is text to image only. SVG is not offered.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it fits
&lt;/h2&gt;

&lt;p&gt;Using only what the page already exposes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text to image. The built-in samples include product photos and text inside the picture.&lt;/li&gt;
&lt;li&gt;Edits from reference images. Image to image sends &lt;code&gt;input_urls&lt;/code&gt;. The Playground shows the reference and the sample result first.&lt;/li&gt;
&lt;li&gt;GIF from text to image. The Flare text-to-image sample on the page is a GIF.&lt;/li&gt;
&lt;li&gt;2K or 4K by choosing Flare or Sunburst and sending &lt;code&gt;resolution&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The page does not publish a measured ranking that one tier "looks better." Use its own description of Flare, Sunburst and Economy when you pick a model ID.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Create an account at &lt;a href="https://modelfold.ai/signup" rel="noopener noreferrer"&gt;https://modelfold.ai/signup&lt;/a&gt; and sign in.&lt;/li&gt;
&lt;li&gt;Open &lt;a href="https://modelfold.ai/account?tab=keys" rel="noopener noreferrer"&gt;https://modelfold.ai/account?tab=keys&lt;/a&gt; and create an API key. Keep it in an environment variable or a secret store.&lt;/li&gt;
&lt;li&gt;Call the endpoint above with curl or Python. All six model IDs share that key and that URL.&lt;/li&gt;
&lt;li&gt;To inspect the form and the samples first, open the Playground and switch among the six tiers.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The model page shows a Commercial use label. Read the current terms before you ship with the outputs: &lt;a href="https://modelfold.ai/terms" rel="noopener noreferrer"&gt;https://modelfold.ai/terms&lt;/a&gt;&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Model page: &lt;a href="https://modelfold.ai/models/gpt-image-2-6" rel="noopener noreferrer"&gt;https://modelfold.ai/models/gpt-image-2-6&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Playground: &lt;a href="https://modelfold.ai/models/gpt-image-2-6#playground" rel="noopener noreferrer"&gt;https://modelfold.ai/models/gpt-image-2-6#playground&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Economy text-to-image docs: &lt;a href="https://modelfold.ai/docs/en/models/image/gpt-image-2-6-economy-text-to-image" rel="noopener noreferrer"&gt;https://modelfold.ai/docs/en/models/image/gpt-image-2-6-economy-text-to-image&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;The other five docs use the same path with the model ID at the end, slashes replaced by hyphens. Flare text to image: &lt;a href="https://modelfold.ai/docs/en/models/image/gpt-image-2-6-flare-text-to-image" rel="noopener noreferrer"&gt;https://modelfold.ai/docs/en/models/image/gpt-image-2-6-flare-text-to-image&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>tutorial</category>
      <category>api</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Pay for AI API Credits with USDC or USDT: ModelFold's Crypto Top-Up Guide</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Fri, 06 Nov 2026 11:57:00 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/pay-for-ai-api-credits-with-usdc-or-usdt-modelfolds-crypto-top-up-guide-32l5</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/pay-for-ai-api-credits-with-usdc-or-usdt-modelfolds-crypto-top-up-guide-32l5</guid>
      <description>&lt;p&gt;You have a model to try and an app to build. Then checkout asks for a card that works internationally—and yours doesn't. Or you already hold stablecoins and would rather spend those than enter card details for another service.&lt;/p&gt;

&lt;p&gt;ModelFold now supports cryptocurrency top-ups with USDC and USDT-family assets on the networks listed below. You can fund your AI usage from a compatible wallet or exchange without using a bank card for the top-up.&lt;/p&gt;

&lt;p&gt;Disclosure: this guide is from the ModelFold team. Payment options and fees were checked against the live configuration on November 6, 2026. Always review the current checkout before sending funds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Card-free does not mean anonymous
&lt;/h2&gt;

&lt;p&gt;If your goal is to avoid sharing card details, a stablecoin payment provides another route. It is not a promise of anonymity: you still sign in to a ModelFold account, and the payment is associated with your recharge order. Transfers also leave public on-chain records. An exchange or wallet service may have its own identity requirements.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which tokens and networks are available?
&lt;/h2&gt;

&lt;p&gt;These combinations are currently enabled:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Network&lt;/th&gt;
&lt;th&gt;Accepted assets shown at checkout&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Base&lt;/td&gt;
&lt;td&gt;USDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Arbitrum One&lt;/td&gt;
&lt;td&gt;USDC, USDT0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;BNB Chain&lt;/td&gt;
&lt;td&gt;Binance-Peg USDC, Binance-Peg USDT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Polygon PoS&lt;/td&gt;
&lt;td&gt;USDC, USDT0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ethereum&lt;/td&gt;
&lt;td&gt;USDC, USDT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tron (TRC20)&lt;/td&gt;
&lt;td&gt;USDT&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The payment category is labeled USDC / USDT, but the asset variant matters. USDT0 and Binance-Peg assets are identified separately above. Base currently supports USDC here; do not send USDT on Base. Match the network &lt;strong&gt;and the exact token contract displayed in your order&lt;/strong&gt;, rather than relying on the ticker alone.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to top up
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Sign in and open &lt;a href="https://modelfold.ai/account?tab=wallet&amp;amp;utm_source=devto" rel="noopener noreferrer"&gt;Account → Wallet&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Choose your recharge amount and &lt;strong&gt;Cryptocurrency (USDC / USDT)&lt;/strong&gt;. Select the token and network before creating the order. Available payment methods can depend on language and region.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Connected wallet&lt;/strong&gt; when available, or &lt;strong&gt;Manual transfer&lt;/strong&gt;. Tron uses manual transfer.&lt;/li&gt;
&lt;li&gt;Review the recharge amount, crypto fee, any network surcharge, and the final amount due.&lt;/li&gt;
&lt;li&gt;Complete the payment before the order's countdown expires, then wait for the checkout to show &lt;strong&gt;Payment credited&lt;/strong&gt;. Check your Wallet balance and recharge record afterward.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;With a connected wallet, verify the wallet through the signature request, then review and confirm the transfer in your wallet. The checkout fills the amount automatically and does not add a manual-payment identifying fraction. Connecting or signing alone does not complete the payment.&lt;/p&gt;

&lt;p&gt;For a manual transfer, copy the receiving address and send the &lt;strong&gt;exact amount&lt;/strong&gt;, including every displayed decimal place. The order includes a small identifying fraction so the incoming transfer can be matched to it. The QR code supplies the address only; enter the amount yourself. If you withdraw from an exchange, account for its withdrawal fee so the full exact amount reaches the receiving address.&lt;/p&gt;

&lt;p&gt;Orders have a 30-minute payment window. Do not initiate a new transfer to an expired order. If you already sent a transaction, check its status before trying again; a pending confirmation is not a reason to pay twice. Keep the order reference and transaction hash if you need support.&lt;/p&gt;

&lt;h2&gt;
  
  
  What you pay, and what becomes credits
&lt;/h2&gt;

&lt;p&gt;Crypto payments currently add a &lt;strong&gt;5% fee&lt;/strong&gt; to the recharge price. There is also a fixed checkout surcharge of &lt;strong&gt;$3 on Ethereum&lt;/strong&gt; or &lt;strong&gt;$1 on Tron&lt;/strong&gt;; the other networks listed above currently have no fixed checkout surcharge. Your wallet's network gas fee or exchange withdrawal fee is separate.&lt;/p&gt;

&lt;p&gt;Manual transfers add an identifying fraction of up to &lt;strong&gt;0.0999 tokens&lt;/strong&gt;. Your order shows the final amount to send.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Credits are calculated from the original recharge amount.&lt;/strong&gt; The crypto fee, network surcharge, and identifying fraction do not earn credits, and are not deducted from the package's advertised credits.&lt;/p&gt;

&lt;p&gt;For example, the current &lt;strong&gt;$5 package provides 1,000 credits&lt;/strong&gt;. Paying for it with a connected wallet using USDC on Base means a checkout amount of &lt;strong&gt;5.25 USDC&lt;/strong&gt;, plus the network gas fee paid by your wallet. A manual payment for the same package adds the order's identifying fraction, so copy the actual order amount rather than sending 5.25 USDC from this example.&lt;/p&gt;

&lt;p&gt;An eligible first recharge currently receives &lt;strong&gt;10% extra credits&lt;/strong&gt;. For that $5 package, that means 1,000 package credits plus 100 bonus credits: &lt;strong&gt;1,100 credits total&lt;/strong&gt;. Eligibility is based on whether the account has previously topped up, not whether this is its first crypto payment.&lt;/p&gt;

&lt;p&gt;Credit arrives after the transfer is matched and the required blockchain confirmations are reached. Timing depends on the network and payment processing; this is not an instant-settlement promise. Sending the wrong asset, rounding the amount, or allowing a withdrawal fee to reduce the received amount can prevent automatic crediting.&lt;/p&gt;

&lt;h2&gt;
  
  
  One API integration, a shared balance across models
&lt;/h2&gt;

&lt;p&gt;Once the recharge is credited, the balance funds usage through ModelFold. Its &lt;a href="https://modelfold.ai/docs/en/?utm_source=devto" rel="noopener noreferrer"&gt;API documentation&lt;/a&gt; covers chat, image, video, and speech models behind one service and API key. Browse the &lt;a href="https://modelfold.ai/market?utm_source=devto" rel="noopener noreferrer"&gt;model catalog&lt;/a&gt; for current availability and pricing.&lt;/p&gt;

&lt;p&gt;Create your own key under &lt;a href="https://modelfold.ai/account?tab=keys&amp;amp;utm_source=devto" rel="noopener noreferrer"&gt;Account → API keys&lt;/a&gt;. For a read-only discovery request, set &lt;code&gt;MODELFOLD_API_KEY&lt;/code&gt; privately in your shell and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://modelfold.ai/v1/models &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer &lt;/span&gt;&lt;span class="nv"&gt;$MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Choose an available chat model's exact ID for a request to &lt;code&gt;/v1/chat/completions&lt;/code&gt;. Images, videos, and audio use their respective generation endpoints and model-specific parameters. One integration and balance simplify access across the catalog; they do not mean every model accepts the same payload or that every model on the market is supported.&lt;/p&gt;

&lt;p&gt;The practical change is at checkout: if a bank card was the missing piece, you now have a stablecoin option for funding the same ModelFold account and API workflow.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>ai</category>
      <category>webdev</category>
      <category>api</category>
    </item>
    <item>
      <title>Claude on ModelFold: No Proxy/VPN Needed, Stable and Reliable Workflows</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Thu, 05 Nov 2026 10:13:03 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/claude-on-modelfold-no-proxyvpn-needed-stable-and-reliable-workflows-2ifo</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/claude-on-modelfold-no-proxyvpn-needed-stable-and-reliable-workflows-2ifo</guid>
      <description>&lt;p&gt;Using Claude for everyday development starts with access, then failure handling and budgeting. ModelFold highlights two practical benefits: &lt;strong&gt;no proxy/VPN needed from mainland networks&lt;/strong&gt; where direct access is available, so you can open the site and configure Claude Code / API without setting up your own proxy or VPN; and &lt;strong&gt;stable and reliable&lt;/strong&gt; workflows supported by explicit error detection, refunds and credit settlement.&lt;/p&gt;

&lt;p&gt;ModelFold offers Claude models, Claude Code integration and usage-based billing. Here, “stable and reliable” refers to the verifiable handling mechanisms described below. Its approach to affordability is straightforward: no subscription is required, so you can start with signup credits and add funds as needed.&lt;/p&gt;

&lt;p&gt;The model names and top-up information below were checked on &lt;strong&gt;November 5, 2026&lt;/strong&gt;. Current site configuration and settlement records take precedence if anything changes.&lt;/p&gt;

&lt;h2&gt;
  
  
  No proxy/VPN needed from mainland networks: fewer setup steps
&lt;/h2&gt;

&lt;p&gt;You do not need to prepare your own proxy or VPN to access ModelFold on networks that allow direct access. Open the site from your mainland network, then follow the guide to point Claude Code or your application's API configuration to ModelFold and use your own API key.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Our local connectivity check explicitly disabled curl proxy settings&lt;/strong&gt;: the ModelFold homepage returned HTTP 200, while &lt;code&gt;/anthropic/v1/models&lt;/code&gt; and &lt;code&gt;/anthropic/v1/messages&lt;/code&gt; returned the expected HTTP 401 missing-credentials response. This confirms direct access to the site and the API authentication layer from the tested network. It does not verify model generation or establish reachability across every region, carrier or corporate network. Check from your own network before connecting your workflow.&lt;/p&gt;

&lt;p&gt;“No proxy/VPN needed” refers to the user-side network setup for accessing ModelFold. Normal use still requires an account, a valid API key and sufficient credits.&lt;/p&gt;

&lt;h2&gt;
  
  
  Which Opus, Sonnet and Haiku models are listed?
&lt;/h2&gt;

&lt;p&gt;The current site catalog and pricing page list these models:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Family&lt;/th&gt;
&lt;th&gt;Models listed on ModelFold&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Claude Opus&lt;/td&gt;
&lt;td&gt;Opus 4.5, 4.6, 4.7, 4.8, 5 and 5.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Sonnet&lt;/td&gt;
&lt;td&gt;Sonnet 4.5, 4.6, 5 and 5.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Haiku&lt;/td&gt;
&lt;td&gt;Haiku 4.5 and 5.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude Fable&lt;/td&gt;
&lt;td&gt;Fable 5&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffrzjxvtixnq6ww1xtvh5.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffrzjxvtixnq6ww1xtvh5.png" alt="Claude models and pricing" width="800" height="1820"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure: Claude rows from the English pricing page; columns show model and input/output basis, credits, and US dollars per million tokens. Prices were captured on November 5, 2026; final charges follow usage settlement.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Start with a task from your own workflow: organizing requirements, explaining an error or reviewing a small piece of code. Compare whether each answer is useful on the same input, then consider the credit usage before choosing a model for regular work. This is a suggested evaluation method, not a performance ranking or a benchmark conducted for this article.&lt;/p&gt;

&lt;p&gt;These are display names. When configuring Claude Code or an API request, use the model ID returned by the model-list endpoint rather than copying a display name into the request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Stable and reliable: error detection, automatic refunds and credit settlement
&lt;/h2&gt;

&lt;p&gt;ModelFold's Claude Code / Messages interface reserves credits before a request and settles the charge when it ends. Its existing handling detects API error events as well as empty results with no output tokens, content blocks or text deltas. These cases are treated as failures: the actual charge is zero and reserved credits are automatically refunded.&lt;/p&gt;

&lt;p&gt;That provides a defined resolution when a request produces no result after a credit reservation. Successful requests also reconcile the reservation against the settlement amount rather than simply charging the initial estimate.&lt;/p&gt;

&lt;p&gt;There is an important boundary: &lt;strong&gt;if content has already been produced before you cancel or the connection drops, actual usage may still be charged&lt;/strong&gt;. An interrupted request is not necessarily free. This article does not promise that every request will succeed or turn these mechanisms into an unmeasured uptime claim.&lt;/p&gt;

&lt;h2&gt;
  
  
  Affordability starts with a manageable budget
&lt;/h2&gt;

&lt;p&gt;ModelFold uses prepaid credits and usage-based billing, with no monthly subscription required. New registrations currently receive &lt;strong&gt;50 credits&lt;/strong&gt;, allowing you to try a small task before deciding whether to top up. The number of requests those credits cover depends on the model, input length and output volume.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjut88p0v7nwcp1xr2na2.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjut88p0v7nwcp1xr2na2.png" alt="Homepage banner offering 50 signup credits" width="800" height="72"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure: The English homepage currently offers 50 free signup credits; check the live page for subsequent changes.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The current fixed top-up packages are denominated in US dollars:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Top-up amount&lt;/th&gt;
&lt;th&gt;Credits received&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;$5&lt;/td&gt;
&lt;td&gt;1,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$20&lt;/td&gt;
&lt;td&gt;4,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$50&lt;/td&gt;
&lt;td&gt;10,750&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;$500&lt;/td&gt;
&lt;td&gt;110,000&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The $5 and $20 packages both provide 200 credits per dollar. The $50 package provides 215 credits per dollar, and the $500 package provides 220. Choose around your expected usage; a better credit rate does not require buying more than you need.&lt;/p&gt;

&lt;p&gt;Claude input and output usage are billed separately, and usage such as caching can also affect settlement. Billable requests are rounded up under the billing rules, with a minimum charge of one credit. A displayed per-million-token rate alone therefore does not determine the exact charge for a request. Plan around model pricing, actual request length and the final usage record.&lt;/p&gt;

&lt;p&gt;The practical saving here is control over spending and the ability to evaluate with a small balance, rather than an unverified percentage discount.&lt;/p&gt;

&lt;h2&gt;
  
  
  Connect Claude Code / API without setting up your own proxy
&lt;/h2&gt;

&lt;p&gt;ModelFold provides an Anthropic Messages-compatible interface and a Claude Code CLI integration guide. In your own environment, configure your ModelFold API key, set &lt;code&gt;ANTHROPIC_BASE_URL&lt;/code&gt; to &lt;code&gt;https://modelfold.ai/anthropic&lt;/code&gt;, and select a model ID from the model-list response.&lt;/p&gt;

&lt;p&gt;The base URL ends at &lt;code&gt;/anthropic&lt;/code&gt;; Claude Code appends the request path. Your own application can also use the corresponding Messages API. Follow the site's documentation for the configuration details.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiw9spmfr6ru6f9y8t9nf.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fiw9spmfr6ru6f9y8t9nf.png" alt="Claude Code CLI configuration documentation" width="800" height="998"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Figure: Configuration examples from the English CLI guide show the base URL and credential variables; only variable names and example placeholders are visible, with no real credentials.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;A practical first session is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Register and check your signup credits and current model prices.&lt;/li&gt;
&lt;li&gt;When you need programmatic access, create your own API key in your account and configure Claude Code or your application using the guide.&lt;/li&gt;
&lt;li&gt;Read the available-model list, choose a model and submit a short task without sensitive information.&lt;/li&gt;
&lt;li&gt;Review the answer and credit usage before expanding the input, changing models or adding funds.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://modelfold.ai/pricing" rel="noopener noreferrer"&gt;ModelFold pricing&lt;/a&gt; · &lt;a href="https://modelfold.ai/docs/en/ai-agent/claude-code" rel="noopener noreferrer"&gt;Claude Code CLI integration guide&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Designing an AI Livestream Assistant: Separate Scripts from Generated Replies</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Mon, 02 Nov 2026 15:34:11 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/designing-an-ai-livestream-assistant-separate-scripts-from-generated-replies-4ijd</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/designing-an-ai-livestream-assistant-separate-scripts-from-generated-replies-4ijd</guid>
      <description>&lt;p&gt;A welcome message and an answer to a viewer's question do not need the same execution path. A welcome can use a preset. A contextual answer may need a model.&lt;/p&gt;

&lt;p&gt;ModelFold AI Live Room 0.1.0 uses both paths in a desktop app: it reads Douyin livestream chat, generates spoken replies, and drives a Live2D avatar's mouth movement from voice volume.&lt;/p&gt;

&lt;p&gt;Disclosure: this is a ModelFold team walkthrough based on the public setup guide and implementation. We did not conduct a new live broadcast or paid reply test for this article. It contains no latency, conversion, or audience-growth benchmark.&lt;/p&gt;

&lt;h2&gt;
  
  
  The platform boundary comes first
&lt;/h2&gt;

&lt;p&gt;The app's documented chat integration is &lt;strong&gt;Douyin&lt;/strong&gt;, not TikTok, Twitch, or YouTube. An English interface is available, but that does not establish an integration with English-speaking streaming platforms. OBS capture and chat collection are also different things: being able to capture a window does not add another platform's chat API.&lt;/p&gt;

&lt;p&gt;Installers are available for Apple silicon Macs, Intel Macs, and Windows x64 through the &lt;a href="https://modelfold.ai/docs/en/apps/ai-live-room?utm_source=devto" rel="noopener noreferrer"&gt;setup guide&lt;/a&gt;. They are unsigned and not notarized; evaluate that before installation and follow the guide if your operating system blocks them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Separate the speech paths
&lt;/h2&gt;

&lt;p&gt;The app supports preset welcomes, grouped welcomes, and preset idle introductions. These paths do not call a language model. Contextual chat replies use a configured persona and recent conversation context, with duplicate filtering and reply queues.&lt;/p&gt;

&lt;p&gt;Here is an illustrative event-routing sketch, not an app configuration file or a claim of its exact scheduler:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Architecture sketch only; these function names are not an SDK.&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;chooseSpeechPath&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;switch &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;event&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;type&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;viewer_join&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;preset_welcome&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;needsLLM&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
    &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;idle_interval&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;preset_intro&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;needsLLM&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
    &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;viewer_question&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;contextual_reply&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;needsLLM&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
    &lt;span class="nl"&gt;default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
      &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;no_reply&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;needsLLM&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This separation makes the cost boundary understandable: the desktop app is free, while AI replies use ModelFold account credits based on actual model usage. Presets do not consume language-model credits. Network, hardware, or platform costs are separate, and speech synthesis depends on a network service.&lt;/p&gt;

&lt;h2&gt;
  
  
  Rehearse before connecting a live room
&lt;/h2&gt;

&lt;p&gt;Start with mock chat and offline scripts. Use a persona with a defined scope. The following is a sample persona brief to adapt, not a built-in default:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Role: a supervised host for a software demo.
Answer briefly using only the supplied product facts.
If pricing, availability, or a claim is uncertain, ask the human host.
Do not invent offers, customer stories, or platform policies.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A prompt is guidance, not a safety guarantee. Keep a person supervising and able to take over.&lt;/p&gt;

&lt;p&gt;Try a short rehearsal matrix:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Input&lt;/th&gt;
&lt;th&gt;What to inspect&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Several viewers arrive close together&lt;/td&gt;
&lt;td&gt;Grouped welcomes and speech pacing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;The same question appears twice&lt;/td&gt;
&lt;td&gt;Duplicate filtering and queued replies&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Chat becomes quiet&lt;/td&gt;
&lt;td&gt;Preset idle introduction&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A question is outside the persona's facts&lt;/td&gt;
&lt;td&gt;Whether a human needs to intervene&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The first stages can be rehearsed without a model call. Testing generated answers is a separate, credit-consuming step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Treat video and audio capture as a separate check
&lt;/h2&gt;

&lt;p&gt;The app offers Live2D lip sync, backgrounds, captions, aspect ratios, and output settings for use with OBS or a livestreaming companion. Add the avatar source or capture its window, configure audio, and inspect the actual capture in your environment. Do not infer universal OBS compatibility from the presence of an output setting.&lt;/p&gt;

&lt;p&gt;Before a public stream, check audio routing, visible captions, required AI or virtual-host labeling, and the human takeover procedure. Use a room you are authorized to connect and assets whose licenses cover your use. The bundled Live2D sample is a demonstration asset, not a blanket commercial license.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep unfinished features out of the promise
&lt;/h2&gt;

&lt;p&gt;Gift decoding and priority queuing exist, but real gift events still need validation. Likes can be collected; dedicated reply scripts are planned. Printer connections and automatic printing are not implemented.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://modelfold.ai/docs/en/apps/ai-live-room?utm_source=devto" rel="noopener noreferrer"&gt;public feature-status page&lt;/a&gt; is the useful starting point if this Douyin-specific workflow fits your project. A reliable rehearsal should establish what your setup can actually do before you promise it to viewers.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>tutorial</category>
      <category>architecture</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Render Personalized Images from One Editable Template with ModelFold Studio</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Mon, 02 Nov 2026 15:33:15 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/render-personalized-images-from-one-editable-template-with-modelfold-studio-hj8</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/render-personalized-images-from-one-editable-template-with-modelfold-studio-hj8</guid>
      <description>&lt;p&gt;If the layout is already approved and only the speaker name or session title changes, you can fill a template instead of asking an image model to recreate the design for every record.&lt;/p&gt;

&lt;p&gt;ModelFold Studio exposes a rendering endpoint for that workflow: one editable document, an array of variable values, and one output image per row.&lt;/p&gt;

&lt;p&gt;Disclosure: this is a ModelFold team tutorial. Requests below are illustrative and have not been submitted as paid renders for this article. Sample names and sessions are fictional input data, not customer examples.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prepare the template first
&lt;/h2&gt;

&lt;p&gt;Open &lt;a href="https://modelfold.ai/studio?utm_source=devto" rel="noopener noreferrer"&gt;Studio&lt;/a&gt; and prepare your own template with text placeholders such as &lt;code&gt;{{name}}&lt;/code&gt; and &lt;code&gt;{{session}}&lt;/code&gt;. Save it as a template in your account. The API lists your templates and their detected variables:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Assumes MODELFOLD_API_KEY is set privately in your shell.&lt;/span&gt;
curl &lt;span class="nt"&gt;-sS&lt;/span&gt; &lt;span class="s1"&gt;'https://modelfold.ai/v1/studio/templates'&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer &lt;/span&gt;&lt;span class="nv"&gt;$MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Use an ID returned for your own account, not a public gallery slug or the example number from another guide. Inspect its &lt;code&gt;variables&lt;/code&gt;, &lt;code&gt;width&lt;/code&gt;, and &lt;code&gt;height&lt;/code&gt; before building a batch.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkbrowlk2iyux67o4sn6n.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkbrowlk2iyux67o4sn6n.png" alt="Existing real Studio editor screenshot, reused from the launch walkthrough; it is not a batch-output example" width="800" height="556"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Text placeholders are replaced by matching row values. A missing value becomes an empty string, so validate your data before rendering. A long session title may need a different layout: substitution is not a guarantee that arbitrary text fits.&lt;/p&gt;

&lt;h2&gt;
  
  
  Submit a small batch
&lt;/h2&gt;

&lt;p&gt;Create &lt;code&gt;render-request.json&lt;/code&gt;, replacing &lt;code&gt;YOUR_TEMPLATE_ID&lt;/code&gt; with your own returned ID:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"template_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"YOUR_TEMPLATE_ID"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"rows"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Alex"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"session"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Shipping a Small API"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Sam"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"session"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Designing Useful Defaults"&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"page"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"format"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"png"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"scale"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then submit it when you are ready to spend render credits:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-sS&lt;/span&gt; &lt;span class="s1"&gt;'https://modelfold.ai/v1/studio/render'&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s2"&gt;"Authorization: Bearer &lt;/span&gt;&lt;span class="nv"&gt;$MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-H&lt;/span&gt; &lt;span class="s1"&gt;'Content-Type: application/json'&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--data-binary&lt;/span&gt; @render-request.json &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; render-response.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This endpoint is synchronous. It is different from the async task API used for generating complete PPT decks. A render request accepts up to 100 rows and selects one zero-based page. It supports PNG or JPG and a scale from 0.25 to 2. For a single output, use &lt;code&gt;variables&lt;/code&gt; instead of a batch of &lt;code&gt;rows&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Inspect every row result
&lt;/h2&gt;

&lt;p&gt;A successful HTTP response does not mean every image rendered. The response's &lt;code&gt;results&lt;/code&gt; array contains per-row success flags and either a URL or an error. With &lt;code&gt;jq&lt;/code&gt; installed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Print successful image URLs.&lt;/span&gt;
jq &lt;span class="nt"&gt;-r&lt;/span&gt; &lt;span class="s1"&gt;'.results[] | select(.ok == true) | .url'&lt;/span&gt; render-response.json

&lt;span class="c"&gt;# Inspect failures before deciding what to retry.&lt;/span&gt;
jq &lt;span class="s1"&gt;'.results[] | select(.ok != true)'&lt;/span&gt; render-response.json

&lt;span class="c"&gt;# Read the final charge reported for the batch.&lt;/span&gt;
jq &lt;span class="s1"&gt;'.credits'&lt;/span&gt; render-response.json
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Preserve the input row order alongside the result array so you can identify failed records. The documented default is one credit per successful image; pricing is configurable. The implementation reserves for the requested batch, then settles against successful renders. Failed images are not charged.&lt;/p&gt;

&lt;p&gt;Do not apply the deck-creation API's idempotency promise to &lt;code&gt;/v1/studio/render&lt;/code&gt;: this render endpoint does not document an &lt;code&gt;Idempotency-Key&lt;/code&gt; guarantee. If a client times out after submission, check account usage before blindly resending the batch.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where AI and PPT fit
&lt;/h2&gt;

&lt;p&gt;This API renders an existing Studio document. There is currently no public endpoint for generating a single design from a text prompt. You can start a design in the Studio interface and reuse its layout with data.&lt;/p&gt;

&lt;p&gt;For a complete presentation, ModelFold PPT 1.1 uses the async jobs API and can return a deck for further editing in Studio. PPTX exports aim to preserve editable text and supported shapes; some other elements are rasterized. That is a separate workflow from rendering one selected page per data row.&lt;/p&gt;

&lt;p&gt;See the &lt;a href="https://modelfold.ai/docs/en/api/studio?utm_source=devto" rel="noopener noreferrer"&gt;Studio API reference&lt;/a&gt; for rendering and the &lt;a href="https://modelfold.ai/docs/en/models/office/modelfold-ppt-1-1?utm_source=devto" rel="noopener noreferrer"&gt;PPT model reference&lt;/a&gt; for deck generation. Test one representative row, then a long-text row, before scaling up.&lt;/p&gt;

</description>
      <category>api</category>
      <category>tutorial</category>
      <category>design</category>
      <category>automation</category>
    </item>
    <item>
      <title>Claude Desktop vs Claude Code CLI: Two Different Gateway Setups</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Mon, 02 Nov 2026 15:32:05 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/claude-desktop-vs-claude-code-cli-two-different-gateway-setups-74e</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/claude-desktop-vs-claude-code-cli-two-different-gateway-setups-74e</guid>
      <description>&lt;p&gt;Changing a terminal environment variable can route Claude Code CLI through a gateway. It does not configure the Code tab inside the Claude desktop app. Those are separate configuration paths, and confusing them can leave you using the wrong account.&lt;/p&gt;

&lt;p&gt;Disclosure: this tutorial comes from the ModelFold team. It uses our gateway as the example. The Windows screenshots document configuration and the Gateway state; they are not evidence of a completed paid coding session.&lt;/p&gt;

&lt;h2&gt;
  
  
  Choose the right surface
&lt;/h2&gt;

&lt;p&gt;This guide covers the desktop app's &lt;strong&gt;Code tab&lt;/strong&gt; and the CLI. It does not add third-party API keys to ordinary claude.ai web chat or the mobile app.&lt;/p&gt;

&lt;p&gt;For the desktop app, use the third-party inference form. For the CLI, use environment variables. ModelFold's &lt;a href="https://modelfold.ai/docs/en/ai-agent/claude-code-client?utm_source=devto" rel="noopener noreferrer"&gt;Windows walkthrough&lt;/a&gt; now includes real screenshots of the relevant menus.&lt;/p&gt;

&lt;h2&gt;
  
  
  Configure the desktop app on Windows
&lt;/h2&gt;

&lt;p&gt;Install the official Claude desktop app using the download link in the walkthrough. You will also need your own ModelFold API key from &lt;a href="https://modelfold.ai/account?tab=keys&amp;amp;utm_source=devto" rel="noopener noreferrer"&gt;Console → API Keys&lt;/a&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the application menu at the top left.&lt;/li&gt;
&lt;li&gt;Choose Help → Troubleshooting → Enable Developer Mode. Let the app restart.&lt;/li&gt;
&lt;li&gt;Open Developer → Configure Third-Party Inference.&lt;/li&gt;
&lt;li&gt;Under Connection, choose Gateway and enter:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Inference provider: Gateway
Gateway base URL: https://modelfold.ai/anthropic
Credential kind: Static API key
Gateway API key: &amp;lt;your raw mf- key&amp;gt;
Gateway auth scheme: bearer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Click Apply Changes and allow the app to relaunch. Follow a Save &amp;amp; Restart prompt if it appears. These are application settings; putting the same information in a terminal does not configure this desktop surface.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqbe28fmtk0ub72l6ejrq.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqbe28fmtk0ub72l6ejrq.webp" alt="Actual Windows gateway form, with the API key masked" width="800" height="621"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The screenshot uses a Chinese application UI. The field values above provide the English equivalents.&lt;/p&gt;

&lt;p&gt;Keep the base URL at &lt;code&gt;/anthropic&lt;/code&gt;. The client appends &lt;code&gt;/v1/messages&lt;/code&gt;; adding &lt;code&gt;/v1&lt;/code&gt; yourself can produce an incorrect path. Paste the key without &lt;code&gt;Bearer&lt;/code&gt; because the selected authentication scheme adds that prefix.&lt;/p&gt;

&lt;p&gt;After restarting, the Code page should identify the connection as Gateway. This checks the selected configuration, not whether every model request will succeed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fijue3lvwfzsxuio5pt2s.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fijue3lvwfzsxuio5pt2s.webp" alt="Actual Windows Code page showing the Gateway connection state" width="800" height="491"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Configure the CLI separately
&lt;/h2&gt;

&lt;p&gt;If you use Claude Code in a terminal, the configuration is different. The following PowerShell example assumes you have already set &lt;code&gt;MODELFOLD_API_KEY&lt;/code&gt; privately in that shell. Do not paste a real key into an article, repository, or screenshot.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# These variables affect the CLI launched from this PowerShell session.&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_BASE_URL&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://modelfold.ai/anthropic"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;ANTHROPIC_AUTH_TOKEN&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Read-only model discovery; this does not generate an answer.&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;curl.exe&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-sS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://modelfold.ai/anthropic/v1/models"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="se"&gt;`
&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;-H&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Authorization: Bearer &lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;MODELFOLD_API_KEY&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Use an actual id returned above, not a guessed model alias.&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;claude&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;--model&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&amp;lt;model-id-from-the-response&amp;gt;"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Replace the model placeholder before running the final command. Prefer one credential method; an old &lt;code&gt;ANTHROPIC_API_KEY&lt;/code&gt; in your environment can make the configuration harder to reason about. In the CLI, &lt;code&gt;/status&lt;/code&gt; helps check the base URL and authentication source. PowerShell users should use &lt;code&gt;curl.exe&lt;/code&gt;, since &lt;code&gt;curl&lt;/code&gt; may resolve to a PowerShell alias.&lt;/p&gt;

&lt;h2&gt;
  
  
  Separate configuration checks from paid tests
&lt;/h2&gt;

&lt;p&gt;A models response confirms discovery and authentication. The Gateway label confirms the desktop configuration. Neither proves a completed generation.&lt;/p&gt;

&lt;p&gt;When you decide to test a real coding request, use a small local folder and a short task, review the requested file/tool permissions, and check the usage record in your ModelFold account afterward. Generation consumes credits; this article did not run a paid desktop request.&lt;/p&gt;

&lt;p&gt;If you see 401, check for a revoked key or a duplicated &lt;code&gt;Bearer&lt;/code&gt; prefix. For 404, check the base path. A Windows Virtual Machine Platform warning is a separate workspace prerequisite, covered in the Windows walkthrough. Organization-managed settings may prevent local changes.&lt;/p&gt;

&lt;p&gt;Anthropic documents the desktop gateway configuration in its &lt;a href="https://claude.com/docs/third-party/claude-desktop/gateway" rel="noopener noreferrer"&gt;gateway reference&lt;/a&gt; and &lt;a href="https://claude.com/docs/third-party/claude-desktop/in-app-configuration" rel="noopener noreferrer"&gt;in-app configuration guide&lt;/a&gt;. Use those for client changes; use the &lt;a href="https://modelfold.ai/docs/en/ai-agent/claude-code?utm_source=devto" rel="noopener noreferrer"&gt;ModelFold CLI guide&lt;/a&gt; for our endpoint and authentication details. Do not assume cloud sessions or ordinary chat use this local configuration.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>ai</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Introducing ModelFold Studio: From an Idea to an Editable Poster or Slide Deck</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Fri, 30 Oct 2026 12:25:04 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/introducing-modelfold-studio-from-an-idea-to-an-editable-poster-or-slide-deck-3ekb</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/introducing-modelfold-studio-from-an-idea-to-an-editable-poster-or-slide-deck-3ekb</guid>
      <description>&lt;p&gt;You have the outline for a presentation, but the first slide is still blank. Or an event is coming up and you need a poster today. Getting to a usable first draft can take longer than expected.&lt;/p&gt;

&lt;p&gt;We built &lt;a href="https://modelfold.ai/studio" rel="noopener noreferrer"&gt;ModelFold Studio&lt;/a&gt; to help with that step. Start with a template or describe what you need, then keep working on the text and layout in the editor. Studio supports individual designs and complete slide decks.&lt;/p&gt;

&lt;p&gt;This is a walkthrough of our own product. The screenshots show the Chinese interface used in our hands-on test; the English text below explains the same workflow. The example edits and exports were made from a template, without paid AI generation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with a template and make it yours
&lt;/h2&gt;

&lt;p&gt;Open the &lt;a href="https://modelfold.ai/studio#templates" rel="noopener noreferrer"&gt;template gallery&lt;/a&gt;, choose a design, and sign in to create your own editable copy.&lt;/p&gt;

&lt;p&gt;For a quarterly review, the &lt;a href="https://modelfold.ai/studio/d/official-business" rel="noopener noreferrer"&gt;business presentation template&lt;/a&gt; gives you a starting layout. Replace the title, reporting period, and key points, then adjust the placement of individual elements.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3474wgid9hcxai99pbit.jpg" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F3474wgid9hcxai99pbit.jpg" alt="Business presentation template preview" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In our test, we opened this template in the editor, selected the main title in the layer panel, and changed it to the Chinese equivalent of “Q4 Business Review.” We also updated the subtitle to describe the team's results and next steps. Changes save automatically.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftk07bcc63e91oyl7hrmo.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftk07bcc63e91oyl7hrmo.png" alt="The actual editor after creating a copy of the template" width="800" height="556"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The layer panel helps you select the element you want. The canvas shows the design, and the properties panel lets you change its text and appearance.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F43k4ij67pbuqq8twtzsp.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F43k4ij67pbuqq8twtzsp.png" alt="Selecting and changing the main title" width="800" height="556"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Preparing a product announcement instead? The &lt;a href="https://modelfold.ai/studio/d/official-product" rel="noopener noreferrer"&gt;product launch template&lt;/a&gt; offers another starting point.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdz0ge77ohymv43ypwx28.jpg" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdz0ge77ohymv43ypwx28.jpg" alt="Product launch template preview" width="540" height="810"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Describe the first draft you need
&lt;/h2&gt;

&lt;p&gt;When you want to start from a prompt, give Studio the audience, format, required content, and visual direction. For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Create a portrait opening-week poster for Mountain Coffee. Use warm cream and coffee-brown colors with a clean, welcoming layout. Make “Opening Week: Second Drink Half Price” the headline. Include November 1–7 and the sample address 18 Example Street. The design will be used as an Instagram feed post.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Choose an appropriate canvas size, enter the brief, and generate a draft. Pick a result and continue editing it: refine the headline, correct the offer details, or move an element to improve the layout.&lt;/p&gt;

&lt;p&gt;The same approach works for posters, social media covers, infographics, and individual presentation pages. Custom canvas dimensions are available when you have a specific size requirement.&lt;/p&gt;

&lt;h2&gt;
  
  
  For a full deck, review the outline first
&lt;/h2&gt;

&lt;p&gt;Switch to the full slide deck mode, enter your topic, and choose the slide count, language, and visual theme. Generate an outline before creating the pages.&lt;/p&gt;

&lt;p&gt;This gives you a chance to review slide titles, key points, and order while changes are still quick to make. For an employee onboarding deck, for example, check that the outline covers the team, everyday workflows, and common questions before generating the slides.&lt;/p&gt;

&lt;p&gt;Once the pages are ready, continue editing them individually and use presentation mode to preview the flow. Review the story before polishing the visual details.&lt;/p&gt;

&lt;h2&gt;
  
  
  Export for the next step
&lt;/h2&gt;

&lt;p&gt;Studio offers PNG, JPG, PDF, and PPTX exports, plus a PNG ZIP option for multi-page designs.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp6wqigkterjr5s9ju6ty.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp6wqigkterjr5s9ju6ty.png" alt="Export options in the actual editor" width="800" height="556"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We downloaded both PNG and PPTX files during the template walkthrough. Here is the exported PNG after changing the title and subtitle:&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flx0bbizun35wt5fwyw2t.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flx0bbizun35wt5fwyw2t.png" alt="The exported design after editing the title and subtitle" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For PPTX exports, Studio aims to preserve text, solid-color shapes, and lines as editable objects. Some other elements are rendered as images, so check the exported file in your presentation software if you plan to keep editing it.&lt;/p&gt;

&lt;p&gt;You can also enable public sharing when you want someone to view a design online. Public sharing provides a read-only view.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it with one real task
&lt;/h2&gt;

&lt;p&gt;Start with the next thing you actually need: an event poster, a project update, or a cover for your next post. A useful brief answers four questions: who will see it, where it will appear, what it must say, and how it should feel.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://modelfold.ai/studio" rel="noopener noreferrer"&gt;Open ModelFold Studio&lt;/a&gt;, choose a template or write a brief, and turn the first draft into something you can use.&lt;/p&gt;

&lt;p&gt;AI generation uses credits; check the estimate shown in the interface. Review generated text, figures, and factual claims before publishing or presenting your work.&lt;/p&gt;

</description>
      <category>ai</category>
    </item>
    <item>
      <title>Getting Started with Kling 4.0 on ModelFold: Reference Inputs, Keyframes, and a Real Video Example</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Thu, 29 Oct 2026 13:08:04 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/getting-started-with-kling-40-on-modelfold-reference-inputs-keyframes-and-a-real-video-example-3iil</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/getting-started-with-kling-40-on-modelfold-reference-inputs-keyframes-and-a-real-video-example-3iil</guid>
      <description>&lt;p&gt;An animated image is a useful starting point. For a more deliberate video, the questions become more specific: Can I use my own product photo? Can a reference clip guide the camera movement? Can I decide how the shot begins and ends?&lt;/p&gt;

&lt;p&gt;This guide walks through the two Kling 4.0 modes currently available through ModelFold: &lt;strong&gt;Reference to Video&lt;/strong&gt; and &lt;strong&gt;Keyframe to Video&lt;/strong&gt;. It includes the actual input images and an existing output example, followed by a simple workflow for your first clip.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Disclosure:&lt;/strong&gt; I work on ModelFold, which provides access through an upstream provider. This is a guide to our current integration, rather than an independent benchmark. The example below was already available on our model page; I did not run a new generation for this article.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is available today?
&lt;/h2&gt;

&lt;p&gt;ModelFold currently offers 720p and 1080p output, durations from 3 to 30 seconds, and synchronized audio and video generation. Plan around the options currently available on the model page: 4K and HDR are marked as upcoming there.&lt;/p&gt;

&lt;p&gt;Kling 4.0 is developed by Kuaishou. This article introduces access through ModelFold; it does not claim an exclusive launch or access ahead of the official release. For the developer's own overview, see &lt;a href="https://kling.ai/blog/kling4-work-creative-vision-production" rel="noopener noreferrer"&gt;Kling AI's production examples&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The practical choice is how you want to guide a shot.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reference to Video: give each input a clear role
&lt;/h2&gt;

&lt;p&gt;Use this mode when existing images or video should inform the result.&lt;/p&gt;

&lt;p&gt;For example, the prefilled example on our model page uses a reference video to guide camera movement and pacing, with separate images for a car and its background. The useful idea is to separate the roles of the inputs before writing the prompt:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Subject:&lt;/strong&gt; what object or character should appear?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Setting:&lt;/strong&gt; where should the action happen?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Camera:&lt;/strong&gt; what movement and pacing should the clip follow?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Explain those roles in the prompt. A collection of references gives the model more material, but clear instructions are still needed to say how the pieces belong together.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keyframe to Video: decide the beginning and ending
&lt;/h2&gt;

&lt;p&gt;Use this mode when the composition at particular points matters most. It supports a first frame, intermediate frames, and a final frame.&lt;/p&gt;

&lt;p&gt;The maximum is 10 keyframes, but the limit also depends on clip duration. For example, a five-second clip supports up to six frames; the full 10-frame allowance starts at nine seconds. Check the duration-specific limit before preparing a large set of images.&lt;/p&gt;

&lt;p&gt;One useful application is a process with a clear beginning and result. The existing blacksmith example illustrates this approach.&lt;/p&gt;

&lt;h2&gt;
  
  
  A real input-to-output example: iron stock to a finished sword
&lt;/h2&gt;

&lt;p&gt;These two images and the video are paired together in ModelFold's existing Keyframe to Video example. They were not selected from unrelated assets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First frame: five pieces of iron on a workbench.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5yv81dq622qx45rjjz9p.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5yv81dq622qx45rjjz9p.png" alt="First input frame: five pieces of iron on a blacksmith's workbench" width="799" height="440"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Final frame: the finished sword on the workbench.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2g44qliifahkxnmnyp6w.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2g44qliifahkxnmnyp6w.png" alt="Final input frame: a finished sword lying diagonally across the workbench" width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Output: an approximately 15-second blacksmithing sequence.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://modelfold.ai/examples/kling-4-0/1792660379181_mC6TT8Bh.mp4" rel="noopener noreferrer"&gt;Watch the existing generated video&lt;/a&gt;, or open the &lt;a href="https://modelfold.ai/models/kling-4-0" rel="noopener noreferrer"&gt;Kling 4.0 model page&lt;/a&gt; to view the paired example.&lt;/p&gt;

&lt;p&gt;The example prompt divides the process into stages: collecting the material, heating, forging, grinding, assembly, and placing the finished sword. It asks for one blacksmith throughout, a consistent workbench setting, and compositions that match the opening and closing images.&lt;/p&gt;

&lt;p&gt;Those are prompt goals. When reviewing the result, compare the starting and ending compositions, then inspect the transitions and action continuity. Do not assume that every requested physical detail has been reproduced accurately.&lt;/p&gt;

&lt;p&gt;The linked preview is the original display file: approximately 15 seconds at &lt;strong&gt;850 × 480&lt;/strong&gt;, with an audio track. Its dimensions describe that preview asset, not the selectable resolution for a new generation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Your first clip: a simple workflow
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open the &lt;a href="https://modelfold.ai/models/kling-4-0" rel="noopener noreferrer"&gt;ModelFold Kling 4.0 page&lt;/a&gt; and sign in or register. You can use the web Playground directly; create an API key only if you need programmatic access.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Reference to Video&lt;/strong&gt; for a shot guided by existing visual references, or &lt;strong&gt;Keyframe to Video&lt;/strong&gt; when you want to specify the opening and ending images. Look at the paired input and output example first.&lt;/li&gt;
&lt;li&gt;Begin with &lt;strong&gt;720p and three or five seconds&lt;/strong&gt;. Keep the subject, action, and camera movement simple so the result is easier to assess.&lt;/li&gt;
&lt;li&gt;Replace the prefilled example materials. Remove any images, videos, and prompt references that do not belong in your own clip.&lt;/li&gt;
&lt;li&gt;Review the settings and displayed cost before running the task. Inspect the result before increasing duration or resolution.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A small starting prompt could be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A ceramic mug sits on a wooden table. The camera slowly moves closer. Soft daylight enters through a nearby window. Quiet indoor ambience.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a suggested prompt, not a tested output from this article. Change one part at a time so you can tell which adjustment helped.&lt;/p&gt;

&lt;h2&gt;
  
  
  When to use the API
&lt;/h2&gt;

&lt;p&gt;The Playground is a convenient place to inspect examples and explore basic settings. Some complex nested parameters for subjects and voices are not fully exposed in the current web form. If you need those controls, consult the API documentation for the selected mode.&lt;/p&gt;

&lt;p&gt;For a product clip, storyboard preview, or image-to-video experiment, start with one clearly defined shot. Decide what your references control, keep the first attempt short, and evaluate the output before building a longer sequence.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://modelfold.ai/models/kling-4-0" rel="noopener noreferrer"&gt;Explore Kling 4.0 on ModelFold&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>ai</category>
      <category>tutorial</category>
      <category>video</category>
    </item>
    <item>
      <title>Turn One Photo into a Vertical AI Video: A Practical Template Workflow</title>
      <dc:creator>ModelFild</dc:creator>
      <pubDate>Sun, 25 Oct 2026 17:59:21 +0000</pubDate>
      <link>https://dev.to/_f467169b51ec73738019e6/turn-one-photo-into-a-vertical-ai-video-a-practical-template-workflow-3900</link>
      <guid>https://dev.to/_f467169b51ec73738019e6/turn-one-photo-into-a-vertical-ai-video-a-practical-template-workflow-3900</guid>
      <description>&lt;p&gt;You have a good photo and an idea for a short video. What you probably do not have is a shot list, a folder of matching clips, or the patience to write a different prompt for every cut.&lt;/p&gt;

&lt;p&gt;A template can handle that planning. You choose the scene, supply the subject, review the cost, and let the workflow build the shots and join them into a vertical film.&lt;/p&gt;

&lt;p&gt;Disclosure: I build ModelFold, the product used in this walkthrough. This is a guide to its current workflow, not a comparison based on testing competing tools. The examples are existing template previews; I did not run a new paid generation for this article.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with the result you want
&lt;/h2&gt;

&lt;p&gt;Open the &lt;a href="https://ai.modelfold.online/tools/ai-short-video" rel="noopener noreferrer"&gt;AI Short Video tool&lt;/a&gt; and look through the template previews. A preview shows the intended scene and style. It is not a prediction of exactly how your photo will turn out.&lt;/p&gt;

&lt;p&gt;For a simple first project, try one of these:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://ai.modelfold.online/short-video/templates/pet-rainbow-bridge" rel="noopener noreferrer"&gt;Pet marigold bridge&lt;/a&gt;: a quiet, 10-second memorial with two shots, warm mist, petals, and candlelight. The name references the rainbow bridge idea, but the actual scene uses a marigold-covered bridge.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ai.modelfold.online/short-video/templates/ai-pet-chef" rel="noopener noreferrer"&gt;Pet chef&lt;/a&gt;: a playful kitchen scene built around a pet photo.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Choose a scene that suits the photo you already have. A pet template needs a clear pet reference; a portrait effect needs a face the model can actually see.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Prepare one clear reference image
&lt;/h2&gt;

&lt;p&gt;Use a JPG, PNG, or WebP file up to 3MB. Prefer one obvious subject, good lighting, and minimal obstruction. If you want the model to preserve a pet's markings, make sure those markings are visible.&lt;/p&gt;

&lt;p&gt;Leave a little space around the subject. A tight landscape crop can be awkward to reinterpret as a 9:16 frame. Only upload photos you have permission to use, especially when they show another person.&lt;/p&gt;

&lt;p&gt;The same uploaded image serves as the reference for the template's shots. You do not need a separate upload for each scene. That shared reference helps guide consistency, but AI can still change facial features, fur patterns, or proportions.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Read the shot list before generating
&lt;/h2&gt;

&lt;p&gt;Open a template and sign in. Upload the image, then read the shots and model settings on the page.&lt;/p&gt;

&lt;p&gt;For the memorial template, the first shot has the pet walking toward the camera across the bridge. The second has it pause and look back. Together they make a 10-second vertical video. The configured workflow creates the still frames with Seedream 5.0 Flash and animates them with Wan 2.6 Flash at 720p.&lt;/p&gt;

&lt;p&gt;Templates have fixed creative choices. This one does not add a spoken tribute or captions. If you want a name and dates, add them to the downloaded video in an editor.&lt;/p&gt;

&lt;p&gt;Read product templates especially carefully. A scene that asks for an unbranded object and no text is a poor choice if your packaging label must stay legible. A visually attractive preview does not establish that a template can preserve a logo.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Check the estimate and confirm
&lt;/h2&gt;

&lt;p&gt;Opening the page, watching a preview, and selecting a template do not spend generation credits. Generating your video does.&lt;/p&gt;

&lt;p&gt;Check the estimated credits on the page and again in the confirmation dialog. Prices depend on the configured image and video steps, so use the current estimate rather than a number copied from an old tutorial.&lt;/p&gt;

&lt;p&gt;The fixed template already includes its shot plan; you do not first pay to generate alternative plans. Each generation step is charged separately. Failed steps are refunded, while successful steps remain charged. Retrying a step is a new generation and can incur another charge.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Let the workflow assemble the film
&lt;/h2&gt;

&lt;p&gt;The progress panel lists the still images, video clips, and final joining step. You do not have to download each shot and stitch them together yourself.&lt;/p&gt;

&lt;p&gt;Once a result is ready, the player switches from the example to your film. Review the subject carefully before using it: does your pet still look like your pet? Are movement and proportions plausible? Does the scene communicate what you intended?&lt;/p&gt;

&lt;p&gt;If only part of a run succeeds, the finished portion may be available and the failed steps refunded. Check the status rather than assuming that a playable result means every shot succeeded.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Download, then finish it for your audience
&lt;/h2&gt;

&lt;p&gt;Download the MP4. Signed-in history on the tool page also lets you revisit the run, its steps, and its download.&lt;/p&gt;

&lt;p&gt;For a memorial, a simple title may be enough. For a social post, you may want captions or a short opening line. Add those deliberately in your editor rather than relying on generated text inside the image.&lt;/p&gt;

&lt;p&gt;ModelFold does not automatically post the file to another platform. Download it, review it, and upload it yourself. Follow the destination platform's rules for disclosing AI-generated content.&lt;/p&gt;

&lt;h2&gt;
  
  
  What if no template fits?
&lt;/h2&gt;

&lt;p&gt;The same tool has a free-form route. Describe the film, set the duration and shot count if needed, and request plans. For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A 15-second vertical video with three shots of a white travel mug: a full view, a close-up of the lid, then the mug on a commuter's desk. Natural light and restrained camera movement.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Review the proposed plans, models, and estimates before executing one. Planning uses a conversation model and has its own charge; generating the images and clips is a separate stage. It gives you more flexibility, with more decisions to make.&lt;/p&gt;

&lt;p&gt;For a first attempt, a fixed template keeps those decisions manageable: choose the scene, upload a suitable photo, read the estimate, generate, and inspect the download.&lt;/p&gt;

&lt;p&gt;You can browse the examples at &lt;a href="https://ai.modelfold.online/" rel="noopener noreferrer"&gt;ModelFold&lt;/a&gt; before deciding whether the workflow fits your project.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>tutorial</category>
      <category>animation</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
