CLI da retschertga · ocl
Controllar citaziuns e conservar funtaunas directamain dal terminal
ocl è in pitschen client senza dependenzas per l’API da retschertga OpenCaseLaw. El serva a l’advocata al terminal sco a l’agent IA en in script: text legibel sin il visur, JSON en la pipe. Tut quai ch’el mussa vegn dal servetsch senza midada: identificaturs, citaziuns, text da las consideraziuns.
Installaziun
Python 3.10 u pli nov. Installai il client da PyPI sco utensil cun pipx u uv; omadus creeschan l’ambient isolà che las installaziuns actualas da Python pretendan. ocl doctor controlla la connexiun, il server ed il client.
pipx install opencaselaw-cli # or: uv tool install opencaselaw-cli ocl --help
Senza pipx u uv duvrai in ambient virtual: python3 -m venv .venv && .venv/bin/pip install opencaselaw-cli, lura .venv/bin/ocl. Actualisar cun pipx upgrade opencaselaw-cli (u uv tool upgrade opencaselaw-cli).
1. Controllar las citaziuns d’in sboz
Mettai las referenzas da voss sboz en ina datoteca, ina per lingia, u sco lingias JSON sch’ina referenza numna ina consideraziun. Mintga referenza returna sco resolved, missing u ambiguous cun la decisiun chattada; ina consideraziun vala sco resolved mo sch’ella exista en l’index.
cat > references.jsonl <<'JSONL'
{"reference":"BGE 136 III 513","pinpoint":"2.3"}
{"reference":"4A_747/2012"}
{"reference":"BGE 999 III 1"}
{"reference":"BGE 140 III 86","pinpoint":"2.3"}
JSONL
ocl citations resolve --input references.jsonl
Al terminal cumpara:
resolved BGE 136 III 513 bge_BGE_136_III_513 E. 2.3 retrieved resolved 4A_747/2012 bger_4A_747_2012 BGer 4A_747/2012 vom 5. April 2013 missing BGE 999 III 1 not in the corpus pinpoint_unavailable BGE 140 III 86 bge_BGE_140_III_86 E. 2.3 not in the index partial: 2 resolved, 1 missing, 1 pinpoint_unavailable. Existence and pinpoints only; no assessment of legal support.
Il code da sortida è 4 perquai che betg tut è vegnì schlià. Quai che la controlla na fa betg: ella na di mai ch’ina decisiun sustegna vossa tesa, ch’ella vala anc u ch’ella correspunda a voss fatgs. Questa lectura resta vossa lavur.
2. Conservar las funtaunas davos ina notizia
In cumond fa la tschertga e salva las decisiuns tschernidas, las consideraziuns ed ils artitgels da lescha che vus numnais en in ordinatur: texts cumplets sco furnids, in INDEX.md legibel ed in manifest.json cun mintga dumonda, marca da temp, link a la funtauna e hash da datoteca. Datotecas salvadas na vegnan mai surscrittas; --resume finescha ina execuziun interrutta.
ocl bundle create 'Rachekündigung Art. 336 OR' --max-results 10 --passage 2 \ --law OR:336 --out rachekuendigung-2026-09
L’ordinatur è legibel senza utensil:
rachekuendigung-2026-09/ INDEX.md what was saved, in plain language manifest.json every request, timestamp, hash, source link decisions/bge_BGE_136_III_513-5b3e22ef.txt full text as served (+ .json metadata) passages/bge_BGE_136_III_513_2-ff487655.txt E. 2, verbatim laws/OR_336-812a5382.json Art. 336 OR, consolidation date, Fedlex link search/page-0000-1850ce82.json the search page the selection came from
In pachet è complete sche mintga element dumandà è vegnì salvà, uschiglio partial cun mintga element betg reussì, per exempel ina decisiun chantunala senza consideraziuns numeradas. El conserva quai ch’il servetsch ha furnì quel di; il corpus vegn reconstruì mintga notg, la medema tschertga po tscherner autras decisiuns il proxim mais.
Tge ch’ils resultats signifitgan
resolved: la decisiun exista en il corpus. Cun ina consideraziun numnada exista quella e ses text stat en la lingia.pinpoint_unavailable: la decisiun exista; la consideraziun numerada n’è betg en l’index da structura. Per ina sutconsideraziun cun bustab (E. 2a, 3c/aa) vegn furnì il numer surordinà (parent_retrieved); tschertgai là il bustab.missing: nagina decisiun cun questa citaziun u quest numer da dossier. Ina citaziun sbagliada u ina largia en la cuvertura, mai ina cumprova ch’ina citaziun è inventada.ambiguous: dapli ch’ina decisiun porta questa etichetta (numers da dossier vegnan reduvrads da differentas dretgiras). Tscherni inadecision_id.unrecognized: la decisiun proponida dal servetsch na porta nagina etichetta scritta en la referenza; la proposta stat sutservice_candidate, mai endecision_id.resolution_incomplete,error: identitad betg constatada u dumonda naufragada. Nagut vegn engiavinà.total_is_lower_bound: truevul dir «almain tants». Ina tschertga da text vegn ordinada sur in dumber limità da candidats;has_more: falsena cumprova mai che mintga decisiun relevanta è vegnida vesida.- Codes da sortida: 0 cumplet, 2 endataziun nunvalaivla, 3 servetsch u rait naufragads, 4 parzial u betg schlià (er ina decisiun u ina consideraziun che il servetsch n’ha betg). Scripts sa basan sin quels senza analisar prosa.
discrepancy: la decisiun è identifitgada, ma la data u il numer da dossier scrit sper la citaziun DTF cuntradi al register;discrepanciesnumna mintga divergenza.
Receptas
Tschertgar, lura retschaiver las decisiuns cumplettas, en ina pipeline:
ocl decisions search 'Rachekündigung Art. 336 OR' --max-results 5 --format jsonl | ocl decisions get --stdin --format jsonl > decisions.jsonl
Tut quai ch’ina dretgira ha decidì en ina perioda. Senza text da tschertga enumereschan ils filters ina quantitad exacta, pagina per pagina:
ocl decisions search --court bge --date-from 2026-01-01 --date-to 2026-06-30 \ --sort date_desc --max-results 500 --format jsonl > bge-2026-h1.jsonl
Citar ina consideraziun litteralmain, cun la citaziun che tutga tar ella:
ocl decisions passage bge_BGE_136_III_513 2.3 ocl cite 'BGE 136 III 513' --pinpoint 2.3 --language fr
Ina lescha sco ch’ella valeva ad ina data:
ocl laws get OR --article 41 --as-of 2015-01-01
Tgi che citescha ina decisiun da princip:
ocl citations list bge_BGE_140_III_86 --direction incoming --limit 50
Agents da code sco Claude Code u Codex fan ils medems cumonds en ina shell e legian il JSON; las funtaunas restan en datotecas che vus pudais controllar, betg en la memoria dal model.
Per agents
In agent dovra quatter chaussas: ina installaziun senza dumondas, in output ch’el po analisar, verdicts sin ils quals el po sa basar, e reglas ch’el na po betg evitar. ocl furnescha tuttas quatter: JSON uschespert che l’output va en ina pipe; codes da sortida che portan il verdict (0 tut schlià, 2 endataziun nunvalaivla, 3 servetsch u rait, 4 insatge n’è betg schlià); --cache, per che repetiziuns entaifer ina generaziun da la banca da datas na custian nagut; e trais skills furnids (controlla da citats, retschertga, ordinatur da cumprovas). ocl tool call cuntanscha mintga utensil da retschertga dal servetsch.
ocl agent-guide # the contract on one page: JSON, exit codes, statuses, rules ocl skills install --claude # citation-check, research, evidence-bundle into ~/.claude/skills ocl tool list # every research tool of the service ocl tool call find_leading_cases query='Rachekündigung Art. 336 OR' limit=5 ocl quotes check --input quotes.jsonl --format jsonl ocl citations resolve --input refs.jsonl --format jsonl --cache ~/.cache/ocl
Las reglas n’èn betg negoziablas: ils texts da citaziun ed ils citats vegnan dal servetsch senza midada; in close_match u service_candidate è ina infurmaziun per l’autura, mai in remplazzament; l’utensil constatescha existenza e formulaziun, betg la purtada giuridica. opencaselaw_cli.api porscha il medem sco biblioteca.
Nua ch’el tutga
- Conversaziun: connectai Claude, ChatGPT u in auter client MCP cun
mcp.opencaselaw.ch(configuraziun per client). - Scripts, notebooks ed agents:
ocl, u directamain l’API REST. Ils medems records, las medemas limitas. - Analisas sin l’entir corpus: il set da datas Parquet.
Limitas
Ina tschertga da text vegn tramessa sco ina suletta dumonda ordinada cun maximalmain 800 resultats; tschertgas mo cun filters vegnan paginadas. Dumondas largas pon surpassar il temp maximal e vegnan annunziadas sco errur, betg sco resultat vid. Leschas chantunalas vegnan inditgadas sco --law ZH/StG:1. Las dumondas van al servetsch hostà ed èn suttamessas a la decleraziun da protecziun da datas; --base-url inditgescha in server manà separadamain.
La guida cumpletta cun las parts da referenza (tschertga e retschaiver, pachets, resoluziun da citaziuns, contract da l’API) stat sin GitHub: docs/research-cli.md.