Dukk API
interno · int / dev
Clientes espelhando a ergonomia do openai-python/openai-node —
"migrar = trocar o import". Python já tem download público (vendorizado, sem PyPI);
TypeScript ainda só existe como source. Ver status de cada SDK abaixo.
dukk
Cliente Dukk (sync) / AsyncDukk (async) —
chat.completions, models,
conversations e o runner tasks.run().
75 testes, validado contra um dukk-server real.
# funciona sem PyPI, sem conta, sem token — mesmo domínio desta página
# (api.dukk.com.br e int.dukk.com.br servem isso público; dev.dukk.com.br
# passa pelo basic-auth do host):
curl -O https://SEU-HOST/assets/downloads/sdk-python/dukk-0.1.0-py3-none-any.whl
pip install dukk-0.1.0-py3-none-any.whl
# zip com só o pacote-fonte dukk/ + instruções — pra quem prefere colar
# direto no projeto em vez de depender de pip install:
curl -O https://SEU-HOST/assets/downloads/sdk-python/dukk-0.1.0-vendor.zip
unzip dukk-0.1.0-vendor.zip -d meu_projeto/vendor/
Links diretos (relativos a este host): .whl · .tar.gz · .zip vendorizado
from dukk import Dukk
client = Dukk() # ou Dukk(api_key="dukk-..."); por padrão lê DUKK_API_KEY
resp = client.chat.completions.create(
messages=[{"role": "user", "content": "Crie um script Python que lê um CSV..."}],
dukk={"deliver": "auto", "conversation_id": "proj-x"},
)
print(resp.choices[0].message.content)
pip install dukk (PyPI). Os arquivos
ficam vendorizados aqui em /assets/downloads/sdk-python/ —
funciona em api.dukk.com.br e int.dukk.com.br
sem nenhuma autenticação (download público de verdade, cliente externo consegue);
em dev.dukk.com.br passa pelo basic-auth do host. PyPI
público continua decisão em aberto pra quando quiser pip install dukk direto.
@dukk/sdk
Espelha o openai-node — chat.completions,
models, conversations e
tasks.run() com 3 faces (AsyncIterable, EventEmitter-like,
Promise-like via .result()).
// ainda NÃO publicado — nem npm público, nem release interna.
// hoje só dá pra usar direto do source (workspace/monorepo local):
npm install @dukk/sdk --workspace
import Dukk from '@dukk/sdk';
const dukk = new Dukk({ apiKey: process.env.DUKK_API_KEY });
const resp = await dukk.chat.completions.create({
messages: [{ role: 'user', content: 'Crie um script Python que lê um CSV...' }],
dukk: { deliver: 'auto', conversationId: 'proj-x' },
});
console.log(resp.choices[0].message.content);