ThinkThen

Backends

Liquid d1

d1 is Liquid's decision model. Its server speaks System One, so ThinkThen asks it with no change but the backend name.

Backend nameliquid
Addresshttps://api.liquid.ai/decisions/v1
Key variablesLIQUIDAI_API_KEY, then LIQUID_API_KEY
Default modeld1:free

Liquid launched d1 on 2026-09-29. Liquid's model list gives a release date of 2026-09-22. On 2026-09-30 that list held one model, d1:free, and Liquid published no price for it. Its replies count input tokens only, and output tokens are always zero.

Get a key

  1. Sign in at console.liquid.ai.
  2. Open Dashboard, then API Keys, and create a key. It starts with liquid_.
  3. Put it in LIQUIDAI_API_KEY. ThinkThen also reads LIQUID_API_KEY when the first is unset.

These steps were checked on 2026-09-29.

status names the address, the model, and the variable the key comes from. It sends nothing.
thinkthen status --backend liquid |
grep -E '^(backend|url|model|key_variable) '
Output
backend liquid
url https://api.liquid.ai/decisions/v1/systemone
model d1:free
key_variable LIQUIDAI_API_KEY
exit 0

Check it

A first check can outlast the default timeout. Pass --timeout 90 on a first run. On 2026-09-30, a first check timed out at 30 seconds and passed with --timeout 90. The check page says how long a check can take.

The check would post to Liquid's address with d1:free. The plan sends nothing.
thinkthen check \
  --backend liquid \
  --timeout 90 \
  --plan |
head -n 4
Output
url https://api.liquid.ai/decisions/v1/systemone
provider systemone
model asked unspecified
model sent d1:free
exit 0

On 2026-09-30, thinkthen check on build 74b82a8e1 asked d1:free and exited 0, with 0 critical and 0 warning findings.The record holds the run.

A first answer

The send-back line is ambiguous. A customer who sends an item back may want an exchange or money back.

d1 answers no and exits 1. Jev answers yes to the same line.
question="Does the customer ask for a refund?"

printf '%s\n' "I want to send this back." |
thinkthen decide "$question" --backend liquid
Output
false
exit 1: no
One request carries all three lines. d1 says yes to the broken order and no to the send-back line.
question="Does the customer ask for a refund?"

cat <<'EOF' |
Please refund my order. It arrived broken.
Thanks for the quick help yesterday!
I want to send this back.
EOF
thinkthen decide "$question" \
  --lines \
  --backend liquid
Output
{"input":"Please refund my order. It arrived broken.","value":true}
{"input":"Thanks for the quick help yesterday!","value":false}
{"input":"I want to send this back.","value":false}
exit 0: the run finished

Without the backend name

The address and a key work without the name too. Set THINKTHEN_BASE_URL=https://api.liquid.ai/decisions/v1, put the key in THINKTHEN_API_KEY, and pass --model d1:free.

From your language

Each page shows how its language names a backend.