Skip to content

Compatibility matrix ​

This page is the current MUSCLE Flex by Adhibita behavior contract.

  • PASS means the listed workflow passed on the named Flex build and client version.
  • FAIL means it was tested and did not meet the acceptance criteria.
  • EXCLUDED means Flex intentionally does not offer the behavior in the beta.
  • Pending means it has not yet been run against the deployed beta. The note describes how the current build is designed to behave.

A similar field name or endpoint is not evidence of support.

Verification in progress

Only the coding-agent rows that read PASS have been verified on the deployed Flex beta. Do not rely on a Pending row until it reads PASS.

Recorded against: Flex builds 7819bd3b and b823556b, as each row names. First run: 2026-09-26, coding agents only. Re-run 2026-10-02 on build cce8ffca, coding agents only. A PASS is evidence about the build it names, not about later builds. The Re-verified on build column reads Not yet until a row is run again on a later build and passes.

A row reads PASS only after the exact configuration on this site passed on the named Flex build and client version: authentication, a non-streamed reply with its request ID, a streamed reply, and one tool call with its result sent back.

Request surfaces ​

Chat Completions ​

SurfaceBehaviorStatusTested versionNotes
Chat CompletionsNon-stream textPending—POST /v1/chat/completions. The same handler also answers POST /chat/completions.
Chat CompletionsStream textPending—Server-sent events of data: lines, ending with data: [DONE].
Chat CompletionsFunction toolsPending—tools of type: "function". Tool choice auto, required, none and a named function.
Chat CompletionsTool-result continuationPending—Send the tool result back as a tool message with the matching tool_call_id.
Chat Completionsreasoning_effortPending—low, medium and high only. Other values return 400 invalid_request_error.
Chat Completionstop_p, userPending—Accepted and ignored.
Chat Completionsparallel_tool_callsPending—Accepted and treated as true.
Chat Completionsn above 1, seed, logprobsEXCLUDED—400 unsupported_field. seed and logprobs fail with any value, even false, so omit them. n: 1 is accepted.
Chat Completionsfrequency_penalty, presence_penaltyEXCLUDED—400 unsupported_field for any value, even 0. Omit the fields.

Responses ​

SurfaceBehaviorStatusTested versionNotes
ResponsesNon-stream textPending—POST /v1/responses only. There is no path without /v1.
ResponsesStream textPending—Responses stream events.
ResponsesFunction tools and continuationPending—Stateless: send the full input, including function_call_output items, every turn.
ResponsesStored responses and retrieval (store: true)EXCLUDED—400 unsupported_field. store: false is accepted.
ResponsesBackground responsesEXCLUDED—400 unsupported_field.
ResponsesChaining with previous_response_idEXCLUDED—400 unsupported_field. Resend the conversation instead.
ResponsesHosted tools: web search, file search, code interpreter, computer use, image generation, MCPEXCLUDED—400 unsupported_field. Only function tools are offered.
ResponsesStructured output through text.formatEXCLUDED—Not applied in the beta. The reply is free text and no error is returned. See Structured outputs.

Anthropic Messages ​

SurfaceBehaviorStatusTested versionNotes
Anthropic MessagesNon-stream textPending—POST /v1/messages and POST /messages. Auth by x-api-key or bearer token.
Anthropic MessagesStream textPending—Anthropic event names, from message_start to message_stop.
Anthropic Messagestool_use and tool_resultPending—Client tools with an input_schema.
Anthropic MessagesToken countingPending—POST /v1/messages/count_tokens and POST /messages/count_tokens.
Anthropic MessagesServer-side tools, such as hosted web searchEXCLUDED—Not offered in the beta, and not rejected: Flex treats the tool as an ordinary client tool, so it never runs on the server and the model may return a tool_use for it. Remove server tools from requests.
Anthropic MessagesStructured output through output_formatEXCLUDED—Not applied in the beta. The reply is free text and no error is returned. See Structured outputs.

Shared behavior ​

SurfaceBehaviorStatusTested versionNotes
SharedJSON mode and schema output (response_format)EXCLUDED—Chat Completions and Responses return 400 unsupported_field for any value, even {"type": "text"}. Omit the field. Schema-constrained output is not offered in the beta. See Structured outputs.
SharedStop sequences (stop, stop_sequences)Pending—Flex ends the reply before the first stop sequence on every route, streamed or not. Chat Completions reports finish_reason: "stop". Messages reports stop_reason: "stop_sequence" only when Flex finds the match; when the route stops first, it reports stop_reason: "end_turn" with stop_sequence: null. At most 16 stop sequences of up to 256 characters. Usage can include text generated after the stop. See Stop sequences.
SharedImage and audio inputEXCLUDED—Not supported yet. An image or audio part anywhere in the request, a tool result included, fails it before routing with 400 unsupported_content; Flex never drops it. Send text only. See Images and audio.
SharedCancellationPending—Not yet tested. The charging boundary for a cancelled stream will be recorded here.
SharedLong contextPending—GET /v1/models reports the advertised context_length for muscle/auto.
SharedModel listPending—GET /v1/models and GET /models list muscle/auto only; GET /v1/models/muscle/auto retrieves it. They need the API key.
SharedModel id (model)Pending—muscle/auto, or its short form auto, is routed. Model names that the supported agents and the official SDKs send on their own are routed the same way and echoed. Any other value returns 404 model_not_found before credits are held; a missing model returns 400 invalid_request_error.
SharedAccount checkPending—GET /v1/account returns a read-only account summary with available credits.
SharedRequest IDPending—Every response carries X-Request-Id.
SharedClient attribution headers (x-source, HTTP-Referer, X-Title)Pending—Flex does not read them and does not pass them on.

Coding agents ​

Each agent has a setup page. The status applies to the exact configuration on that page.

AgentRequest shapeSetupStatusTested agent versionTested Flex buildRe-verified on buildNotes
Claude CodeAnthropic MessagesSetupPASS2.1.2507819bd3bcce8ffcaBase URL without /v1. Model set with ANTHROPIC_MODEL. Re-verified with 2.1.284.
Codex CLIResponsesSetupPASS0.144.17819bd3bcce8ffcawire_api = "responses", hosted web search disabled. Re-verified with 0.159.2.
opencodeChat CompletionsSetupPASS1.18.317819bd3bcce8ffcaCustom provider with a /v1 base URL.
CursorChat CompletionsNot yet publishedPending———Chat panel only. Tab completion and inline edit do not use Flex.
ClineChat CompletionsNot yet publishedPending———OpenAI Compatible provider.
ContinueChat CompletionsNot yet publishedPending———Chat, edit and apply roles. Not for autocomplete.
CrushChat CompletionsSetupPASS0.96.1b823556bcce8ffcaopenai-compat provider entry.
GitHub CopilotChat CompletionsNot yet publishedPending———Needs streaming and tool calling. Inline completions do not use Flex.

The model frontier, through one adaptive API.