Zukko Blog

Guides to Claude Code, Cursor, Codex and the Claude and GPT APIs: setup, token savings and troubleshooting.

Extracting structured data from documents

4 min · · development

Manually parsing invoices, receipts, and forms doesn't scale. How to hand that work to a vision model and get valid JSON back.

Generating SEO content via API without the filler

4 min · · контент

Left to default settings, a model drifts toward generic phrases and lists that say nothing. How to shape the request to get facts, not padding.

Translating text through the API: a pipeline for large volumes

4 min · · автоматизация

Translating one paragraph is easy. Translating ten thousand lines without double charges and with a predictable price is a different task.

Auto-generating unit tests in Claude Code

4 min · · Claude Code

Claude Code can write tests on its own, but the result depends on the model and the prompt. How to connect it to zukko.pro and get real tests, not filler.

A minimal RAG pipeline on your own data

5 min · · development

RAG doesn't have to start with a vector database. Here's a minimal scheme: when a long context window is enough, and when you actually need retrieval.

Analyzing contracts with AI: where to start

4 min · · бизнес

A 40-page contract can go through the API in a minute, but it pays to know the cost upfront and pick the right model for a scan versus clean text.

Automating customer support with Claude and GPT

4 min · · бизнес

A support bot that goes down when one model has an outage, or drains the budget overnight, is a bad bot. Here's how to build it properly on the API.

Meeting and call summaries via API

4 min · · автоматизация

Getting a transcript is the easy part. Here's how to turn it into a structured meeting summary via API without breaking the budget on long calls.

Automated code review on Claude via API

4 min · · development

Setting up Claude in GitHub Actions to comment on pull requests, without double-charging on job retries or blowing the budget on one huge diff.

Which model writes the best Python code

4 min · · models

Instead of a ranking of "the best model for Python," a working method — run the same task through several models and compare honestly, on your own tests.

Function calling across Claude, GPT and GLM: what actually differs

4 min · · development

The tool-calling format depends on the endpoint you hit, not the model behind it. Comparing /v1/messages, /v1/chat/completions and /v1/responses.

A million-token context window: what it's actually for

4 min · · models

A million-token context sounds impressive but most tasks don't need it. When it actually solves a problem, and when it just inflates the bill.

The cheapest model for a specific task

4 min · · models

A model's price can't be guessed from its name. How to check it, measure real per-request cost, and not overspend while testing.

Nano Banana 2 vs GPT Image: which one to use for image generation

4 min · · изображения

Both lines share the same endpoint but work differently under the hood. How Nano Banana's reference-to-image differs from GPT Image's edit mode, and when each pays off.

Extended thinking: when to turn it on and what it costs

4 min · · models

The feature is available everywhere, but flipping it on for every request is a bad habit. Here's when extended thinking pays off and when it just inflates the bill.

Claude Opus 5.5 vs Opus 5 and 4.8: is switching worth it

4 min · · models

Opus 5 and 4.x are no longer in the catalog; Opus 5.5 with extended thinking and a 1M context has taken their place. Here's how to move and check results based on facts, not the version number.

Qwen 3.8 Max vs 3.7 Max: is it worth switching

4 min · · models

A newer version number always looks tempting. Here's what the preview suffix really means and how to check the difference on your own workload.

GPT-5.6 Terra, Sol, and Luna: how they differ and when to use which

4 min · · models

Similarly named models with no stated difference. Here's how to find out in a couple of requests which one fits your workload.

Error 499: the client closed the connection before the response arrived

4 min · · errors

The response starts, then vanishes halfway through — a familiar sight during long generations. Almost always a client-side timeout, not a token limit.

Your own Telegram bot on Claude or GPT: a minimal example

3 min · · development

Building a minimal Telegram bot with aiogram that calls Claude or GPT through the gateway. Full code, plus what to do about balance and rate-limit errors right in the chat.

LangChain: pointing base_url at the gateway instead of OpenAI

4 min · · development

In LangChain it comes down to one parameter — base_url. Exact code for ChatOpenAI and ChatAnthropic to reach Claude, GPT and GLM through the gateway.

n8n: automating workflows with Claude and GPT

5 min · · автоматизация

Set up one credential in n8n and call Claude, GPT and GLM from any workflow. Covers the built-in node and the HTTP Request node for edge cases.

aider: setup through environment variables

4 min · · IDE

aider is configured almost entirely through environment variables rather than config files. Here is which variable names it reads and where the base URL goes.

Windsurf: connecting to Claude and GPT

4 min · · IDE

Windsurf may let you add a custom provider and reach Claude, GPT and GLM with one key. Here are the settings fields, the limitations, and where people usually get stuck.