ķàþî üþ
Çàţçĥ éṽéŕý ļàñĝüàĝé üþ ţö ţĥé þŕöĵéçţ'š šĥîþ ĝàţéš. Öñ à çöññéçţéđ þŕöĵéçţ ţĥé ŵöŕķ ŕüñš öñ ţĥé Ƃöŵŕàîñ šéŕṽéŕ, ŵîţĥ ţĥé öŕĝàñîžàţîöñ'š ķéýš àñđ ţĥé šĥàŕéđ çöñţéñţ ḿéḿöŕý àñđ ţéŕḿš, àñđ ŵĥàţ ñééđš à þéŕšöñ ĝöéš ţö ţĥé ţéàḿ'š ŕéṽîéŵ šéššîöñ. Ţĥé Ŕüñ ñöŵ ƃüţţöñ îñ ţĥé þŕöĵéçţ'š Ŕüñš ṽîéŵ šţàŕţš ţĥé šàḿé ŕüñ ƒŕöḿ ţĥé ƃŕöŵšéŕ öŕ ţĥé đéšķţöþ àþþ.
kapi up ŕüñš ţĥé ķàþî ļööþ. Îţ ţŕéàţš ţĥé ŕéçîþé àš ţĥé đéšîŕéđ
šţàţé àñđ ŕüñš ţĥé þŕöĵéçţ'š đéƒàüļţ ƒļöŵ öṽéŕ àļļ çöñţéñţ îñ éṽéŕý ţàŕĝéţ
ļàñĝüàĝé, ļööþîñĝ üñţîļ éṽéŕý ĝàţéđ ļöçàļé îš šĥîþþàƃļé öŕ ŵàîţš ƒöŕ ŕéṽîéŵ.
Öñ à šéŕṽéŕ-çöññéçţéđ þŕöĵéçţ (ţĥé ŕéçîþé đéçļàŕéš à bowrain: ƃļöçķ),
kapi up ŕüñš ţĥé ļööþ öñ ţĥé Ƃöŵŕàîñ šéŕṽéŕ ƃý đéƒàüļţ:
- Îţ þüšĥéš ŵĥàţ đŕîƒţéđ.
- Ţĥé šéŕṽéŕ ŕüñš ţĥé ļööþ, àñđ þŕöĝŕéšš šţŕéàḿš ƃàçķ ļîṽé.
- Ţĥé ŕéšüļţš þüļļ đöŵñ, àñđ ţŕàñšļàţîöñš ŵàîţîñĝ ƒöŕ ŕéṽîéŵ éñţéŕ ţĥé ţéàḿ'š ŕéṽîéŵ šéššîöñ.
kapi up --local ŕüñš ţĥé ļööþ öñ ţĥîš ḿàçĥîñé àñđ þüšĥéš ţĥé ŕéšüļţš îñšţéàđ.
Ţĥé þüšĥ þĥàšé ŕéþöŕţš ţĥé ṽéŕđîçţš ţĥé šéŕṽéŕ đîđ ñöţ àççéþţ, þéŕ ļàñĝüàĝé, îñ
ţĥé ļîñéš kapi push þŕîñţš. Ŵîţĥ --json ţĥéý àŕŕîṽé àš
öñé governance ŕéçöŕđ îñ ţĥé šţŕéàḿ.
kapi push àñđ kapi pull öñļý ḿöṽé þŕöĵéçţ šţàţé àñđ ñéṽéŕ ţŕàñšļàţé. Ţĥéŕé
îš ñö kapi sync: à çöññéçţéđ kapi up þüšĥéš, çàţçĥéš üþ, ţĥéñ þüļļš.
Üšàĝé
kapi up [flags]
Éẋàḿþļéš
# Catch the project up on the server (connected project), streaming progress
kapi up
# Dry run: pending work, memory reuse, and a token estimate per locale; no writes
kapi up --plan
# Catch up on this machine (your AI keys), then push the results
kapi up --local
# NDJSON event stream for CI and agents (one record per line, including a result record)
kapi up --json
# A single pass over every locale that needs work
kapi up --passes 1
Öþţîöñš
| Ƒļàĝ | Đéšçŕîþţîöñ | Đéƒàüļţ |
|---|---|---|
--plan | Đŕý ŕüñ: ŕéþöŕţ þéñđîñĝ ŵöŕķ, ḿéḿöŕý ŕéüšé, àñđ à ţöķéñ éšţîḿàţé; ñö ŵŕîţéš | false |
--local | Çàţçĥ üþ öñ ţĥîš ḿàçĥîñé, ţĥéñ þüšĥ ţĥé ŕéšüļţš (öṽéŕŕîđé ţĥé šéŕṽéŕ ṽéñüé) | false |
--server | Ŕéǫüîŕé ţĥé šéŕṽéŕ ṽéñüé: ƒàîļ ŕàţĥéŕ ţĥàñ ƒàļļ ƃàçķ ţö à ļöçàļ ŕüñ | false |
--timeout | Šéŕṽéŕ ṽéñüé: ḿàẋîḿüḿ ţîḿé ţö ŵàîţ ƒöŕ ţĥé šéŕṽéŕ ŕüñ ƃéƒöŕé þüļļîñĝ àṽàîļàƃļé ŕéšüļţš | 15m |
--passes | Ḿàẋîḿüḿ ŕéçöñçîļîàţîöñ þàššéš (0 = ļööþ üñţîļ üþ ţö đàţé öŕ ŵàîţîñĝ ƒöŕ ŕéṽîéŵ, çàþþéđ àţ 5; 1 = šîñĝļé þàšš) | 0 |
--jobs | Ĥöŵ ḿàñý ļàñĝüàĝéš ţö çàţçĥ üþ çöñçüŕŕéñţļý þéŕ þàšš | 4 |
--materialize | Àƒţéŕ ţĥé ļööþ, ŵŕîţé ţàŕĝéţ ƒîļéš ƒöŕ éṽéŕý šĥîþþàƃļé ļöçàļé | false |
--no-extract | Šķîþ ţĥé þŕé-þàšš šöüŕçé-đŕîƒţ çĥéçķ àñđ ƃļöçķ-šţöŕé ŕé-éẋţŕàçţîöñ | false |
--no-checks | Šķîþ ţĥé ƃöüñđ çĥéçķš îñ ţĥé ļööþ | false |
--json | Šţŕéàḿ ţĥé çöñṽéŕĝéñçé éṽéñţš àš ÑĐĴŠÖÑ, ŵîţĥ öñé result ŕéçöŕđ | false |
--fail-on-incomplete-watch | Šéŕṽéŕ ṽéñüé: ƒàîļ ŵĥéñ ţĥé éṽéñţ šţŕéàḿ éñđš ƃéƒöŕé ţĥé ŕüñ đöéš, îñšţéàđ öƒ ŕéþöŕţîñĝ îţ àñđ þüļļîñĝ ŵĥàţ ļàñđéđ | false |
Ŵîţĥ --json, ŕéàđ ţĥé öüţçöḿé ƒŕöḿ ţĥé ŕéçöŕđ ŵĥöšé type îš result. Öñ ţĥé
šéŕṽéŕ ṽéñüé, àñđ îñ à þŕöĵéçţ ŵîţĥ ñö šéŕṽéŕ, îţ îš ţĥé ļàšţ ŕéçöŕđ. Àƒţéŕ
kapi up --local öñ à çöññéçţéđ þŕöĵéçţ, ţĥé þüšĥ ţĥàţ ƒöļļöŵš ţĥé ļöçàļ ŕüñ
ŵŕîţéš îţš ŕéçöŕđš àƒţéŕ îţ: à changeset ŕéçöŕđ ŵĥéñ îţ þŕöþöšéđ ţéŕḿîñöļöĝý
éđîţš, à voice_profile ŕéçöŕđ ŵĥéñ ţĥé ŕéçîþé ƃîñđš à ṽöîçé þŕöƒîļé, àñđ à
governance ŕéçöŕđ ŵĥéñ ţĥé šéŕṽéŕ đîđ ñöţ àççéþţ à ṽéŕđîçţ.
Öñ ţĥé šéŕṽéŕ ṽéñüé ţĥé šţŕéàḿ öþéñš ŵîţĥ à run_started ŕéçöŕđ çàŕŕýîñĝ ţĥé
ŕüñ'š id, àñđ ţĥé result ŕéçöŕđ çàŕŕîéš run (id, state, passes, àš
kapi status --json ŕéþöŕţš ţĥéḿ) ƃéšîđé watch, ŵĥîçĥ
šàýš ŵĥéţĥéŕ ţĥîš çļîéñţ šàŵ ţĥé ŵĥöļé ŕüñ àñđ ŵĥàţ éñđéđ îţ (done, timeout
öŕ stream_error). À çöñšüḿéŕ ţĥàţ ļöšéš ţĥé šţŕéàḿ šţîļļ ĥöļđš ţĥé ŕüñ'š îđ,
àñđ kapi status ŕéþöŕţš ŵĥéŕé ţĥàţ ŕüñ ĝöţ ţö.
Ţĥé ļööþ
Éàçĥ þàšš ŕé-đéŕîṽéš çöṽéŕàĝé ƒŕöḿ ţĥé ŵöŕķîñĝ ţŕéé, ŕüñš ţĥé ƒļöŵ öñļý ƒöŕ ţĥé
ļöçàļéš šţîļļ šĥöŕţ öƒ ţĥéîŕ ĝàţé, ţĥéñ ŕüñš ţĥé þŕöĵéçţ'š ƃöüñđ çĥéçķš öṽéŕ ŵĥàţ
ŵàš þŕöđüçéđ. Ţĥé ļööþ šţöþš ŵĥéñ éṽéŕý ĝàţéđ ļöçàļé îš šĥîþþàƃļé, à þàšš ḿàķéš ñö
þŕöĝŕéšš, öŕ ţĥé þàšš çàþ îš ŕéàçĥéđ. Àñýţĥîñĝ à ƒļöŵ çàññöţ àđṽàñçé ŵîţĥöüţ à
þéŕšöñ ŵàîţš ƒöŕ ŕéṽîéŵ: kapi up ŕéþöŕţš îţ àš àŵàîţîñĝ à þéŕšöñ àñđ éẋîţš
0. Ţàŕĝéţ ļàñĝüàĝéš ţĥàţ àŕé ƃéĥîñđ ñéṽéŕ ƒàîļ ţĥé ƃüîļđ.
Ļöçàļéš àŕé çàüĝĥţ üþ çöñçüŕŕéñţļý ŵîţĥîñ à þàšš (--jobs, đéƒàüļţ 4). Ƃéƒöŕé
éàçĥ þàšš, up ŕé-šýñçš ţĥé ƃļöçķ šţöŕé ŵîţĥ ţĥé ŵöŕķîñĝ ţŕéé (--no-extract
öþţš öüţ).
Ţŵö ṽéñüéš, öñé éṽéñţ šţŕéàḿ
Öñ à çöññéçţéđ þŕöĵéçţ ţĥé ŕüñ éẋéçüţéš öñ ţĥé šéŕṽéŕ àñđ šţŕéàḿš ţĥé šàḿé éṽéñţš ţĥé ÇĻÎ ŕéñđéŕš ļöçàļļý, šö ţĥé ţéŕḿîñàļ ṽîéŵ ļööķš ţĥé šàḿé öñ éîţĥéŕ ṽéñüé.
Éẋîţ Çöđéš
Ţĥé éẋîţ çöđé ŕéþöŕţš ŵĥéţĥéŕ ţĥé ŵöŕķ ĥàþþéñéđ. À šéŕṽéŕ ŕüñ çöñţîñüéš îƒ ţĥé
çöññéçţîöñ ŵàţçĥîñĝ îţ đŕöþš. Ŵĥéñ ţĥé šţŕéàḿ éñđš éàŕļý, up šàýš šö, þüļļš
ŵĥàţ ļàñđéđ, àñđ ŕéþöŕţš ţĥé ŕüñ'š šţàţé àš ţĥé šéŕṽéŕ ĥöļđš îţ.
0: çàüĝĥţ üþ, ŵöŕķ ŵàîţîñĝ ƒöŕ ŕéṽîéŵ ŕéþöŕţéđ (ţàŕĝéţ đŕîƒţ îš ñéṽéŕ à ƒàîļüŕé), öŕ ţĥé ŕüñ ŵéñţ öñ àƒţéŕ ţĥé éṽéñţ šţŕéàḿ éñđéđ éàŕļý1: ţĥé ŵöŕķ đîđ ñöţ ĥàþþéñ öŕ îţš öüţçöḿé îš üñķñöŵñ: à ƒàîļéđ öŕ çàñçéļéđ ŕüñ, à þüšĥ öŕ þüļļ ţĥàţ ƒàîļéđ, à ŕüñ ţĥàţ ñéṽéŕ šţàŕţéđ, à ţŕüñçàţéđ--jsonđöçüḿéñţ, öŕ àñ îñţéŕŕüþţéđ çöḿḿàñđ--fail-on-incomplete-watchḿöṽéš à ŵàţçĥ ţĥàţ éñđéđ éàŕļý îñţö1, ƒöŕ à þîþéļîñé ţĥàţ ŵöüļđ ŕàţĥéŕ šţöþ ţĥàñ þŕöçééđ öñ à þàŕţîàļ ṽîéŵ
Ŕéļàţéđ Çöḿḿàñđš
kapi push: ţŕàñšþöŕţ: šéñđ šöüŕçé çĥàñĝéš ţö ţĥé šéŕṽéŕkapi pull: ţŕàñšþöŕţ: ƒéţçĥ ŕéšüļţš ƒŕöḿ ţĥé šéŕṽéŕkapi status: šţàñđîñĝ: çöṽéŕàĝé, ĝàţéš, àñđ ŵĥàţ'š þéñđîñĝ
Ŵĥéñ ţö Üšé
Üšé kapi up éṽéŕý đàý ţö ƃŕîñĝ éṽéŕý ļöçàļé üþ ţö đàţé àĝàîñšţ ţĥé þŕöĵéçţ'š
ĝàţéš, ļöçàļļý öŕ öñ ţĥé šéŕṽéŕ:
- ÇÎ/ÇĐ þîþéļîñéš:
kapi up --jsonƒŕöḿ à ŵöŕķƒļöŵ ţö çàţçĥ üþ öñ þüšĥ àñđ ƒàîļ öñļý öñ àñ éẋþļîçîţkapi check --shipĝàţé; šéé Ţĥé ļööþ îñ ÇÎ ƒöŕ ţĥé ŕéàđý-ḿàđé šüŕƒàçéš. - Đéṽéļöþéŕ ŵöŕķƒļöŵš: üþđàţé šöüŕçé çöñţéñţ, ţĥéñ
kapi upţö ĝéţ ŕéšüļţš ƃàçķ àñđ šéé ŵĥàţ šţîļļ ñééđš à ĥüḿàñ.
Ƒöŕ à çüšţöḿ öñé-öƒƒ þîþéļîñé (öñé ñàḿéđ ƒļöŵ, öñé þàšš, ñö ĝàţé ļööþ), üšé
kapi run <flow> îñšţéàđ.