Skip to content

Qoder2Api v1.1.0 - Enhanced Reliability and Transparency

Choose a tag to compare

@D3-vin D3-vin released this 19 Aug 14:08
· 1 commit to main since this release

QODER2API v1.1.0 - Enhanced Reliability and Transparency

Significant improvements to stream reliability, response accuracy, and observability.

πŸš€ What's New

  • Reliable stream termination β€” proper detection of stream end vs connection drop; no more masked aborts
  • Honest finish reasons β€” length no longer misreported as stop; Anthropic max_tokens correctly set
  • Real usage metrics β€” actual token counts (prompt/completion/reasoning/cached) and credits instead of zeros
  • Reasoning transparency β€” model's thinking now visible: reasoning_content in OpenAI format, thinking blocks in Anthropic format
  • Single-binary release β€” templates and .env.example embedded via go:embed, auto-extracted on first run; GitHub release works out of the box
  • 5-minute idle timeout β€” long generations no longer killed, only truly stalled connections

πŸ“₯ Downloads

Main API Server

Platform Download Size
Windows x64 qoder2api-windows-amd64.exe ~7.2 MB
Linux x64 qoder2api-linux-amd64 ~7.0 MB
macOS Intel qoder2api-macos-amd64 ~7.1 MB
macOS Apple Silicon qoder2api-macos-arm64 ~6.6 MB

πŸš€ Quick Start

# Download and run
./qoder2api-*

# Dashboard: http://localhost:8963
# API: http://localhost:8963/v1

πŸ”§ IDE Configuration

Base URL: http://localhost:8963/v1
API Key: any non-empty string (configured in .env)
Model: qwen3.8-max (or any real Qoder model name)

Model names are passed through to Qoder β€” clients configure real Qoder model names directly.

πŸ“ Changelog

Full Changelog: v1.0.0...v1.1.0

Key Changes

Stream Reliability:

  • Proper terminator detection ([DONE] envelope, event:finish, event:error)
  • EOF without terminator now returns error instead of success
  • Idle timeout increased to 5 minutes for long generations

Response Accuracy:

  • Real finish_reason from upstream (no more length β†’ stop conversion)
  • Anthropic: stop_reason: max_tokens when appropriate
  • Actual token usage: prompt/completion/reasoning/cached tokens + credits
  • Include usage in streaming responses (OpenAI convention)

Reasoning Visibility:

  • OpenAI: delta.reasoning_content in stream, message.reasoning_content in non-stream
  • Anthropic: thinking content blocks (extended thinking spec)

Distribution:

  • Templates embedded via go:embed, auto-extracted on first run
  • Single binary works out of the box from GitHub releases

πŸ“– Documentation

πŸ“± Contact