CODEXIS AI

Práce z příkazové řádky

Přihlaste CLI, vytvořte projekt a chat, pošlete přílohu a sledujte odpověď CODEXIS AI Agenta.

Příkazem codexis-agent-cli spravujete projekty, chaty a uložené agenty a posíláte dotazy s přílohami. Pro přístup k agentovi potřebujete API klíč k účtu s aktivní licencí CODEXIS AI Agent. Dotazy čerpají kredity vlastníka klíče.

Instalace a aktualizace

Na macOS a Linuxu s procesorem arm64 nebo x86_64 nainstalujete CLI následujícím příkazem. Stejným příkazem ho později aktualizujete. Balíček obsahuje vlastní Node.js a také lokální MCP server.

curl -fsSL https://codexis.ai/cli/install.sh | sh

Instalátor vyžaduje curl, tar a sha256sum nebo shasum. Na Linuxu potřebujete glibc 2.28 nebo novější. Před instalací ověří SHA-256 staženého balíčku.

CLI se uloží do ~/.local/share/codexis-agent-cli a příkaz se zpřístupní přes ~/.local/bin. Pokud tento adresář nemáte v PATH, přidejte jej do nastavení svého shellu. Pro aktuální terminál použijte:

export PATH="$HOME/.local/bin:$PATH"
codexis-agent-cli --help

Příklady níže používají Bash nebo Zsh. Pro čtení JSON odpovědí a vytvoření identifikátoru požadavku používají nástroje jq a uuidgen.

Přihlášení a profily

API klíč získáte podle návodu k API. Při přihlášení jej zadejte do skrytého vstupu. CLI klíč ověří a uloží spolu s adresou do chráněného místního profilu.

codexis-agent-cli auth login --profile work --endpoint https://vm.codexis.ai
codexis-agent-cli auth status
codexis-agent-cli auth profile list

Adresu zadejte jako origin https://vm.codexis.ai, cestu /api/v2 doplňuje CLI. Profil přepnete následujícím příkazem; přepínač --profile work vybere profil jen pro jedno spuštění.

codexis-agent-cli auth profile use work
codexis-agent-cli auth status --profile work

Ve skriptu můžete předat klíč a adresu proměnnými prostředí. V příkladu obsahuje CI_API_KEY klíč dodaný správcem tajných údajů. Tyto hodnoty mají při spuštění přednost před profilem a do profilu se neukládají.

CODEXIS_AGENT_API_KEY="$CI_API_KEY" \
CODEXIS_AGENT_ENDPOINT="https://vm.codexis.ai" \
codexis-agent-cli auth status --json --no-input

Pro výslovné uložení klíče ze standardního vstupu slouží přihlášení s --token-stdin. Uložený profil odstraníte příkazem níže.

codexis-agent-cli auth logout --profile old-profile

Projekt a první chat

Vytvořte projekt z JSON na standardním vstupu. Odpověď uložíte a z jejího skutečného id nastavíte proměnnou pro další příkazy.

codexis-agent-cli project create --input - --json > project.json <<'JSON'
{
  "name": "Kontrola smluv",
  "description": "Podklady pro právní kontrolu",
  "instructions": "Upozorni na rizika a uveď zdroje.",
  "desktopFolders": [],
  "driveFolders": []
}
JSON
PROJECT_ID=$(jq -er '.id' project.json)
codexis-agent-cli chat create --project "$PROJECT_ID" --title "První kontrola" --json > chat.json
CHAT_ID=$(jq -er '.id' chat.json)

Proměnné nastavujte až po úspěšném vytvoření. Chat je připravený k odeslání první zprávy. Při vytvoření můžete vybrat model pomocí --model; bez něj se použije vaše výchozí nastavení.

Existující projekt upravíte exportem jeho editovatelných polí. V souboru změňte hodnoty a teprve poté spusťte aktualizaci. Ta nahrazuje všech pět polí: name, description, instructions, desktopFolders a driveFolders.

codexis-agent-cli project get "$PROJECT_ID" --editable --json > project-edit.json
codexis-agent-cli project update "$PROJECT_ID" --input project-edit.json

Zpráva s přílohou a průběžná odpověď

Připravte místní soubor smlouva.pdf. UUID požadavku vytvořte před odesláním a ponechte si jej pro případ přerušení spojení.

REQUEST_ID=$(uuidgen)
codexis-agent-cli chat send "$CHAT_ID" \
  --message "Shrň smlouvu a upozorni na rizika." \
  --file ./smlouva.pdf \
  --idempotency-key "$REQUEST_ID" \
  --wait

--file přidává přílohu a můžete jej opakovat. Text zprávy lze načíst pomocí --message-file zadani.txt nebo ze standardního vstupu pomocí --message-file -. Pro již nahranou přílohu použijte --attachment-id s jejím skutečným ID.

S --wait přibývá text odpovědi na standardním výstupu. Potvrzení přijetí a stav běhu se vypisují na chybový výstup. Bez --wait příkaz vrátí potvrzení přijetí, které obsahuje requestId, chatId, userMessageId a assistantMessageId.

Obnova požadavku a sledování

Při nejistém výsledku odeslání nejprve vyhledejte původní požadavek. Použijte stejné CHAT_ID a REQUEST_ID, které jste uchovali před odesláním.

codexis-agent-cli chat request get "$CHAT_ID" "$REQUEST_ID" --json > receipt.json

Stav accepted potvrzuje přijetí a vrací assistantMessageId. rejected obsahuje důvod odmítnutí. Při unresolved znovu ověřte původní požadavek; nové UUID by označovalo jiný požadavek. Také po chybě spojení nejprve ověřte přijetí, než zprávu odešlete znovu.

Pokud je stav accepted, převezměte ID odpovědi a pokračujte ve sledování:

MESSAGE_ID=$(jq -er '.assistantMessageId' receipt.json)
codexis-agent-cli chat watch "$CHAT_ID" --message "$MESSAGE_ID" --deadline 600

Ctrl-C nebo vypršení --deadline ukončí sledování; vzdálený agent pokračuje. Výchozí lhůta sledování je 600 sekund. Pro zastavení běhu pošlete výslovný požadavek a následně ověřte stav, protože přijetí zastavení ještě neznamená dokončené zastavení.

codexis-agent-cli chat stop "$CHAT_ID" --message "$MESSAGE_ID"
codexis-agent-cli chat status "$CHAT_ID" --message "$MESSAGE_ID" --json

Výstup pro skripty

--json vrací jeden výsledný JSON objekt. U odeslání s --wait obsahuje receipt a závěrečný snapshot; u sledování samotný závěrečný snímek. --jsonl při sledování průběžně vypisuje objekty snapshot a nakonec result, případně error. Příkaz chat send --wait --jsonl před nimi vypíše také potvrzení accepted.

codexis-agent-cli chat watch "$CHAT_ID" --message "$MESSAGE_ID" --jsonl
codexis-agent-cli project list --limit 20 --json --read-only

Ve skriptu kontrolujte i návratový kód. Kód 5 a chyba INPUT_REQUIRED znamenají, že agent čeká na odpověď nebo rozhodnutí. --no-input vypíná interaktivní dotazy CLI. --read-only zakáže změny vzdálených dat, čtení a sledování ponechá dostupné.

Uložení a použití agenta

Nejprve vyberte agenta a do AGENT_ID uložte jeho přesné id z výpisu. Zachovejte celý identifikátor včetně případného prefixu. Pole editable a deletable říkají, které definice můžete změnit nebo smazat; výpis zahrnuje také agenty z doplňků.

codexis-agent-cli agent list --all --json

Export vytvoří úplný JSON pro editaci. Upravte jej v editoru a aktualizaci spusťte samostatně.

codexis-agent-cli agent get "$AGENT_ID" --editable --json > agent.json
codexis-agent-cli agent update "$AGENT_ID" --input agent.json

Změnou name na nový název a následným vytvořením uložíte vlastní kopii. Příkazy pro vytvoření i aktualizaci přijímají také --input - pro JSON ze standardního vstupu. Zachovejte všechna pole exportu; lokalizace se při aktualizaci slučují podle jazyka a prázdné seznamy ukázkových dotazů zachovávají dosavadní hodnoty.

codexis-agent-cli agent create --input agent.json --json > created-agent.json
AGENT_ID=$(jq -er '.id' created-agent.json)

Při vytvoření chatu --agent převezme nastavení modelu a jurisdikcí agenta. Jeho instrukce pro konkrétní zprávu vyberete přepínačem --agent-id při odesílání; ten můžete opakovat pro více agentů.

codexis-agent-cli chat create --agent "$AGENT_ID" --json > agent-chat.json
AGENT_CHAT_ID=$(jq -er '.id' agent-chat.json)
codexis-agent-cli chat send "$AGENT_CHAT_ID" --agent-id "$AGENT_ID" --message "Prověř zadání." --wait

Vlastní definici odstraníte následujícím příkazem. Před spuštěním ověřte zvolený identifikátor.

codexis-agent-cli agent delete "$AGENT_ID"

Otázky a dílčí agenti

Čeká-li agent na vstup, načtěte otázky pro přesnou odpověď. Z výpisu převezměte toolCallId a revision.

codexis-agent-cli chat question list "$CHAT_ID" --message "$MESSAGE_ID" --json

Do TOOL_CALL_ID a REVISION nastavte skutečné hodnoty vybrané otázky. Odpověď na otázku odešlete například textem:

codexis-agent-cli chat question answer "$CHAT_ID" "$TOOL_CALL_ID" \
  --message "$MESSAGE_ID" --revision "$REVISION" --text "Použij české právo."

Dílčí agenty můžete vypsat, načíst jejich detail příkazem get, zprávy příkazem messages nebo je sledovat příkazem watch.

codexis-agent-cli chat subagent list "$CHAT_ID" --message "$MESSAGE_ID" --json
codexis-agent-cli chat subagent watch --help

Katalogy a další příkazy

Modely, jurisdikce a nástroje najdete v katalozích. model get vrací detail modelu; model configure ověřuje volby a odhad nákladů. Jeho --field key=value lze opakovat nebo předat JSON přes --input.

codexis-agent-cli model list --json
codexis-agent-cli model configure --help
codexis-agent-cli jurisdiction list --json
codexis-agent-cli tool list --json
codexis-agent-cli auth features --json

Stránkované seznamy vracejí nextCursor. Při pokračování jej předejte pomocí --cursor se stejnými filtry. Další příkazy a jejich povinné argumenty zobrazíte přidáním --help, například u chat, project chats nebo attachment upload.

Kam pokračovat

Datové objekty a operace popisuje REST API v2. Pro připojení nástrojů do jiné AI aplikace pokračujte návodem k MCP.