Strix
Strix runs its agent in Docker and accepts any OpenAI-compatible endpoint. Set STRIX_LLM to openai/nodecode-cyber-v1 and LLM_API_BASE to the base URL above.
Model card
DeepSeek V4.1 Flash 1017 with its refusal direction removed and 1,048,576 tokens of context, running on our own machines in Europe. You need a key and a base URL. We built it for security work, where a model that refuses halfway through a run costs you the whole session. We don’t check who you are: pay by card or crypto and make a key.
Context
1Mtokens
1,048,576 tokens in one request.
Input
$0.33/1M tokens
$0.009 for a million the model had cached.
Output
$1.32/1M tokens
Up to 131,072 tokens in one answer.
Kept
0prompts
Zero retention by architecture. Prompts and answers pass through, and we keep neither.
Prices are the same number in euros and dollars, before tax, at any hour. Above 262,144 input tokens, cached input costs 4× the cached price.
From Friday to Sunday (Amsterdam time), tokens are 50% cheaper: 0.165in and 0.66 out.
Prices also drop while we have extra rented GPUs online. The pricing page always shows the current rate.
nodecode-cyber-v1pqhaz/DeepSeek-V4.1-Flash-1017-heretichttps://api.nodecode.ai/v11,048,576 tokens131,072 tokens$0.009$0.33$1.32Make a key in your account, export it, and run the call. We ran this exact call against the live endpoint while writing this page.
It’s a reasoning model, and max_tokens counts the thinking too. At 100 tokens a call usually stops mid-thought, with an empty answer and finish_reason set to length, so give it a few hundred.
The same key works on https://api.nodecode.ai/v1/responses and https://api.nodecode.ai/v1/messages, so Codex CLI, Claude Code and other OpenAI or Anthropic clients only need the base URL and the key changed.
curl https://api.nodecode.ai/v1/chat/completions \
-H "Authorization: Bearer $NODECODE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nodecode-cyber-v1",
"messages": [{"role": "user", "content": "nmap -sV 10.10.14.7 says 22/tcp open and 8080/tcp open http-proxy. What do I try next, in order?"}],
"max_tokens": 600
}'Three open-source pentest agents let you bring your own model. Each one connects to Cyber v1 through settings from its own docs.
Strix runs its agent in Docker and accepts any OpenAI-compatible endpoint. Set STRIX_LLM to openai/nodecode-cyber-v1 and LLM_API_BASE to the base URL above.
Add Cyber v1 as a custom LLM provider with the base URL, your key and the model name, and PentAGI's whole agent team runs on it.
PentestGPT drives Codex, and we tested Codex's provider settings against Cyber v1. Its interactive mode also takes an OpenAI base URL.
Tested against this endpoint on 2026-11-10 with Strix 1.7.0 and codex 0.162.1, the version PentestGPT drives. For PentAGI we used its documented settings but didn’t run its stack.
A model's refusals come from one direction in its weights, and that direction can be measured and removed. The method finds it using a set of harmful prompts, then subtracts it from every weight it passes through. What's left answers instead of refusing. The weights are a public Hugging Face checkpoint, so you can download the model you call here and check it yourself.
A pentest agent runs one tool after another and hands the model whatever it finds: a certificate, a hash, a page of someone else's PHP, a payload that has to be copied exactly. A model that reads that payload as an instruction to itself refuses, or worse, quietly rewrites it. An abliterated model treats it as data.
It won't make the model a better pentester. It's still DeepSeek V4.1 Flash 1017, and you still have to tell it where to look. We don't ask for KYC, and we don't ask what you point it at.
How the refusal direction was found and removed on Cyber v1, with its refusal counts and KL divergence: abliterated models.
Short answers on what abliteration is, which clients work, where requests run and what they cost.
No. There is no KYC and no application. Pay by card or crypto, make a key and set the base URL. What you point it at is your call.
A model's refusals come from one direction in its weights: a vector that, added to what the model computes, turns an answer into a no. Abliteration measures that direction on a set of harmful prompts and subtracts it, so the model answers instead. Cyber v1 is DeepSeek V4.1 Flash 1017 with that direction removed by pqhaz, who publishes the weights, plus our own finetunes.
A refusal in the middle of a tool loop can sink the whole session. The agent asks the model to read a certificate, gets a lecture about authorization, and the run stalls. Abliteration keeps the agent going when what's in front of it looks like an exploit, a hash to crack or someone else's source code. It won't help the model find the bug or get it right. It only stops it saying no.
OpenAI's Chat Completions and Responses, and Anthropic's Messages, all at https://api.nodecode.ai/v1. Any client that lets you set a base URL and a key will work, including the OpenAI and Anthropic SDKs, Codex CLI, Claude Code, LangChain and LiteLLM.
On machines we run for Nodecode in Europe, and nowhere else. Zero retention by architecture: nothing on the way is written to disk. We keep token counts per key, in fifteen-minute buckets over a five-hour window, and never a prompt or an answer.
A typical call from our own agent (89,000 cached input tokens, 2,500 new and 1,300 output) costs about $0.0033 on Cyber v1, so $5 of credit covers roughly 1,500 calls. You pay per token from your balance, and nothing renews.
Every request runs on machines we operate in Europe, and nowhere else.