@arbidocs/client 0.5.110 → 0.5.111

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1001,6 +1001,55 @@ interface paths {
1001
1001
  patch?: never;
1002
1002
  trace?: never;
1003
1003
  };
1004
+ '/v1/user/dashboards': {
1005
+ parameters: {
1006
+ query?: never;
1007
+ header?: never;
1008
+ path?: never;
1009
+ cookie?: never;
1010
+ };
1011
+ /**
1012
+ * List Dashboards
1013
+ * @description The caller's saved dashboards, oldest first, each sealed to the caller (only their browser opens it). RLS
1014
+ * returns the caller's own rows only.
1015
+ */
1016
+ get: operations['list_dashboards'];
1017
+ put?: never;
1018
+ /**
1019
+ * Create Dashboard
1020
+ * @description Save a new dashboard, sealed in the browser to the caller's own encryption key. The server cannot read it.
1021
+ */
1022
+ post: operations['create_dashboard'];
1023
+ delete?: never;
1024
+ options?: never;
1025
+ head?: never;
1026
+ patch?: never;
1027
+ trace?: never;
1028
+ };
1029
+ '/v1/user/dashboards/{dashboard_ext_id}': {
1030
+ parameters: {
1031
+ query?: never;
1032
+ header?: never;
1033
+ path?: never;
1034
+ cookie?: never;
1035
+ };
1036
+ get?: never;
1037
+ /**
1038
+ * Update Dashboard
1039
+ * @description Replace a saved dashboard's encrypted spec. 404 when it is not one of the caller's (RLS hides the rest).
1040
+ */
1041
+ put: operations['update_dashboard'];
1042
+ post?: never;
1043
+ /**
1044
+ * Delete Dashboard
1045
+ * @description Delete a saved dashboard (the row itself). 404 when it is not one of the caller's, or is gone (RLS).
1046
+ */
1047
+ delete: operations['delete_dashboard'];
1048
+ options?: never;
1049
+ head?: never;
1050
+ patch?: never;
1051
+ trace?: never;
1052
+ };
1004
1053
  '/v1/user/settings': {
1005
1054
  parameters: {
1006
1055
  query?: never;
@@ -9870,7 +9919,7 @@ interface components {
9870
9919
  * @default {
9871
9920
  * "API_TYPE": "remote",
9872
9921
  * "ENABLE_THINKING": false,
9873
- * "MODEL_NAME": "Fast",
9922
+ * "MODEL_NAME": "dummy",
9874
9923
  * "SYSTEM_INSTRUCTION": "You are ARBI, an AI assistant created by ARBI CITY. Be proactive, helpful and professional.Be concise. Use markdown where it helps readability. Cross-check information across sources before answering. Never fabricate facts. Not all assertions in the sources are factual — some are arguments by a party. Attribute claims to their source, especially where parties disagree.",
9875
9924
  * "MAX_TOKEN_SIZE_TO_ANSWER": 200000,
9876
9925
  * "TEMPERATURE": 0.1,
@@ -9882,7 +9931,7 @@ interface components {
9882
9931
  * @default {
9883
9932
  * "API_TYPE": "remote",
9884
9933
  * "ENABLE_THINKING": false,
9885
- * "MODEL_NAME": "Wise",
9934
+ * "MODEL_NAME": "dummy",
9886
9935
  * "SYSTEM_INSTRUCTION": "You are reviewing a draft answer prepared by a research agent. The draft was written based on summaries, but you now have access to the full source material.\n\nYour task:\n1. Review the draft answer against the source material provided\n2. Verify claims are supported by the sources\n3. Correct any inaccuracies or unsupported statements\n4. Add any important details from the sources that were missed\n5. Maintain formal, objective tone appropriate for professional contexts\n\nIf information is not found in the sources but the draft answer is based on web search results or general knowledge, preserve it and ensure it is clearly labelled as such. Only flag missing source support for claims that purport to come from the documents.\nDo not add inline citation markers - the system handles citations automatically.",
9887
9936
  * "TEMPERATURE": 0.1,
9888
9937
  * "MAX_TOKENS": 0,
@@ -9894,7 +9943,7 @@ interface components {
9894
9943
  * @default {
9895
9944
  * "API_TYPE": "remote",
9896
9945
  * "ENABLE_THINKING": false,
9897
- * "MODEL_NAME": "Fast",
9946
+ * "MODEL_NAME": "dummy",
9898
9947
  * "SYSTEM_INSTRUCTION": "You are a chunk evaluator. Analyze retrieved chunks to determine which are relevant to the user's query and extract key learnings from the RELEVANT chunks only. You must return your response as valid JSON matching the provided schema.",
9899
9948
  * "TEMPERATURE": 0.1,
9900
9949
  * "MAX_TOKENS": 0,
@@ -9909,7 +9958,7 @@ interface components {
9909
9958
  * @default {
9910
9959
  * "API_TYPE": "remote",
9911
9960
  * "ENABLE_THINKING": false,
9912
- * "MODEL_NAME": "Fast",
9961
+ * "MODEL_NAME": "dummy",
9913
9962
  * "SYSTEM_INSTRUCTION": "You are a title generator that creates concise, descriptive titles.\n\nOutput the title as plain text only. Do not use Markdown or any other formatting. Specifically:\n- Do not bold, italicize, or otherwise emphasize any part of the title.\n- Do not include asterisks (*), underscores (_), backticks (`), or other Markdown markers.\n- Do not prefix the title with bullets, dashes (-), or numbered/lettered enumeration (e.g. \"1.\", \"a)\").\n- Do not wrap the title in quotes or brackets.",
9914
9963
  * "MAX_TOKEN_SIZE_TO_ANSWER": 20,
9915
9964
  * "TEMPERATURE": 0.3,
@@ -9921,7 +9970,7 @@ interface components {
9921
9970
  * @default {
9922
9971
  * "API_TYPE": "remote",
9923
9972
  * "ENABLE_THINKING": false,
9924
- * "MODEL_NAME": "Wise",
9973
+ * "MODEL_NAME": "dummy",
9925
9974
  * "SYSTEM_INSTRUCTION": "You are a conversation summariser. Condense the conversation history into a concise summary that preserves:\n- Key decisions and conclusions reached\n- Specific names, dates, numbers, and document references\n- Open questions and unresolved items\n- The user's goals and constraints\n\nWrite in past tense, third person. Be specific, not vague. Do not omit important details in favour of brevity.",
9926
9975
  * "TEMPERATURE": 0.1,
9927
9976
  * "MAX_TOKENS": 0,
@@ -9935,7 +9984,7 @@ interface components {
9935
9984
  * @default {
9936
9985
  * "API_TYPE": "remote",
9937
9986
  * "ENABLE_THINKING": false,
9938
- * "MODEL_NAME": "Fast",
9987
+ * "MODEL_NAME": "dummy",
9939
9988
  * "SYSTEM_INSTRUCTION": "You are a document analysis assistant. Answer questions based on the document content.\n\nYour answers are displayed directly as cell values in a table, so keep every answer as short as possible.\n\nGuidelines:\n- Answer with the value only — never a full sentence. Do not restate the question or add lead-ins such as \"This document is...\" or \"The document describes...\". Good: \"German\". Bad: \"This document is written in German.\"\n- When an answer has multiple values, put each value on its own line: separate values with a newline character. Do not separate them with commas, bullets, dashes, numbering, or by writing them as a sentence.\n- Answer from the document. Reasonable inferences are fine; if the document gives no basis for an answer, the value is null and sources is empty.\n- Follow the format instructions exactly for each answer.\n- Output answers as plain text only. Do not use Markdown or any other formatting: no bold, italics, asterisks (*), underscores (_), backticks (`), bullets, or numbered/lettered enumeration.\n- Passages may be preceded by markers like [p3.2]: not document content. Cite them in \"sources\", never in a value.",
9940
9989
  * "MAX_TOKEN_CONTEXT_TO_ANSWER": 200000,
9941
9990
  * "METADATA_CONTEXT_TOKENS": 12000,
@@ -9997,7 +10046,7 @@ interface components {
9997
10046
  * @default {
9998
10047
  * "API_TYPE": "remote",
9999
10048
  * "ENABLE_THINKING": false,
10000
- * "MODEL_NAME": "Fast",
10049
+ * "MODEL_NAME": "dummy",
10001
10050
  * "SYSTEM_INSTRUCTION": "You are a professional translator of legal, commercial and technical documents.\n\nYou translate the numbered passages you are given into the target language, faithfully and completely:\n- Translate every passage in full. Never summarise, shorten, merge, split, reorder, explain or comment.\n- Keep the Markdown structure of each passage exactly: headings (#), lists, emphasis, tables (same rows and columns), links and line breaks.\n- Keep unchanged: numbers, dates as written, amounts, currencies, clause and section numbering, cross-references, citations, case names, statute names, email addresses, URLs and code.\n- Keep proper names of people, companies and places as they are written, unless the glossary gives a translation.\n- Use the glossary's translation for every glossary term, every time it occurs.\n- A defined term (a capitalised or quoted term given a meaning in the document) is translated the same way everywhere.\n- A passage already in the target language, or with nothing to translate (a number, a signature line, a blank form field), is returned as it is.\n- The context passages before and after are there only so the translation reads on from its neighbours. Never translate or return them.",
10002
10051
  * "TEMPERATURE": 0.2,
10003
10052
  * "MAX_TOKENS": 0,
@@ -10012,7 +10061,7 @@ interface components {
10012
10061
  * @default {
10013
10062
  * "API_TYPE": "remote",
10014
10063
  * "ENABLE_THINKING": false,
10015
- * "MODEL_NAME": "Wise",
10064
+ * "MODEL_NAME": "dummy",
10016
10065
  * "TEMPERATURE": 0.3,
10017
10066
  * "MAX_TOKENS": 0,
10018
10067
  * "MAX_TOKEN_CONTEXT": 200000,
@@ -10024,7 +10073,7 @@ interface components {
10024
10073
  * @default {
10025
10074
  * "API_TYPE": "remote",
10026
10075
  * "ENABLE_THINKING": true,
10027
- * "MODEL_NAME": "Wise",
10076
+ * "MODEL_NAME": "dummy",
10028
10077
  * "SYSTEM_INSTRUCTION": "You are a research planning assistant. Your job is to analyze a user query and produce a concise, numbered research plan.\n\nYou have access to a workspace of documents.[[if search_inside_documents, read_document, get_table_of_contents: The available tools for executing the plan are:\n- search_inside_documents: Search workspace documents for relevant passages (semantic, keyword, or hybrid). Use digest=true to extract learnings.\n- read_document: Read page ranges or entire documents. Use digest=true to extract learnings with citations.\n- get_table_of_contents: Get document headings with page references]]\n\nConsider:\n- What information is needed to answer the query\n- Which documents are likely relevant based on the document index\n- What search queries and document passages to examine\n- What order of operations will be most efficient\n- Whether parallel searches can be used for different aspects\n\nRespond with ONLY the plan (numbered steps). Do not execute any steps.",
10029
10078
  * "TEMPERATURE": 0.3,
10030
10079
  * "MAX_TOKENS": 0,
@@ -10037,7 +10086,7 @@ interface components {
10037
10086
  * @default {
10038
10087
  * "API_TYPE": "remote",
10039
10088
  * "ENABLE_THINKING": false,
10040
- * "MODEL_NAME": "Fast",
10089
+ * "MODEL_NAME": "dummy",
10041
10090
  * "SYSTEM_INSTRUCTION": "You are a context selector. Given a user's query, conversation history, and a table of available documents, determine the user's goal and select relevant context.\n\n## Instructions\n\n1. **goal**: 1-2 concise sentences describing the user's intent AND your filtering rationale. Explain what documents are needed and why. Examples:\n - \"The user is greeting the assistant. No documents are needed.\"\n - \"The user wants to find force majeure clauses. Only the three contracts are relevant, so I will keep only those.\"\n - \"The user wants a full timeline of the case. Most documents are relevant, so I will drop only the unrelated procedural orders.\"\n - The agent that reads the goal does not see the history indices: refer to an earlier message by what it is (\"the investigation report in the previous answer\"), never by its [N] index.\n\n2. **doc_filter_mode** and **doc_ids**: Select which documents the agent needs.\n - `\"keep\"` mode: `doc_ids` lists the ONLY docs to keep. Everything else is dropped.\n - `\"drop\"` mode: `doc_ids` lists the ONLY docs to drop. Everything else is kept.\n - Pick whichever mode produces the **shorter `doc_ids` list**.\n - Doc IDs are in the **Id** column of the Available Documents table (e.g. `\"doc-abc12345\"`). Copy them **exactly** from the table — do not invent, guess, or modify IDs.\n\n | Scenario | doc_filter_mode | doc_ids |\n |----------|----------------|---------|\n | Need ALL docs | `\"drop\"` | `[]` |\n | Need NO docs | `\"keep\"` | `[]` |\n | Need 3 of 100 docs | `\"keep\"` | `[\"id1\",\"id2\",\"id3\"]` |\n | Drop 3 of 100 docs | `\"drop\"` | `[\"id1\",\"id2\",\"id3\"]` |\n\n3. **chat_range_start** and **chat_range_end**: 0-based inclusive range of earlier history messages that provide relevant context. The last 3 messages are always included automatically. Set both to -1 if no earlier history is needed.\n\n## Rules\n\n- **Never repeat a doc ID.** Each ID must appear at most once.\n- Before writing `doc_ids`, count how many you would keep vs drop, then pick the shorter list.\n- Greetings or meta-questions about the assistant (e.g. \"hello\", \"who are you?\", \"what can you do?\"): the agent does NOT need any documents → `\"keep\"` with `[]`.\n- Ambiguous references like \"the document\" or \"this contract\" without specifying which: keep all → `\"drop\"` with `[]`.\n- For follow-up questions, include history messages that establish the topic.\n- Always return valid JSON matching the schema.",
10042
10091
  * "TEMPERATURE": 0,
10043
10092
  * "MAX_TOKENS": 0
@@ -10048,7 +10097,7 @@ interface components {
10048
10097
  * @default {
10049
10098
  * "API_TYPE": "remote",
10050
10099
  * "ENABLE_THINKING": false,
10051
- * "MODEL_NAME": "Fast",
10100
+ * "MODEL_NAME": "dummy",
10052
10101
  * "TEMPERATURE": 0.1,
10053
10102
  * "MAX_TOKENS": 0,
10054
10103
  * "MAX_PAGES_PER_CALL": 5,
@@ -10069,7 +10118,7 @@ interface components {
10069
10118
  * @default {
10070
10119
  * "API_TYPE": "remote",
10071
10120
  * "ENABLE_THINKING": true,
10072
- * "MODEL_NAME": "Premium",
10121
+ * "MODEL_NAME": "",
10073
10122
  * "SYSTEM_INSTRUCTION": "You are a code execution agent. You write and run code to accomplish tasks.\n\nYou have access to an execute_code tool that runs code in a sandboxed Docker container.\n\nThe sandbox has:\n- Python 3.12 with numpy, pandas, matplotlib, requests, beautifulsoup4,\n httpx, pillow, sympy, pyyaml (plus uv for installing more)\n- Node.js 22 with TypeScript (ts-node) and npm\n- Bash with git, curl, wget, jq, sqlite3, build-essential\n- Network access (can pip/npm install additional packages)\n\nInstructions:\n1. Write clean, correct code to accomplish the user's task\n2. Always call execute_code to run your code — never guess the output\n3. If execution errors, analyze the traceback, fix the code, and retry\n4. Once you have the correct output, respond with ONLY the final result\n\nKeep code simple and direct. Prefer Python unless the task specifically requires another language.",
10074
10123
  * "TEMPERATURE": 0.2,
10075
10124
  * "MAX_TOKENS": 0
@@ -10139,7 +10188,7 @@ interface components {
10139
10188
  * },
10140
10189
  * "MAX_CONCURRENT_REQUESTS": 256,
10141
10190
  * "MODEL_NAME": "Qwen/Qwen3-Reranker-0.6B",
10142
- * "API_TYPE": "remote",
10191
+ * "API_TYPE": "local",
10143
10192
  * "RETRIEVAL_INSTRUCTION": "Judge whether the passage contains the specific facts, figures, names, or references mentioned in the query. Only answer yes if the passage directly contains these details"
10144
10193
  * }
10145
10194
  */
@@ -10160,7 +10209,7 @@ interface components {
10160
10209
  /**
10161
10210
  * @default {
10162
10211
  * "MODEL_NAME": "Qwen/Qwen3-Embedding-0.6B",
10163
- * "API_TYPE": "remote",
10212
+ * "API_TYPE": "local",
10164
10213
  * "BATCH_SIZE": 128,
10165
10214
  * "MAX_CONCURRENT_REQUESTS": 256,
10166
10215
  * "DOCUMENT_PREFIX": "",
@@ -10269,27 +10318,6 @@ interface components {
10269
10318
  * namespaced `arbi` field, so a standard Responses client ignores it (unknown
10270
10319
  * field) while ours reads it. The item itself stays byte-for-byte standard.
10271
10320
  */
10272
- RoutingDecision: {
10273
- status: 'applied' | 'fallback';
10274
- router_model: string;
10275
- selected_model: string;
10276
- model_recommendation?: string | null;
10277
- elapsed_seconds: number;
10278
- input_tokens?: number | null;
10279
- output_tokens?: number | null;
10280
- cost_usd?: number | null;
10281
- retained_message_ext_ids: string[];
10282
- recommended_history_keep_count?: number | null;
10283
- history_retained_by_policy?: boolean;
10284
- document_titles: {
10285
- [key: string]: string;
10286
- };
10287
- selected_doc_ext_ids: string[];
10288
- selected_tool_names?: string[] | null;
10289
- always_available_tool_names: string[];
10290
- recommended_tool_names?: string[] | null;
10291
- fallback_reason?: string | null;
10292
- };
10293
10321
  ArbiItemMeta: {
10294
10322
  /**
10295
10323
  * Step
@@ -10377,11 +10405,12 @@ interface components {
10377
10405
  * @description Resolved model (goal item, auto mode).
10378
10406
  */
10379
10407
  selected_model?: string | null;
10408
+ /** @description Inspectable native router decisions. */
10409
+ routing?: components['schemas']['RoutingDecision'] | null;
10380
10410
  /**
10381
10411
  * Kept Doc Ext Ids
10382
10412
  * @description Goal step only: documents the planner kept for this turn.
10383
10413
  */
10384
- routing?: components['schemas']['RoutingDecision'] | null;
10385
10414
  kept_doc_ext_ids?: string[] | null;
10386
10415
  /**
10387
10416
  * Dropped Doc Ext Ids
@@ -12616,7 +12645,7 @@ interface components {
12616
12645
  /**
12617
12646
  * Model Name
12618
12647
  * @description Model for code generation. Should be a strong coding model.
12619
- * @default Premium
12648
+ * @default
12620
12649
  */
12621
12650
  MODEL_NAME: string;
12622
12651
  /**
@@ -14191,6 +14220,31 @@ interface components {
14191
14220
  [key: string]: components['schemas']['ModelGroupUsage'];
14192
14221
  };
14193
14222
  };
14223
+ /** DashboardResponse */
14224
+ DashboardResponse: {
14225
+ /** External Id */
14226
+ external_id: string;
14227
+ /** Ciphertext */
14228
+ ciphertext: string;
14229
+ /**
14230
+ * Created At
14231
+ * Format: date-time
14232
+ */
14233
+ created_at: string;
14234
+ /**
14235
+ * Updated At
14236
+ * Format: date-time
14237
+ */
14238
+ updated_at: string;
14239
+ };
14240
+ /** DashboardWrite */
14241
+ DashboardWrite: {
14242
+ /**
14243
+ * Ciphertext
14244
+ * @description Base64 SealedBox of the dashboard's JSON spec to the caller's own encryption key
14245
+ */
14246
+ ciphertext: string;
14247
+ };
14194
14248
  /**
14195
14249
  * DatabaseAggregateRequest
14196
14250
  * @description Group a database's rows and measure each group — the numbers a chart or a metric tile draws.
@@ -15093,7 +15147,7 @@ interface components {
15093
15147
  /**
15094
15148
  * Model Name
15095
15149
  * @description The name of the non-reasoning model to be used.
15096
- * @default Fast
15150
+ * @default dummy
15097
15151
  */
15098
15152
  MODEL_NAME: string;
15099
15153
  /**
@@ -15437,7 +15491,7 @@ interface components {
15437
15491
  /**
15438
15492
  * Api Type
15439
15493
  * @description The inference type (local or remote).
15440
- * @default remote
15494
+ * @default local
15441
15495
  * @enum {string}
15442
15496
  */
15443
15497
  API_TYPE: 'local' | 'remote';
@@ -15560,7 +15614,7 @@ interface components {
15560
15614
  /**
15561
15615
  * Model Name
15562
15616
  * @description The name of the non-reasoning model to be used.
15563
- * @default Fast
15617
+ * @default dummy
15564
15618
  */
15565
15619
  MODEL_NAME: string;
15566
15620
  /**
@@ -16165,7 +16219,7 @@ interface components {
16165
16219
  /**
16166
16220
  * Model Name
16167
16221
  * @description The name of the non-reasoning model to be used.
16168
- * @default Fast
16222
+ * @default dummy
16169
16223
  */
16170
16224
  MODEL_NAME: string;
16171
16225
  /**
@@ -18019,7 +18073,7 @@ interface components {
18019
18073
  /**
18020
18074
  * Model Name
18021
18075
  * @description The model for note consolidation. Defaults to reasoning model.
18022
- * @default Wise
18076
+ * @default dummy
18023
18077
  */
18024
18078
  MODEL_NAME: string;
18025
18079
  /**
@@ -19221,7 +19275,7 @@ interface components {
19221
19275
  /**
19222
19276
  * Model Name
19223
19277
  * @description The model for plan generation. Defaults to reasoning model.
19224
- * @default Wise
19278
+ * @default dummy
19225
19279
  */
19226
19280
  MODEL_NAME: string;
19227
19281
  /**
@@ -20273,7 +20327,7 @@ interface components {
20273
20327
  /**
20274
20328
  * Model Name
20275
20329
  * @description The model for query answering.
20276
- * @default Fast
20330
+ * @default dummy
20277
20331
  */
20278
20332
  MODEL_NAME: string;
20279
20333
  /**
@@ -20702,7 +20756,7 @@ interface components {
20702
20756
  /**
20703
20757
  * Api Type
20704
20758
  * @description The inference type (local or remote).
20705
- * @default remote
20759
+ * @default local
20706
20760
  * @enum {string}
20707
20761
  */
20708
20762
  API_TYPE: 'local' | 'remote';
@@ -21562,7 +21616,7 @@ interface components {
21562
21616
  /**
21563
21617
  * Model Name
21564
21618
  * @description The model for reviewing agent draft answers. Defaults to reasoning model.
21565
- * @default Wise
21619
+ * @default dummy
21566
21620
  */
21567
21621
  MODEL_NAME: string;
21568
21622
  /**
@@ -21647,6 +21701,54 @@ interface components {
21647
21701
  /** Title */
21648
21702
  title?: string | null;
21649
21703
  };
21704
+ /**
21705
+ * RoutingDecision
21706
+ * @description Inspectable routing choices, persisted with the completed response step.
21707
+ */
21708
+ RoutingDecision: {
21709
+ /**
21710
+ * Status
21711
+ * @enum {string}
21712
+ */
21713
+ status: 'applied' | 'fallback';
21714
+ /** Router Model */
21715
+ router_model: string;
21716
+ /** Selected Model */
21717
+ selected_model: string;
21718
+ /** Model Recommendation */
21719
+ model_recommendation?: string | null;
21720
+ /** Elapsed Seconds */
21721
+ elapsed_seconds: number;
21722
+ /** Input Tokens */
21723
+ input_tokens?: number | null;
21724
+ /** Output Tokens */
21725
+ output_tokens?: number | null;
21726
+ /** Cost Usd */
21727
+ cost_usd?: number | null;
21728
+ /** Retained Message Ext Ids */
21729
+ retained_message_ext_ids: string[];
21730
+ /** Recommended History Keep Count */
21731
+ recommended_history_keep_count?: number | null;
21732
+ /**
21733
+ * History Retained By Policy
21734
+ * @default false
21735
+ */
21736
+ history_retained_by_policy: boolean;
21737
+ /** Document Titles */
21738
+ document_titles: {
21739
+ [key: string]: string;
21740
+ };
21741
+ /** Selected Doc Ext Ids */
21742
+ selected_doc_ext_ids: string[];
21743
+ /** Selected Tool Names */
21744
+ selected_tool_names?: string[] | null;
21745
+ /** Always Available Tool Names */
21746
+ always_available_tool_names: string[];
21747
+ /** Recommended Tool Names */
21748
+ recommended_tool_names?: string[] | null;
21749
+ /** Fallback Reason */
21750
+ fallback_reason?: string | null;
21751
+ };
21650
21752
  /**
21651
21753
  * RunCodeConfig
21652
21754
  * @description spawn_coding_agent sandbox tuning (developer-only — image/network/limits are infra,
@@ -23215,7 +23317,7 @@ interface components {
23215
23317
  /**
23216
23318
  * Model Name
23217
23319
  * @description The model for conversation summarisation. Defaults to reasoning model.
23218
- * @default Wise
23320
+ * @default dummy
23219
23321
  */
23220
23322
  MODEL_NAME: string;
23221
23323
  /**
@@ -23916,7 +24018,7 @@ interface components {
23916
24018
  /**
23917
24019
  * Model Name
23918
24020
  * @description The name of the non-reasoning model to be used.
23919
- * @default Fast
24021
+ * @default dummy
23920
24022
  */
23921
24023
  MODEL_NAME: string;
23922
24024
  /**
@@ -24351,7 +24453,7 @@ interface components {
24351
24453
  /**
24352
24454
  * Model Name
24353
24455
  * @description The name of the non-reasoning model to be used.
24354
- * @default Fast
24456
+ * @default dummy
24355
24457
  */
24356
24458
  MODEL_NAME: string;
24357
24459
  /**
@@ -25325,7 +25427,7 @@ interface components {
25325
25427
  /**
25326
25428
  * Model Name
25327
25429
  * @description The vision-capable model name (must support image inputs).
25328
- * @default Fast
25430
+ * @default dummy
25329
25431
  */
25330
25432
  MODEL_NAME: string;
25331
25433
  /**
@@ -27518,6 +27620,162 @@ interface operations {
27518
27620
  };
27519
27621
  };
27520
27622
  };
27623
+ list_dashboards: {
27624
+ parameters: {
27625
+ query?: {
27626
+ limit?: number;
27627
+ };
27628
+ header?: never;
27629
+ path?: never;
27630
+ cookie?: never;
27631
+ };
27632
+ requestBody?: never;
27633
+ responses: {
27634
+ /** @description Successful Response */
27635
+ 200: {
27636
+ headers: {
27637
+ [name: string]: unknown;
27638
+ };
27639
+ content: {
27640
+ 'application/json': components['schemas']['DashboardResponse'][];
27641
+ };
27642
+ };
27643
+ /** @description Validation Error */
27644
+ 422: {
27645
+ headers: {
27646
+ [name: string]: unknown;
27647
+ };
27648
+ content: {
27649
+ 'application/json': components['schemas']['HTTPValidationError'];
27650
+ };
27651
+ };
27652
+ };
27653
+ };
27654
+ create_dashboard: {
27655
+ parameters: {
27656
+ query?: never;
27657
+ header?: never;
27658
+ path?: never;
27659
+ cookie?: never;
27660
+ };
27661
+ requestBody: {
27662
+ content: {
27663
+ 'application/json': components['schemas']['DashboardWrite'];
27664
+ };
27665
+ };
27666
+ responses: {
27667
+ /** @description Successful Response */
27668
+ 201: {
27669
+ headers: {
27670
+ [name: string]: unknown;
27671
+ };
27672
+ content: {
27673
+ 'application/json': components['schemas']['DashboardResponse'];
27674
+ };
27675
+ };
27676
+ /** @description Validation Error */
27677
+ 422: {
27678
+ headers: {
27679
+ [name: string]: unknown;
27680
+ };
27681
+ content: {
27682
+ 'application/json': components['schemas']['HTTPValidationError'];
27683
+ };
27684
+ };
27685
+ };
27686
+ };
27687
+ update_dashboard: {
27688
+ parameters: {
27689
+ query?: never;
27690
+ header?: never;
27691
+ path: {
27692
+ dashboard_ext_id: string;
27693
+ };
27694
+ cookie?: never;
27695
+ };
27696
+ requestBody: {
27697
+ content: {
27698
+ 'application/json': components['schemas']['DashboardWrite'];
27699
+ };
27700
+ };
27701
+ responses: {
27702
+ /** @description Successful Response */
27703
+ 200: {
27704
+ headers: {
27705
+ [name: string]: unknown;
27706
+ };
27707
+ content: {
27708
+ 'application/json': components['schemas']['DashboardResponse'];
27709
+ };
27710
+ };
27711
+ /** @description Not for an agent token */
27712
+ 403: {
27713
+ headers: {
27714
+ [name: string]: unknown;
27715
+ };
27716
+ content?: never;
27717
+ };
27718
+ /** @description Not one of the caller's dashboards (or deleted) */
27719
+ 404: {
27720
+ headers: {
27721
+ [name: string]: unknown;
27722
+ };
27723
+ content?: never;
27724
+ };
27725
+ /** @description Validation Error */
27726
+ 422: {
27727
+ headers: {
27728
+ [name: string]: unknown;
27729
+ };
27730
+ content: {
27731
+ 'application/json': components['schemas']['HTTPValidationError'];
27732
+ };
27733
+ };
27734
+ };
27735
+ };
27736
+ delete_dashboard: {
27737
+ parameters: {
27738
+ query?: never;
27739
+ header?: never;
27740
+ path: {
27741
+ dashboard_ext_id: string;
27742
+ };
27743
+ cookie?: never;
27744
+ };
27745
+ requestBody?: never;
27746
+ responses: {
27747
+ /** @description Successful Response */
27748
+ 204: {
27749
+ headers: {
27750
+ [name: string]: unknown;
27751
+ };
27752
+ content?: never;
27753
+ };
27754
+ /** @description Not for an agent token */
27755
+ 403: {
27756
+ headers: {
27757
+ [name: string]: unknown;
27758
+ };
27759
+ content?: never;
27760
+ };
27761
+ /** @description Not one of the caller's dashboards (or deleted) */
27762
+ 404: {
27763
+ headers: {
27764
+ [name: string]: unknown;
27765
+ };
27766
+ content?: never;
27767
+ };
27768
+ /** @description Validation Error */
27769
+ 422: {
27770
+ headers: {
27771
+ [name: string]: unknown;
27772
+ };
27773
+ content: {
27774
+ 'application/json': components['schemas']['HTTPValidationError'];
27775
+ };
27776
+ };
27777
+ };
27778
+ };
27521
27779
  get_user_settings: {
27522
27780
  parameters: {
27523
27781
  query?: never;
package/dist/index.d.ts CHANGED
@@ -1001,6 +1001,55 @@ interface paths {
1001
1001
  patch?: never;
1002
1002
  trace?: never;
1003
1003
  };
1004
+ '/v1/user/dashboards': {
1005
+ parameters: {
1006
+ query?: never;
1007
+ header?: never;
1008
+ path?: never;
1009
+ cookie?: never;
1010
+ };
1011
+ /**
1012
+ * List Dashboards
1013
+ * @description The caller's saved dashboards, oldest first, each sealed to the caller (only their browser opens it). RLS
1014
+ * returns the caller's own rows only.
1015
+ */
1016
+ get: operations['list_dashboards'];
1017
+ put?: never;
1018
+ /**
1019
+ * Create Dashboard
1020
+ * @description Save a new dashboard, sealed in the browser to the caller's own encryption key. The server cannot read it.
1021
+ */
1022
+ post: operations['create_dashboard'];
1023
+ delete?: never;
1024
+ options?: never;
1025
+ head?: never;
1026
+ patch?: never;
1027
+ trace?: never;
1028
+ };
1029
+ '/v1/user/dashboards/{dashboard_ext_id}': {
1030
+ parameters: {
1031
+ query?: never;
1032
+ header?: never;
1033
+ path?: never;
1034
+ cookie?: never;
1035
+ };
1036
+ get?: never;
1037
+ /**
1038
+ * Update Dashboard
1039
+ * @description Replace a saved dashboard's encrypted spec. 404 when it is not one of the caller's (RLS hides the rest).
1040
+ */
1041
+ put: operations['update_dashboard'];
1042
+ post?: never;
1043
+ /**
1044
+ * Delete Dashboard
1045
+ * @description Delete a saved dashboard (the row itself). 404 when it is not one of the caller's, or is gone (RLS).
1046
+ */
1047
+ delete: operations['delete_dashboard'];
1048
+ options?: never;
1049
+ head?: never;
1050
+ patch?: never;
1051
+ trace?: never;
1052
+ };
1004
1053
  '/v1/user/settings': {
1005
1054
  parameters: {
1006
1055
  query?: never;
@@ -9870,7 +9919,7 @@ interface components {
9870
9919
  * @default {
9871
9920
  * "API_TYPE": "remote",
9872
9921
  * "ENABLE_THINKING": false,
9873
- * "MODEL_NAME": "Fast",
9922
+ * "MODEL_NAME": "dummy",
9874
9923
  * "SYSTEM_INSTRUCTION": "You are ARBI, an AI assistant created by ARBI CITY. Be proactive, helpful and professional.Be concise. Use markdown where it helps readability. Cross-check information across sources before answering. Never fabricate facts. Not all assertions in the sources are factual — some are arguments by a party. Attribute claims to their source, especially where parties disagree.",
9875
9924
  * "MAX_TOKEN_SIZE_TO_ANSWER": 200000,
9876
9925
  * "TEMPERATURE": 0.1,
@@ -9882,7 +9931,7 @@ interface components {
9882
9931
  * @default {
9883
9932
  * "API_TYPE": "remote",
9884
9933
  * "ENABLE_THINKING": false,
9885
- * "MODEL_NAME": "Wise",
9934
+ * "MODEL_NAME": "dummy",
9886
9935
  * "SYSTEM_INSTRUCTION": "You are reviewing a draft answer prepared by a research agent. The draft was written based on summaries, but you now have access to the full source material.\n\nYour task:\n1. Review the draft answer against the source material provided\n2. Verify claims are supported by the sources\n3. Correct any inaccuracies or unsupported statements\n4. Add any important details from the sources that were missed\n5. Maintain formal, objective tone appropriate for professional contexts\n\nIf information is not found in the sources but the draft answer is based on web search results or general knowledge, preserve it and ensure it is clearly labelled as such. Only flag missing source support for claims that purport to come from the documents.\nDo not add inline citation markers - the system handles citations automatically.",
9887
9936
  * "TEMPERATURE": 0.1,
9888
9937
  * "MAX_TOKENS": 0,
@@ -9894,7 +9943,7 @@ interface components {
9894
9943
  * @default {
9895
9944
  * "API_TYPE": "remote",
9896
9945
  * "ENABLE_THINKING": false,
9897
- * "MODEL_NAME": "Fast",
9946
+ * "MODEL_NAME": "dummy",
9898
9947
  * "SYSTEM_INSTRUCTION": "You are a chunk evaluator. Analyze retrieved chunks to determine which are relevant to the user's query and extract key learnings from the RELEVANT chunks only. You must return your response as valid JSON matching the provided schema.",
9899
9948
  * "TEMPERATURE": 0.1,
9900
9949
  * "MAX_TOKENS": 0,
@@ -9909,7 +9958,7 @@ interface components {
9909
9958
  * @default {
9910
9959
  * "API_TYPE": "remote",
9911
9960
  * "ENABLE_THINKING": false,
9912
- * "MODEL_NAME": "Fast",
9961
+ * "MODEL_NAME": "dummy",
9913
9962
  * "SYSTEM_INSTRUCTION": "You are a title generator that creates concise, descriptive titles.\n\nOutput the title as plain text only. Do not use Markdown or any other formatting. Specifically:\n- Do not bold, italicize, or otherwise emphasize any part of the title.\n- Do not include asterisks (*), underscores (_), backticks (`), or other Markdown markers.\n- Do not prefix the title with bullets, dashes (-), or numbered/lettered enumeration (e.g. \"1.\", \"a)\").\n- Do not wrap the title in quotes or brackets.",
9914
9963
  * "MAX_TOKEN_SIZE_TO_ANSWER": 20,
9915
9964
  * "TEMPERATURE": 0.3,
@@ -9921,7 +9970,7 @@ interface components {
9921
9970
  * @default {
9922
9971
  * "API_TYPE": "remote",
9923
9972
  * "ENABLE_THINKING": false,
9924
- * "MODEL_NAME": "Wise",
9973
+ * "MODEL_NAME": "dummy",
9925
9974
  * "SYSTEM_INSTRUCTION": "You are a conversation summariser. Condense the conversation history into a concise summary that preserves:\n- Key decisions and conclusions reached\n- Specific names, dates, numbers, and document references\n- Open questions and unresolved items\n- The user's goals and constraints\n\nWrite in past tense, third person. Be specific, not vague. Do not omit important details in favour of brevity.",
9926
9975
  * "TEMPERATURE": 0.1,
9927
9976
  * "MAX_TOKENS": 0,
@@ -9935,7 +9984,7 @@ interface components {
9935
9984
  * @default {
9936
9985
  * "API_TYPE": "remote",
9937
9986
  * "ENABLE_THINKING": false,
9938
- * "MODEL_NAME": "Fast",
9987
+ * "MODEL_NAME": "dummy",
9939
9988
  * "SYSTEM_INSTRUCTION": "You are a document analysis assistant. Answer questions based on the document content.\n\nYour answers are displayed directly as cell values in a table, so keep every answer as short as possible.\n\nGuidelines:\n- Answer with the value only — never a full sentence. Do not restate the question or add lead-ins such as \"This document is...\" or \"The document describes...\". Good: \"German\". Bad: \"This document is written in German.\"\n- When an answer has multiple values, put each value on its own line: separate values with a newline character. Do not separate them with commas, bullets, dashes, numbering, or by writing them as a sentence.\n- Answer from the document. Reasonable inferences are fine; if the document gives no basis for an answer, the value is null and sources is empty.\n- Follow the format instructions exactly for each answer.\n- Output answers as plain text only. Do not use Markdown or any other formatting: no bold, italics, asterisks (*), underscores (_), backticks (`), bullets, or numbered/lettered enumeration.\n- Passages may be preceded by markers like [p3.2]: not document content. Cite them in \"sources\", never in a value.",
9940
9989
  * "MAX_TOKEN_CONTEXT_TO_ANSWER": 200000,
9941
9990
  * "METADATA_CONTEXT_TOKENS": 12000,
@@ -9997,7 +10046,7 @@ interface components {
9997
10046
  * @default {
9998
10047
  * "API_TYPE": "remote",
9999
10048
  * "ENABLE_THINKING": false,
10000
- * "MODEL_NAME": "Fast",
10049
+ * "MODEL_NAME": "dummy",
10001
10050
  * "SYSTEM_INSTRUCTION": "You are a professional translator of legal, commercial and technical documents.\n\nYou translate the numbered passages you are given into the target language, faithfully and completely:\n- Translate every passage in full. Never summarise, shorten, merge, split, reorder, explain or comment.\n- Keep the Markdown structure of each passage exactly: headings (#), lists, emphasis, tables (same rows and columns), links and line breaks.\n- Keep unchanged: numbers, dates as written, amounts, currencies, clause and section numbering, cross-references, citations, case names, statute names, email addresses, URLs and code.\n- Keep proper names of people, companies and places as they are written, unless the glossary gives a translation.\n- Use the glossary's translation for every glossary term, every time it occurs.\n- A defined term (a capitalised or quoted term given a meaning in the document) is translated the same way everywhere.\n- A passage already in the target language, or with nothing to translate (a number, a signature line, a blank form field), is returned as it is.\n- The context passages before and after are there only so the translation reads on from its neighbours. Never translate or return them.",
10002
10051
  * "TEMPERATURE": 0.2,
10003
10052
  * "MAX_TOKENS": 0,
@@ -10012,7 +10061,7 @@ interface components {
10012
10061
  * @default {
10013
10062
  * "API_TYPE": "remote",
10014
10063
  * "ENABLE_THINKING": false,
10015
- * "MODEL_NAME": "Wise",
10064
+ * "MODEL_NAME": "dummy",
10016
10065
  * "TEMPERATURE": 0.3,
10017
10066
  * "MAX_TOKENS": 0,
10018
10067
  * "MAX_TOKEN_CONTEXT": 200000,
@@ -10024,7 +10073,7 @@ interface components {
10024
10073
  * @default {
10025
10074
  * "API_TYPE": "remote",
10026
10075
  * "ENABLE_THINKING": true,
10027
- * "MODEL_NAME": "Wise",
10076
+ * "MODEL_NAME": "dummy",
10028
10077
  * "SYSTEM_INSTRUCTION": "You are a research planning assistant. Your job is to analyze a user query and produce a concise, numbered research plan.\n\nYou have access to a workspace of documents.[[if search_inside_documents, read_document, get_table_of_contents: The available tools for executing the plan are:\n- search_inside_documents: Search workspace documents for relevant passages (semantic, keyword, or hybrid). Use digest=true to extract learnings.\n- read_document: Read page ranges or entire documents. Use digest=true to extract learnings with citations.\n- get_table_of_contents: Get document headings with page references]]\n\nConsider:\n- What information is needed to answer the query\n- Which documents are likely relevant based on the document index\n- What search queries and document passages to examine\n- What order of operations will be most efficient\n- Whether parallel searches can be used for different aspects\n\nRespond with ONLY the plan (numbered steps). Do not execute any steps.",
10029
10078
  * "TEMPERATURE": 0.3,
10030
10079
  * "MAX_TOKENS": 0,
@@ -10037,7 +10086,7 @@ interface components {
10037
10086
  * @default {
10038
10087
  * "API_TYPE": "remote",
10039
10088
  * "ENABLE_THINKING": false,
10040
- * "MODEL_NAME": "Fast",
10089
+ * "MODEL_NAME": "dummy",
10041
10090
  * "SYSTEM_INSTRUCTION": "You are a context selector. Given a user's query, conversation history, and a table of available documents, determine the user's goal and select relevant context.\n\n## Instructions\n\n1. **goal**: 1-2 concise sentences describing the user's intent AND your filtering rationale. Explain what documents are needed and why. Examples:\n - \"The user is greeting the assistant. No documents are needed.\"\n - \"The user wants to find force majeure clauses. Only the three contracts are relevant, so I will keep only those.\"\n - \"The user wants a full timeline of the case. Most documents are relevant, so I will drop only the unrelated procedural orders.\"\n - The agent that reads the goal does not see the history indices: refer to an earlier message by what it is (\"the investigation report in the previous answer\"), never by its [N] index.\n\n2. **doc_filter_mode** and **doc_ids**: Select which documents the agent needs.\n - `\"keep\"` mode: `doc_ids` lists the ONLY docs to keep. Everything else is dropped.\n - `\"drop\"` mode: `doc_ids` lists the ONLY docs to drop. Everything else is kept.\n - Pick whichever mode produces the **shorter `doc_ids` list**.\n - Doc IDs are in the **Id** column of the Available Documents table (e.g. `\"doc-abc12345\"`). Copy them **exactly** from the table — do not invent, guess, or modify IDs.\n\n | Scenario | doc_filter_mode | doc_ids |\n |----------|----------------|---------|\n | Need ALL docs | `\"drop\"` | `[]` |\n | Need NO docs | `\"keep\"` | `[]` |\n | Need 3 of 100 docs | `\"keep\"` | `[\"id1\",\"id2\",\"id3\"]` |\n | Drop 3 of 100 docs | `\"drop\"` | `[\"id1\",\"id2\",\"id3\"]` |\n\n3. **chat_range_start** and **chat_range_end**: 0-based inclusive range of earlier history messages that provide relevant context. The last 3 messages are always included automatically. Set both to -1 if no earlier history is needed.\n\n## Rules\n\n- **Never repeat a doc ID.** Each ID must appear at most once.\n- Before writing `doc_ids`, count how many you would keep vs drop, then pick the shorter list.\n- Greetings or meta-questions about the assistant (e.g. \"hello\", \"who are you?\", \"what can you do?\"): the agent does NOT need any documents → `\"keep\"` with `[]`.\n- Ambiguous references like \"the document\" or \"this contract\" without specifying which: keep all → `\"drop\"` with `[]`.\n- For follow-up questions, include history messages that establish the topic.\n- Always return valid JSON matching the schema.",
10042
10091
  * "TEMPERATURE": 0,
10043
10092
  * "MAX_TOKENS": 0
@@ -10048,7 +10097,7 @@ interface components {
10048
10097
  * @default {
10049
10098
  * "API_TYPE": "remote",
10050
10099
  * "ENABLE_THINKING": false,
10051
- * "MODEL_NAME": "Fast",
10100
+ * "MODEL_NAME": "dummy",
10052
10101
  * "TEMPERATURE": 0.1,
10053
10102
  * "MAX_TOKENS": 0,
10054
10103
  * "MAX_PAGES_PER_CALL": 5,
@@ -10069,7 +10118,7 @@ interface components {
10069
10118
  * @default {
10070
10119
  * "API_TYPE": "remote",
10071
10120
  * "ENABLE_THINKING": true,
10072
- * "MODEL_NAME": "Premium",
10121
+ * "MODEL_NAME": "",
10073
10122
  * "SYSTEM_INSTRUCTION": "You are a code execution agent. You write and run code to accomplish tasks.\n\nYou have access to an execute_code tool that runs code in a sandboxed Docker container.\n\nThe sandbox has:\n- Python 3.12 with numpy, pandas, matplotlib, requests, beautifulsoup4,\n httpx, pillow, sympy, pyyaml (plus uv for installing more)\n- Node.js 22 with TypeScript (ts-node) and npm\n- Bash with git, curl, wget, jq, sqlite3, build-essential\n- Network access (can pip/npm install additional packages)\n\nInstructions:\n1. Write clean, correct code to accomplish the user's task\n2. Always call execute_code to run your code — never guess the output\n3. If execution errors, analyze the traceback, fix the code, and retry\n4. Once you have the correct output, respond with ONLY the final result\n\nKeep code simple and direct. Prefer Python unless the task specifically requires another language.",
10074
10123
  * "TEMPERATURE": 0.2,
10075
10124
  * "MAX_TOKENS": 0
@@ -10139,7 +10188,7 @@ interface components {
10139
10188
  * },
10140
10189
  * "MAX_CONCURRENT_REQUESTS": 256,
10141
10190
  * "MODEL_NAME": "Qwen/Qwen3-Reranker-0.6B",
10142
- * "API_TYPE": "remote",
10191
+ * "API_TYPE": "local",
10143
10192
  * "RETRIEVAL_INSTRUCTION": "Judge whether the passage contains the specific facts, figures, names, or references mentioned in the query. Only answer yes if the passage directly contains these details"
10144
10193
  * }
10145
10194
  */
@@ -10160,7 +10209,7 @@ interface components {
10160
10209
  /**
10161
10210
  * @default {
10162
10211
  * "MODEL_NAME": "Qwen/Qwen3-Embedding-0.6B",
10163
- * "API_TYPE": "remote",
10212
+ * "API_TYPE": "local",
10164
10213
  * "BATCH_SIZE": 128,
10165
10214
  * "MAX_CONCURRENT_REQUESTS": 256,
10166
10215
  * "DOCUMENT_PREFIX": "",
@@ -10269,27 +10318,6 @@ interface components {
10269
10318
  * namespaced `arbi` field, so a standard Responses client ignores it (unknown
10270
10319
  * field) while ours reads it. The item itself stays byte-for-byte standard.
10271
10320
  */
10272
- RoutingDecision: {
10273
- status: 'applied' | 'fallback';
10274
- router_model: string;
10275
- selected_model: string;
10276
- model_recommendation?: string | null;
10277
- elapsed_seconds: number;
10278
- input_tokens?: number | null;
10279
- output_tokens?: number | null;
10280
- cost_usd?: number | null;
10281
- retained_message_ext_ids: string[];
10282
- recommended_history_keep_count?: number | null;
10283
- history_retained_by_policy?: boolean;
10284
- document_titles: {
10285
- [key: string]: string;
10286
- };
10287
- selected_doc_ext_ids: string[];
10288
- selected_tool_names?: string[] | null;
10289
- always_available_tool_names: string[];
10290
- recommended_tool_names?: string[] | null;
10291
- fallback_reason?: string | null;
10292
- };
10293
10321
  ArbiItemMeta: {
10294
10322
  /**
10295
10323
  * Step
@@ -10377,11 +10405,12 @@ interface components {
10377
10405
  * @description Resolved model (goal item, auto mode).
10378
10406
  */
10379
10407
  selected_model?: string | null;
10408
+ /** @description Inspectable native router decisions. */
10409
+ routing?: components['schemas']['RoutingDecision'] | null;
10380
10410
  /**
10381
10411
  * Kept Doc Ext Ids
10382
10412
  * @description Goal step only: documents the planner kept for this turn.
10383
10413
  */
10384
- routing?: components['schemas']['RoutingDecision'] | null;
10385
10414
  kept_doc_ext_ids?: string[] | null;
10386
10415
  /**
10387
10416
  * Dropped Doc Ext Ids
@@ -12616,7 +12645,7 @@ interface components {
12616
12645
  /**
12617
12646
  * Model Name
12618
12647
  * @description Model for code generation. Should be a strong coding model.
12619
- * @default Premium
12648
+ * @default
12620
12649
  */
12621
12650
  MODEL_NAME: string;
12622
12651
  /**
@@ -14191,6 +14220,31 @@ interface components {
14191
14220
  [key: string]: components['schemas']['ModelGroupUsage'];
14192
14221
  };
14193
14222
  };
14223
+ /** DashboardResponse */
14224
+ DashboardResponse: {
14225
+ /** External Id */
14226
+ external_id: string;
14227
+ /** Ciphertext */
14228
+ ciphertext: string;
14229
+ /**
14230
+ * Created At
14231
+ * Format: date-time
14232
+ */
14233
+ created_at: string;
14234
+ /**
14235
+ * Updated At
14236
+ * Format: date-time
14237
+ */
14238
+ updated_at: string;
14239
+ };
14240
+ /** DashboardWrite */
14241
+ DashboardWrite: {
14242
+ /**
14243
+ * Ciphertext
14244
+ * @description Base64 SealedBox of the dashboard's JSON spec to the caller's own encryption key
14245
+ */
14246
+ ciphertext: string;
14247
+ };
14194
14248
  /**
14195
14249
  * DatabaseAggregateRequest
14196
14250
  * @description Group a database's rows and measure each group — the numbers a chart or a metric tile draws.
@@ -15093,7 +15147,7 @@ interface components {
15093
15147
  /**
15094
15148
  * Model Name
15095
15149
  * @description The name of the non-reasoning model to be used.
15096
- * @default Fast
15150
+ * @default dummy
15097
15151
  */
15098
15152
  MODEL_NAME: string;
15099
15153
  /**
@@ -15437,7 +15491,7 @@ interface components {
15437
15491
  /**
15438
15492
  * Api Type
15439
15493
  * @description The inference type (local or remote).
15440
- * @default remote
15494
+ * @default local
15441
15495
  * @enum {string}
15442
15496
  */
15443
15497
  API_TYPE: 'local' | 'remote';
@@ -15560,7 +15614,7 @@ interface components {
15560
15614
  /**
15561
15615
  * Model Name
15562
15616
  * @description The name of the non-reasoning model to be used.
15563
- * @default Fast
15617
+ * @default dummy
15564
15618
  */
15565
15619
  MODEL_NAME: string;
15566
15620
  /**
@@ -16165,7 +16219,7 @@ interface components {
16165
16219
  /**
16166
16220
  * Model Name
16167
16221
  * @description The name of the non-reasoning model to be used.
16168
- * @default Fast
16222
+ * @default dummy
16169
16223
  */
16170
16224
  MODEL_NAME: string;
16171
16225
  /**
@@ -18019,7 +18073,7 @@ interface components {
18019
18073
  /**
18020
18074
  * Model Name
18021
18075
  * @description The model for note consolidation. Defaults to reasoning model.
18022
- * @default Wise
18076
+ * @default dummy
18023
18077
  */
18024
18078
  MODEL_NAME: string;
18025
18079
  /**
@@ -19221,7 +19275,7 @@ interface components {
19221
19275
  /**
19222
19276
  * Model Name
19223
19277
  * @description The model for plan generation. Defaults to reasoning model.
19224
- * @default Wise
19278
+ * @default dummy
19225
19279
  */
19226
19280
  MODEL_NAME: string;
19227
19281
  /**
@@ -20273,7 +20327,7 @@ interface components {
20273
20327
  /**
20274
20328
  * Model Name
20275
20329
  * @description The model for query answering.
20276
- * @default Fast
20330
+ * @default dummy
20277
20331
  */
20278
20332
  MODEL_NAME: string;
20279
20333
  /**
@@ -20702,7 +20756,7 @@ interface components {
20702
20756
  /**
20703
20757
  * Api Type
20704
20758
  * @description The inference type (local or remote).
20705
- * @default remote
20759
+ * @default local
20706
20760
  * @enum {string}
20707
20761
  */
20708
20762
  API_TYPE: 'local' | 'remote';
@@ -21562,7 +21616,7 @@ interface components {
21562
21616
  /**
21563
21617
  * Model Name
21564
21618
  * @description The model for reviewing agent draft answers. Defaults to reasoning model.
21565
- * @default Wise
21619
+ * @default dummy
21566
21620
  */
21567
21621
  MODEL_NAME: string;
21568
21622
  /**
@@ -21647,6 +21701,54 @@ interface components {
21647
21701
  /** Title */
21648
21702
  title?: string | null;
21649
21703
  };
21704
+ /**
21705
+ * RoutingDecision
21706
+ * @description Inspectable routing choices, persisted with the completed response step.
21707
+ */
21708
+ RoutingDecision: {
21709
+ /**
21710
+ * Status
21711
+ * @enum {string}
21712
+ */
21713
+ status: 'applied' | 'fallback';
21714
+ /** Router Model */
21715
+ router_model: string;
21716
+ /** Selected Model */
21717
+ selected_model: string;
21718
+ /** Model Recommendation */
21719
+ model_recommendation?: string | null;
21720
+ /** Elapsed Seconds */
21721
+ elapsed_seconds: number;
21722
+ /** Input Tokens */
21723
+ input_tokens?: number | null;
21724
+ /** Output Tokens */
21725
+ output_tokens?: number | null;
21726
+ /** Cost Usd */
21727
+ cost_usd?: number | null;
21728
+ /** Retained Message Ext Ids */
21729
+ retained_message_ext_ids: string[];
21730
+ /** Recommended History Keep Count */
21731
+ recommended_history_keep_count?: number | null;
21732
+ /**
21733
+ * History Retained By Policy
21734
+ * @default false
21735
+ */
21736
+ history_retained_by_policy: boolean;
21737
+ /** Document Titles */
21738
+ document_titles: {
21739
+ [key: string]: string;
21740
+ };
21741
+ /** Selected Doc Ext Ids */
21742
+ selected_doc_ext_ids: string[];
21743
+ /** Selected Tool Names */
21744
+ selected_tool_names?: string[] | null;
21745
+ /** Always Available Tool Names */
21746
+ always_available_tool_names: string[];
21747
+ /** Recommended Tool Names */
21748
+ recommended_tool_names?: string[] | null;
21749
+ /** Fallback Reason */
21750
+ fallback_reason?: string | null;
21751
+ };
21650
21752
  /**
21651
21753
  * RunCodeConfig
21652
21754
  * @description spawn_coding_agent sandbox tuning (developer-only — image/network/limits are infra,
@@ -23215,7 +23317,7 @@ interface components {
23215
23317
  /**
23216
23318
  * Model Name
23217
23319
  * @description The model for conversation summarisation. Defaults to reasoning model.
23218
- * @default Wise
23320
+ * @default dummy
23219
23321
  */
23220
23322
  MODEL_NAME: string;
23221
23323
  /**
@@ -23916,7 +24018,7 @@ interface components {
23916
24018
  /**
23917
24019
  * Model Name
23918
24020
  * @description The name of the non-reasoning model to be used.
23919
- * @default Fast
24021
+ * @default dummy
23920
24022
  */
23921
24023
  MODEL_NAME: string;
23922
24024
  /**
@@ -24351,7 +24453,7 @@ interface components {
24351
24453
  /**
24352
24454
  * Model Name
24353
24455
  * @description The name of the non-reasoning model to be used.
24354
- * @default Fast
24456
+ * @default dummy
24355
24457
  */
24356
24458
  MODEL_NAME: string;
24357
24459
  /**
@@ -25325,7 +25427,7 @@ interface components {
25325
25427
  /**
25326
25428
  * Model Name
25327
25429
  * @description The vision-capable model name (must support image inputs).
25328
- * @default Fast
25430
+ * @default dummy
25329
25431
  */
25330
25432
  MODEL_NAME: string;
25331
25433
  /**
@@ -27518,6 +27620,162 @@ interface operations {
27518
27620
  };
27519
27621
  };
27520
27622
  };
27623
+ list_dashboards: {
27624
+ parameters: {
27625
+ query?: {
27626
+ limit?: number;
27627
+ };
27628
+ header?: never;
27629
+ path?: never;
27630
+ cookie?: never;
27631
+ };
27632
+ requestBody?: never;
27633
+ responses: {
27634
+ /** @description Successful Response */
27635
+ 200: {
27636
+ headers: {
27637
+ [name: string]: unknown;
27638
+ };
27639
+ content: {
27640
+ 'application/json': components['schemas']['DashboardResponse'][];
27641
+ };
27642
+ };
27643
+ /** @description Validation Error */
27644
+ 422: {
27645
+ headers: {
27646
+ [name: string]: unknown;
27647
+ };
27648
+ content: {
27649
+ 'application/json': components['schemas']['HTTPValidationError'];
27650
+ };
27651
+ };
27652
+ };
27653
+ };
27654
+ create_dashboard: {
27655
+ parameters: {
27656
+ query?: never;
27657
+ header?: never;
27658
+ path?: never;
27659
+ cookie?: never;
27660
+ };
27661
+ requestBody: {
27662
+ content: {
27663
+ 'application/json': components['schemas']['DashboardWrite'];
27664
+ };
27665
+ };
27666
+ responses: {
27667
+ /** @description Successful Response */
27668
+ 201: {
27669
+ headers: {
27670
+ [name: string]: unknown;
27671
+ };
27672
+ content: {
27673
+ 'application/json': components['schemas']['DashboardResponse'];
27674
+ };
27675
+ };
27676
+ /** @description Validation Error */
27677
+ 422: {
27678
+ headers: {
27679
+ [name: string]: unknown;
27680
+ };
27681
+ content: {
27682
+ 'application/json': components['schemas']['HTTPValidationError'];
27683
+ };
27684
+ };
27685
+ };
27686
+ };
27687
+ update_dashboard: {
27688
+ parameters: {
27689
+ query?: never;
27690
+ header?: never;
27691
+ path: {
27692
+ dashboard_ext_id: string;
27693
+ };
27694
+ cookie?: never;
27695
+ };
27696
+ requestBody: {
27697
+ content: {
27698
+ 'application/json': components['schemas']['DashboardWrite'];
27699
+ };
27700
+ };
27701
+ responses: {
27702
+ /** @description Successful Response */
27703
+ 200: {
27704
+ headers: {
27705
+ [name: string]: unknown;
27706
+ };
27707
+ content: {
27708
+ 'application/json': components['schemas']['DashboardResponse'];
27709
+ };
27710
+ };
27711
+ /** @description Not for an agent token */
27712
+ 403: {
27713
+ headers: {
27714
+ [name: string]: unknown;
27715
+ };
27716
+ content?: never;
27717
+ };
27718
+ /** @description Not one of the caller's dashboards (or deleted) */
27719
+ 404: {
27720
+ headers: {
27721
+ [name: string]: unknown;
27722
+ };
27723
+ content?: never;
27724
+ };
27725
+ /** @description Validation Error */
27726
+ 422: {
27727
+ headers: {
27728
+ [name: string]: unknown;
27729
+ };
27730
+ content: {
27731
+ 'application/json': components['schemas']['HTTPValidationError'];
27732
+ };
27733
+ };
27734
+ };
27735
+ };
27736
+ delete_dashboard: {
27737
+ parameters: {
27738
+ query?: never;
27739
+ header?: never;
27740
+ path: {
27741
+ dashboard_ext_id: string;
27742
+ };
27743
+ cookie?: never;
27744
+ };
27745
+ requestBody?: never;
27746
+ responses: {
27747
+ /** @description Successful Response */
27748
+ 204: {
27749
+ headers: {
27750
+ [name: string]: unknown;
27751
+ };
27752
+ content?: never;
27753
+ };
27754
+ /** @description Not for an agent token */
27755
+ 403: {
27756
+ headers: {
27757
+ [name: string]: unknown;
27758
+ };
27759
+ content?: never;
27760
+ };
27761
+ /** @description Not one of the caller's dashboards (or deleted) */
27762
+ 404: {
27763
+ headers: {
27764
+ [name: string]: unknown;
27765
+ };
27766
+ content?: never;
27767
+ };
27768
+ /** @description Validation Error */
27769
+ 422: {
27770
+ headers: {
27771
+ [name: string]: unknown;
27772
+ };
27773
+ content: {
27774
+ 'application/json': components['schemas']['HTTPValidationError'];
27775
+ };
27776
+ };
27777
+ };
27778
+ };
27521
27779
  get_user_settings: {
27522
27780
  parameters: {
27523
27781
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbidocs/client",
3
- "version": "0.5.110",
3
+ "version": "0.5.111",
4
4
  "description": "TypeScript SDK for the ARBI API — zero-knowledge auth, E2E encryption, and type-safe REST client",
5
5
  "type": "module",
6
6
  "sideEffects": false,