Sekcje bazy wiedzy ▾

Nawigacja

▸ Zacznij tutaj Według ról

Kategorie

Narzędzia 52
Słownik 12

Narzędzia

MiniMax Code: agent MiniMax z własnym kluczem przez Gonka

MiniMax Code (komenda mcode) — terminalowy agent kodujący laboratorium MiniMax: analizuje projekt, edytuje pliki, uruchamia komendy i testy, a Ty zarządzasz nim z TUI, ze skryptów lub edytora. Kod źródłowy wersji terminalowej jest otwarty, własny kod dostawcy jest na licencji MIT. Produkt jest młody i szybko się zmienia, dlatego wszystko poniżej jest powiązane z wersją 0.5.1, na której przeszliśmy drogę od instalacji do odpowiedzi agenta.

Standardowo mcode działa przez konto dostawcy i subskrypcję Token Plan. Ale zawiera on również BYOK: własny endpoint i własny klucz, przy czym logowanie do konta nie jest do tego potrzebne — jest to wprost napisane w README. Obsługiwane są trzy formaty API: openai-completions, openai-responses oraz anthropic-messages; JoinGonka Gateway obsługuje wszystkie trzy.

Scenariusz jest symetryczny. Sieć Gonka obsługuje otwarty model MiniMax M2.7, a wraz z nim DeepSeek V4 Flash oraz GLM-5.3 Flash — wszystkie w tej samej cenie. Agent dostawcy działa na modelu tego samego dostawcy, tylko rozlicza go sieć zdecentralizowana, a Ty płacisz za faktyczne tokeny; przełączenie na sąsiedni model można wykonać jedną komendą wewnątrz sesji.

Czym jest MiniMax Code i jak go zainstalować

Agent ma trzy punkty wejścia i wszystkie trzy działają z providerem BYOK w ten sam sposób:

Punkt wejściaPolecenieDo czego
Interaktywny TUImcode [prompt]Przeglądanie kodu, prowadzenie rozmowy, podgląd zmian i uprawnień
Headlessmcode exec [prompt]Skrypty, CI, zadania wsadowe
ACPmcode acpEdytory i klienci obsługujący Agent Client Protocol

Oficjalny instalator umieszcza najnowszą wersję w ~/.minimax-code, w razie potrzeby dociąga odpowiedni Node.js i nie wymaga uprawnień administratora:

# macOS / Linux / WSL
curl -fsSL https://filecdn.minimax.chat/public/install.sh | bash

# Windows (PowerShell)
irm https://filecdn.minimax.chat/public/install.ps1 | iex

Jeśli Node.js już jest (22.19 i nowszy w serii 22, 24.2 i nowszy w serii 24, a także 25 i 26), wystarczy npm:

npm install -g @minimax-ai/code@latest --registry=https://registry.npmjs.org/ --ignore-scripts=false --include=optional --allow-scripts=@minimax-ai/code,better-sqlite3

To długie polecenie nie jest przypadkowe: agent potrzebuje natywnej kompilacji SQLite, więc opcjonalne zależności i skrypty instalacyjne muszą pozostać włączone. Po instalacji otwórz terminal ponownie i sprawdź: mcode --version.

W TUI przydadzą się Shift+Tab (tryb planowania), Alt+M (przełączanie trybów uprawnień — Ask, Auto i Full access), @ do odwołania się do pliku oraz /help z listą poleceń. Przerwaną pracę wznawia mcode --continue, a mcode init . tworzy w projekcie plik AGENTS.md z regułami dla agenta.

Dane użytkownika — config.yaml, sesje, stan logowania — leżą osobno od programu, w katalogu ~/.minimax (przy nazwanym profilu — ~/.minimax-<profile>); zmienna MINIMAX_DATA_DIR wyznacza inne miejsce.

Klucz JoinGonka. Zarejestruj się na gate.joingonka.ai/register: po potwierdzeniu adresu na konto trafi 3M darmowych tokenów. Klucz z prefiksem jg- tworzy się w panelu, w sekcji „Klucze API”; warto założyć dla agenta osobny — jego ruch będzie widoczny jako oddzielna pozycja.

Szybka ścieżka: instalator jednym poleceniem

Zamknij mcode, jeśli jest uruchomiony, i wykonaj:

npx @joingonka/setup --tool minimax-code --model minimax

Instalator zapyta o klucz, zapisze kopię poprzedniego config.yaml, dopisze do niego tylko swój blok i zakończy żywym zapytaniem do bramy: klucz, adres i model są sprawdzane od razu, a nie przy pierwszym zadaniu. W ~/.minimax/config.yaml pojawi się dostawca joingonka w gałęzi custom_provider — właśnie tam mcode trzyma zewnętrzne endpointy:

custom_provider:\n  joingonka:\n    name: JoinGonka\n    kind: custom\n    enabled: true\n    api: openai-completions\n    options:\n      apiKey: jg-your-key\n      baseURL: https://gate.joingonka.ai/v1\n      authMode: api-key\n    models:\n      MiniMaxAI/MiniMax-M2.7:\n        name: MiniMax M2.7 (Gonka)\n        limit:\n          context: 200000\n          output: 8192\n      deepseek-ai/DeepSeek-V4-Flash-0731:\n        name: DeepSeek V4 Flash (Gonka)\n        reasoning: true\n        limit:\n          context: 380000\n          output: 32768\n      zai-org/GLM-5.3-Flash:\n        name: GLM 5.3 Flash (Gonka)\n        reasoning: true\n        limit:\n          context: 390000\n          output: 8192\ndefaultModel: custom_provider:joingonka/MiniMaxAI/MiniMax-M2.7

Co warto wiedzieć o tym bloku:

  • Format API jest zapisany jawnie. Bez pola api mcode uznaje dostawcę za zgodnego z Anthropic; instalator wybiera openai-completions — kanoniczną ścieżkę bramy.
  • Limity ma każdy model własne. Nieznanemu modelowi mcode przypisuje okno 200 000 i odpowiedź 16 384 tokenów; rzeczywiste wartości w sieci są inne, dlatego limit jest ustawiony przy wszystkich trzech wpisach.
  • Klucz leży w pliku dosłownie, a sam plik dostaje uprawnienia 600. Tak samo przechowuje klucze mcode: jego flaga --api-key-env czyta zmienną i zapisuje do konfiguracji wartość, a nie referencję.
  • Model domyślny. Flaga --model minimax ustawia MiniMax M2.7. Bez flagi instalator wybiera dla agentów kodu DeepSeek V4 Flash — ma większe okno i pułap odpowiedzi — a --model glm daje GLM-5.3 Flash. Jeśli w konfiguracji wybrano już model innego dostawcy, ponowne uruchomienie bez --model go nie ruszy.
  • Profile. Dla nazwanego profilu uruchom instalator ze zmienną środowiskową, na przykład MINIMAX_DATA_DIR=~/.minimax-work.

Prośba o zamknięcie mcode na czas instalacji nie jest formalnością: agent przepisuje config.yaml w całości przy własnych zapisach i może zatrzeć zmianę zrobioną za jego plecami.

Ręczna konfiguracja: mcode provider add i config.yaml

Ten sam efekt daje standardowa komenda agenta. Klucz przekazuje się przez zmienną środowiskową — w argumentach i historii powłoki nie ma czego szukać:

# read the key without echo
read -s JOINGONKA_API_KEY
export JOINGONKA_API_KEY

mcode provider add --name JoinGonka \\\
  --base-url https://gate.joingonka.ai/v1 \\\
  --api-format openai-completions \\\
  --model MiniMaxAI/MiniMax-M2.7 \\\
  --api-key-env JOINGONKA_API_KEY \\\
  --context-limit 200000 --output-limit 8192 --use

Flaga --use najpierw sprawdza pierwszy z wymienionych modeli żywym zapytaniem i dopiero potem zapisuje dostawcę i czyni model modelem domyślnym; przy niepowodzeniu nie zapisuje się nic. Udany przebieg kończy się linią Provider added and selected: JoinGonka. Z nazwy mcode sam wyprowadza klucz dostawcy — joingonka — więc instalator uruchomiony później zaktualizuje ten sam wpis, a nie założy drugiego.

Flagi --context-limit i --output-limit działają na wszystkie modele wymienione w komendzie, a limity modeli w sieci są różne. Dlatego komendą wygodnie założyć jeden model, a pozostałe dopisać do pliku. Zamknij mcode i połącz ten fragment z istniejącym blokiem dostawcy w ~/.minimax/config.yaml:

custom_provider:\n  joingonka:\n    models:\n      MiniMaxAI/MiniMax-M2.7:\n        limit: { context: 200000, output: 8192 }\n      deepseek-ai/DeepSeek-V4-Flash-0731:\n        limit: { context: 380000, output: 32768 }\n      zai-org/GLM-5.3-Flash:\n        limit: { context: 390000, output: 8192 }

Trzeci sposób — interaktywny: wewnątrz TUI komenda /model otwiera wybór modelu z pozycją + Add 3rd-party provider…, a /provider zarządza zapisanymi połączeniami. Adres na ekranie modelu poprawia się przez Ctrl+E; nieudana weryfikacja nic nie zapisuje, szkic zostaje do edycji.

Który format API wybrać. Brama przyjmuje wszystkie trzy, różni się tylko adres bazowy:

--api-format--base-urlKiedy wybierać
openai-completionshttps://gate.joingonka.ai/v1Wariant podstawowy: kanoniczna ścieżka bramy, ją też zapisuje instalator. Na niej przepędziliśmy pełny cykl agentowy
openai-responseshttps://gate.joingonka.ai/v1Jeśli resztę twojego środowiska zbudowano wokół Responses API
anthropic-messageshttps://gate.joingonka.aiFormat Anthropic Messages: ścieżkę /v1/messages agent dopisuje sam. Tę samą wartość mcode bierze, gdy --api-format nie jest podany

W naszym przebiegu test połączenia przeszły wszystkie trzy formaty.

Weryfikacja i typowe błędy

Trzy komendy pokazują, że integracja działa. Pierwsza wyświetla listę providerów — aktywny jest oznaczony gwiazdką, klucz zamaskowany:

mcode provider list
* custom_provider:joingonka   active   jg-a****9f3c

Druga wykonuje realne zapytanie i w razie sukcesu odpowiada Provider available: custom_provider:joingonka; flaga --model sprawdza konkretny model:

mcode provider test custom_provider:joingonka

Trzecia sprawdza to, co najważniejsze — pracę z plikami. Umieść w katalogu niewielki plik z oczywistym błędem i poproś, żeby go znalazł:

mcode exec "Read calc.py and tell me in one sentence whether it has a bug."

Agent powinien samodzielnie wywołać narzędzie do czytania i odpowiedzieć merytorycznie. W naszym teście tak zadziałały wszystkie trzy modele w sieci; inny model na jedno uruchomienie ustawia się flagą w postaci --model custom_provider:joingonka/<model-id>. Z flagą --output-format json w odpowiedzi pojawia się pole usage z liczbą tokenów wejściowych i wyjściowych — warto je porównać z panelem bramy: w sekcji „Wykorzystanie” widać zapytania według godzin i dni, rozbicie na modele i na klucze.

Jeśli weryfikacja się nie powiedzie, mcode podaje przyczynę wprost w komunikacie:

Co widaćCo to znaczyCo zrobić
Authentication failed (HTTP 401)Brama nie przyjęła kluczaSprawdź, czy zmienna z --api-key-env jest wyeksportowana w tej samej powłoce i zawiera cały klucz
HTTP 405 przy weryfikacjiW adresie dla formatu OpenAI zgubił się sufiksAdres musi kończyć się na /v1: agent sam dopisuje /chat/completions
HTTP 400: Model "…" not found. Available: …Identyfikator wpisano bez prefiksu dostawcySkopiuj id z listy, którą brama podaje w tym samym komunikacie
Request timed out after 10000msTest połączenia czeka dziesięć sekund, a sieć pod obciążeniem odpowiedziała późniejPowtórz komendę. Albo zapisz providera bez --use i sprawdź go osobno przez mcode provider test
429 … currently overloaded … (rate limit)Modelowi skończyła się właśnie wolna pojemność w sieciPowtórz po minucie lub przełącz się na sąsiedni model komendą /model; stan widać na stronie statusu
Modeli providera nie ma w /modelProvider jest wyłączony albo zmianę nadpisał uruchomiony mcodeZamknij agenta i powtórz instalację: przywraca enabled: true i katalog modeli
Duże okno jest wykorzystywane w połowie albo odpowiedź urywa się wcześniej niż oczekiwanoModel dodano bez limitów: agent uznaje okno za równe 200 000, a odpowiedź — 16 384 tokenomUstaw limit, tak jak w przykładach powyżej

Jaki model wybrać

Cena wszystkich modeli sieci jest taka sama, więc wybór dotyczy zachowania. Poniżej — limity i to, jak modele zachowywały się w naszym przebiegu mcode exec na tym samym zadaniu (stan na 21 września 2026):

ModelIdentyfikatorKontekst / odpowiedźJak zachowuje się w mcode
MiniMax M2.7MiniMaxAI/MiniMax-M2.7200K / 8192Model tego samego dostawcy co sam agent. W naszym przebiegu odpowiedział szybciej od pozostałych. Rozumowanie przychodzi osobnym polem reasoning_content, w treści odpowiedzi — tylko sama odpowiedź
DeepSeek V4 Flashdeepseek-ai/DeepSeek-V4-Flash-0731380K / 32768Czysta odpowiedź na temat. Duże okno i najwyższy pułap odpowiedzi w sieci — dlatego właśnie jego instalator ustawia domyślnie
GLM-5.3 Flashzai-org/GLM-5.3-Flash390K / 8192Model reasoning: myśli przed odpowiedzią, sama odpowiedź jest czysta. Rozumowanie wlicza się do limitu odpowiedzi, więc nie zaniżaj output

Praktyczna zasada jest prosta. Do krótkich zadań i szybkich poprawek bierz MiniMax M2.7: teraz przypada na nią najwięcej przepustowości sieci. Jeśli widoczne rozumowanie przeszkadza — na przykład skrypt parsuje wynik exec — albo trzeba przeczytać duże repozytorium i uzyskać długą poprawkę, przełącz się na DeepSeek V4 Flash. Nad zawiłą logiką lepiej myśli GLM-5.3 Flash.

Przełączanie nie wymaga edycji pliku: w TUI to komenda /model, dla jednej sesji — mcode -m custom_provider:joingonka/<model-id>, dla jednego przebiegu — mcode exec --model z tą samą wartością. Stały wybór przechowywany jest w wierszu defaultModel. Skład sieci z czasem się zmienia; aktualną listę z limitami zawsze zwraca GET https://gate.joingonka.ai/v1/models.

Ile to kosztuje i co wziąć pod uwagę

Narzędzia agentowe zużywają tokeny inaczej niż czat: do każdej Twojej frazy mcode dodaje systemowy prompt i opisy wszystkich narzędzi, a następnie prowadzi wieloetapowy dialog z modelem. W naszym teście zadanie „przeczytaj plik i znajdź błąd” kosztowało około 40 tysięcy tokenów, z czego prawie wszystko to dane wejściowe. Dlatego cena za token ma tutaj kluczowe znaczenie.

Przez JoinGonka Gateway tokeny kosztują $0.0069 za milion na wejściu i $0.021 za milion na wyjściu — cena jest identyczna dla wszystkich modeli w sieci i jest pobierana na tej stronie ze źródła na żywo. Rzędy wielkości cen na wrzesień 2026 r.: jednorazowe zadanie — setne części centa, dzień aktywnej pracy na 3-7 milionach tokenów — kilka centów.

MetodaSposób płatnościWymagania
Konto dostawcy i Token PlanSubskrypcja z kredytamiLogowanie przez mcode login i dostępne kredyty
JoinGonka Gateway (BYOK)Za faktyczne zużycie z saldaKlucz jg-…; brak konieczności logowania do konta dostawcy, zużycie widoczne w panelu

Co obejmuje BYOK. Własny dostawca obsługuje zapytania do modelu: czytanie i poprawianie kodu, polecenia, subagenty, sesje. Wbudowane wyszukiwanie, narzędzia multimedialne mcode-tools i zarządzane konektory to usługi samego dostawcy — wymagają one logowania do konta i kredytów. Własne narzędzia podłącza się niezależnie, przez serwery MCP w pliku .mcp.json projektu.

Uprawnienia. W TUI tryby Ask, Auto i Full access przełącza się za pomocą Alt+M lub polecenia /permission; w przypadku mcode exec odpowiada za to flaga --permission.

Telemetria. Kanały statystyk, metryk i diagnostyki w mcode są domyślnie wyłączone i można je włączać osobno; zmienne MCODE_DISABLE_TELEMETRY i DO_NOT_TRACK wyłączają je wszystkie naraz. Brama (Gateway) nie przechowuje treści promptów ani odpowiedzi — w statystykach pozostają tylko agregaty zużycia.

Jeśli potrzebujesz pracy z obrazami — zrzut ekranu interfejsu, makieta — skonfiguruj obok drugiego dostawcę z modelem wspierającym widzenie (vision), dodając flagę --support-image: modele w sieci Gonka są tekstowe, a dostawców w mcode może być wielu.

Agenty od samych laboratoriów są dostępne dla wszystkich trzech rodzin modeli w sieci: obok MiniMax Code znajdują się DeepSeek Harness i ZCode od Z.ai, twórców GLM. Wszystkie trzy podłączają się do tej samej bramy za pomocą tego samego klucza.

MiniMax Code — to agent terminalowy laboratorium MiniMax z otwartym kodem źródłowym i natywnym BYOK: własny endpoint podłączasz bez logowania do konta dostawcy. Szybka ścieżka — npx @joingonka/setup --tool minimax-code --model minimax: instalator zapisze dostawcę joingonka w ~/.minimax/config.yaml z formatem openai-completions, adresem https://gate.joingonka.ai/v1 oraz rzeczywistymi limitami MiniMax M2.7, DeepSeek V4 Flash i GLM-5.3 Flash, a następnie sprawdzi połączenie zapytaniem na żywo. Ręcznie to samo robi mcode provider add … --use. Weryfikacja — mcode provider test custom_provider:joingonka, przełączanie modelu — /model. Płacisz za faktyczne tokeny zgodnie z cenami sieci Gonka, bez subskrypcji i limitów.

Chcesz wiedzieć więcej?

Zapoznaj się z innymi sekcjami lub zacznij zarabiać GNK już teraz.

Pobierz klucz i darmowe tokeny →