Ruthless.

Build with Flint.

Flint. Code, reason, act.

Use Flint for coding and tool-assisted work, in the Ruthless chat you already use or through your existing API key.

One model menu. One balance.

Choose Flint in the chat model menu. Ask it to explain code, investigate a bug, write tests or work through a change. When your task needs code execution, web research or security tools, Ruthless can use its built-in tools in the same conversation.

Flint handles text, coding, reasoning and tool calls. Its current context window is 262,144 tokens. Images and videos use the other models in Ruthless.

Flint is connected. Availability and response time can vary.

Flint launch pricing

USD per 1 million tokens. Input includes the conversation context; output includes the answer and billable reasoning. Website chat and API requests use the same rates and prepaid balance.

EffortInputOutput
Medium$0.20$0.80
High$0.20$0.80
XHigh$0.20$0.80

Launch prices are set by Ruthless using estimated future model costs plus our markup. Code, security and web tools are billed separately at the published tool rates.

Flint always reasons. Medium, High and XHigh control its response allowance, shared between reasoning and the answer. Higher effort can use more tokens even when the token rate is the same. Availability and response times depend on the current model connection.

Flint API: change the model, keep your key.

Use flint as the model with the https://getruthless.io/v1 base URL. Your Ruthless key works for Flint and the other models in your account. Streaming and function tools follow the Chat Completions API.

Flint · Python quickstart
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["RUTHLESS_API_KEY"],
    base_url="https://getruthless.io/v1",
    max_retries=0,
)
stream = client.chat.completions.create(
    model="flint",
    reasoning_effort="medium",
    messages=[{"role": "user", "content": "Review this function and suggest a focused test."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices:
        print(chunk.choices[0].delta.content or "", end="", flush=True)

For tool conversations, preserve the full assistant message and the matching tool results between requests. A connected app can run its own tools, or use Ruthless’s built-in tools through the documented API. Tool access depends on what that app supports.