Check your server first
You picked an OpenAI-compatible server you already run. Start with the compatibility check on that server. It asks for the local URL and token, then tests the replies Conduck needs without exposing, reconfiguring, or pairing the server.
curl -fsSLO https://github.com/gigaduckai/conduck-connect/releases/latest/download/conduck-connect.sh && bash conduck-connect.sh --check-server
Downloads conduck-connect.sh from GitHub Releases, then sends live test requests
only to the server you enter. The requests may reach your model provider, appear in server
history, and use a small amount of quota.
View the script on GitHub
What PASS means
- The server's model list and chat replies have the wire shape Conduck consumes.
- A prior image in conversation history does not break a later text turn.
- PASS can also report that the server ignored the test image. Text and voice are unaffected, but replies about the photos you send would not reflect them and the app has no way to say so — so setup checks images once more against your HTTPS address, and asks whether you want a setup code anyway.
- This is a compatibility result, not certification against Conduck's stricter adapter contract.
PASS? Continue in the same run
In an interactive terminal, the script asks whether you want to continue with setup and pairing. Choose yes. It keeps the server details you just entered, so there is no second command and no need to type the URL or token again.
Setup asks how to expose the server over HTTPS, verifies the reachable address, and prints
a QR code plus a setup code. It asks before every configuration change. If you answer no,
you can start setup later with bash conduck-connect.sh --setup.
One step in setup is optional file transfer: a small password-protected file server over a folder you name, kept running across restarts, so your agent can open documents you send and hand files back. On a plain model server such as Ollama, vLLM or LiteLLM the agent has no file tools at all, so that step gains you nothing; skipping it leaves chat and pasted images working as normal.
FAIL? Read what it printed
The check changes no host configuration. Its summary lists every check that failed, so the server or adapter can be corrected before pairing. Common causes are a chat endpoint that is still switched off, a wrong or missing token, or a model list the app cannot read. Work through the failed checks, then run the command again.
A server that requires a model named in every request is not a failure on its own: the
check tries again with a name, and a server that answers then passes with a note. Left
alone it names whichever model your server lists first, so set
CONDUCK_CHECK_SERVER_MODEL to the model you plan to use and both the verdict
and the setup code follow that one.
After setup succeeds, pick up your phone
Once setup prints the code, scan it in Conduck — or paste the setup code (on a Mac, paste).
That code carries your server’s token, so treat it like a password: anyone who scans or photographs it reaches your server too, until you rotate the token.
The code is an open format - a gateway may mint it natively instead of running the script; the minting rules live with conduck-connect on GitHub.
Built this server specifically for Conduck? Use bash conduck-connect.sh --check-adapter
instead for the stricter adapter-contract check — the contract asks for its --deep
profile too, and both have to pass against the real engine.
Read the adapter contract —
or have your AI build the adapter for you.