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. Potřebujete dostupný spustitelný příkaz, Node.js 22 nebo 24 a API klíč k účtu s aktivní licencí CODEXIS AI Agent. Dotazy čerpají kredity vlastníka klíče.

Příklady používají Bash nebo Zsh. Dostupnost příkazu ověříte lokálně:

codexis-agent-cli --help

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=$(node -p "JSON.parse(require('node:fs').readFileSync('project.json', 'utf8')).id")
codexis-agent-cli chat create --project "$PROJECT_ID" --title "První kontrola" --json > chat.json
CHAT_ID=$(node -p "JSON.parse(require('node:fs').readFileSync('chat.json', 'utf8')).id")

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=$(node -p "require('node:crypto').randomUUID()")
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=$(node -p "JSON.parse(require('node:fs').readFileSync('receipt.json', 'utf8')).assistantMessageId")
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=$(node -p "JSON.parse(require('node:fs').readFileSync('created-agent.json', 'utf8')).id")

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=$(node -p "JSON.parse(require('node:fs').readFileSync('agent-chat.json', 'utf8')).id")
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, automatizace a dílčí agenti

Čeká-li agent na vstup, načtěte otázky nebo návrhy automatizací pro přesnou odpověď. U otázky převezměte z výpisu toolCallId a revision. U automatizace získáte z výpisu toolCallId a revizi až z detailu přes chat workflow get.

codexis-agent-cli chat question list "$CHAT_ID" --message "$MESSAGE_ID" --json
codexis-agent-cli chat workflow 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."

U automatizace nejprve načtěte detail. Po jeho posouzení zvolte approve, request-changes s --feedback nebo cancel; všechny rozhodovací příkazy vyžadují přečtenou revizi. 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 workflow get "$CHAT_ID" "$TOOL_CALL_ID" --message "$MESSAGE_ID" --json
codexis-agent-cli chat workflow approve --help
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, nástroje a šablony automatizací 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 workflow template 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.