janito 2.17.1__py3-none-any.whl → 2.18.0__py3-none-any.whl

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.
@@ -296,21 +296,39 @@ class ChatSession:
296
296
  else "Unknown"
297
297
  )
298
298
 
299
- # Get backend hostname if available
300
299
  backend_hostname = "Unknown"
301
- if hasattr(self.agent, "driver") and self.agent.driver:
302
- if hasattr(self.agent.driver, "config") and hasattr(
303
- self.agent.driver.config, "base_url"
304
- ):
305
- base_url = self.agent.driver.config.base_url
306
- if base_url:
307
- try:
308
- from urllib.parse import urlparse
309
-
310
- parsed = urlparse(base_url)
311
- backend_hostname = parsed.netloc
312
- except Exception:
313
- backend_hostname = base_url
300
+ candidates = []
301
+ drv = getattr(self.agent, "driver", None)
302
+ if drv is not None:
303
+ cfg = getattr(drv, "config", None)
304
+ if cfg is not None:
305
+ b = getattr(cfg, "base_url", None)
306
+ if b:
307
+ candidates.append(b)
308
+ direct_base = getattr(drv, "base_url", None)
309
+ if direct_base:
310
+ candidates.append(direct_base)
311
+ cfg2 = getattr(self.agent, "config", None)
312
+ if cfg2 is not None:
313
+ b2 = getattr(cfg2, "base_url", None)
314
+ if b2:
315
+ candidates.append(b2)
316
+ top_base = getattr(self.agent, "base_url", None)
317
+ if top_base:
318
+ candidates.append(top_base)
319
+ from urllib.parse import urlparse
320
+ for candidate in candidates:
321
+ try:
322
+ if not candidate:
323
+ continue
324
+ parsed = urlparse(str(candidate))
325
+ host = parsed.netloc or parsed.path
326
+ if host:
327
+ backend_hostname = host
328
+ break
329
+ except Exception:
330
+ backend_hostname = str(candidate)
331
+ break
314
332
 
315
333
  self.console.print(
316
334
  Rule(
@@ -111,6 +111,39 @@ MODEL_SPECS = {
111
111
  open="openai",
112
112
  driver="OpenAIModelDriver",
113
113
  ),
114
+ "gpt-5": LLMModelInfo(
115
+ name="gpt-5",
116
+ context=200000,
117
+ max_input=100000,
118
+ max_cot="N/A",
119
+ max_response=100000,
120
+ thinking_supported=True,
121
+ default_temp=1.0,
122
+ open="openai",
123
+ driver="OpenAIModelDriver",
124
+ ),
125
+ "gpt-5-mini": LLMModelInfo(
126
+ name="gpt-5-mini",
127
+ context=200000,
128
+ max_input=100000,
129
+ max_cot="N/A",
130
+ max_response=100000,
131
+ thinking_supported=True,
132
+ default_temp=1.0,
133
+ open="openai",
134
+ driver="OpenAIModelDriver",
135
+ ),
136
+ "gpt-5-nano": LLMModelInfo(
137
+ name="gpt-5-nano",
138
+ context=200000,
139
+ max_input=100000,
140
+ max_cot="N/A",
141
+ max_response=100000,
142
+ thinking_supported=True,
143
+ default_temp=1.0,
144
+ open="openai",
145
+ driver="OpenAIModelDriver",
146
+ ),
114
147
  # duplicated gpt-4-turbo with minimal properties for distinction
115
148
  "gpt-4-turbo-alt": LLMModelInfo(
116
149
  name="gpt-4-turbo",
@@ -17,7 +17,7 @@ class OpenAIProvider(LLMProvider):
17
17
  NAME = "openai"
18
18
  MAINTAINER = "João Pinto <janito@ikignosis.org>"
19
19
  MODEL_SPECS = MODEL_SPECS
20
- DEFAULT_MODEL = "gpt-4.1" # Options: gpt-4.1, gpt-4o, o3-mini, o4-mini,
20
+ DEFAULT_MODEL = "gpt-5" # Options: gpt-4.1, gpt-4o, o3-mini, o4-mini, gpt-5, gpt-5-nano
21
21
 
22
22
  def __init__(
23
23
  self, auth_manager: LLMAuthManager = None, config: LLMDriverConfig = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: janito
3
- Version: 2.17.1
3
+ Version: 2.18.0
4
4
  Summary: A new Python package called janito.
5
5
  Author-email: João Pinto <janito@ikignosis.org>
6
6
  Project-URL: Homepage, https://github.com/ikignosis/janito
@@ -39,7 +39,7 @@ janito/cli/chat_mode/bindings.py,sha256=odjc5_-YW1t2FRhBUNRNoBMoQIg5sMz3ktV7xG0A
39
39
  janito/cli/chat_mode/chat_entry.py,sha256=RFdPd23jsA2DMHRacpjAdwI_1dFBaWrtnwyQEgb2fHA,475
40
40
  janito/cli/chat_mode/prompt_style.py,sha256=vsqQ9xxmrYjj1pWuVe9CayQf39fo2EIXrkKPkflSVn4,805
41
41
  janito/cli/chat_mode/script_runner.py,sha256=wOwEn4bgmjqHqjTqtfyaSOnRPsGf4ZVW-YAWhEeqxXU,6507
42
- janito/cli/chat_mode/session.py,sha256=Dlb64LUeER8QEsWGYX0D664tcQjEn8Nx855dmk7vj4M,14903
42
+ janito/cli/chat_mode/session.py,sha256=gY87m6PlC_fNfSTdaJ5T-iq2i3Xc6JRb6rz9NraIUc4,15572
43
43
  janito/cli/chat_mode/session_profile_select.py,sha256=CJ2g3VbPGWfBNrNkYYX57oIJZJ-hIZBNGB-zcdjC9vk,5379
44
44
  janito/cli/chat_mode/toolbar.py,sha256=bJ9jPaTInp2gB3yjSVJp8mpNEFiOslzNhVaiqpXJhKc,3025
45
45
  janito/cli/chat_mode/shell/autocomplete.py,sha256=lE68MaVaodbA2VfUM0_YLqQVLBJAE_BJsd5cMtwuD-g,793
@@ -145,8 +145,8 @@ janito/providers/moonshotai/__init__.py,sha256=nThTAtynq4O2Iidm95daKOCKXi5APRJYt
145
145
  janito/providers/moonshotai/model_info.py,sha256=MpPAB3tZVvZ8V7tZsiJpk5SReHjVcnwwbp63aUebx9Y,718
146
146
  janito/providers/moonshotai/provider.py,sha256=Lynw2cAF0IA9QPIRN4oY6Yr0cEwyVggpaQQrmkcgHuE,3874
147
147
  janito/providers/openai/__init__.py,sha256=f0m16-sIqScjL9Mp4A0CQBZx6H3PTEy0cnE08jeaB5U,38
148
- janito/providers/openai/model_info.py,sha256=cz08O26Ychm-aP3T8guJRqpR96Im9Cwtgl2iMgM7tJs,3384
149
- janito/providers/openai/provider.py,sha256=nEYTj-NF9BLc-uQ25QpxaFBLVtJ0GEGFgc22SlTTLJA,4727
148
+ janito/providers/openai/model_info.py,sha256=VTkq3xcx2vk0tXlFVHQxKeFzl-DL1T1J2elVOEwCdHI,4265
149
+ janito/providers/openai/provider.py,sha256=UyG__9yen6MAcCS3SbKzKIj1UIauidYhDBOKn-cptn0,4743
150
150
  janito/providers/openai/schema_generator.py,sha256=hTqeLcPTR8jeKn5DUUpo7b-EZ-V-g1WwXiX7MbHnFzE,2234
151
151
  janito/providers/zai/__init__.py,sha256=qtIr9_QBFaXG8xB6cRDGhS7se6ir11CWseI9azLMRBo,24
152
152
  janito/providers/zai/model_info.py,sha256=ldwD8enpxXv1G-YsDw4YJn31YsVueQ4vj5HgoYvnPxo,1183
@@ -217,9 +217,9 @@ janito/tools/adapters/local/validate_file_syntax/ps1_validator.py,sha256=TeIkPt0
217
217
  janito/tools/adapters/local/validate_file_syntax/python_validator.py,sha256=BfCO_K18qy92m-2ZVvHsbEU5e11OPo1pO9Vz4G4616E,130
218
218
  janito/tools/adapters/local/validate_file_syntax/xml_validator.py,sha256=AijlsP_PgNuC8ZbGsC5vOTt3Jur76otQzkd_7qR0QFY,284
219
219
  janito/tools/adapters/local/validate_file_syntax/yaml_validator.py,sha256=TgyI0HRL6ug_gBcWEm5TGJJuA4E34ZXcIzMpAbv3oJs,155
220
- janito-2.17.1.dist-info/licenses/LICENSE,sha256=GSAKapQH5ZIGWlpQTA7v5YrfECyaxaohUb1vJX-qepw,1090
221
- janito-2.17.1.dist-info/METADATA,sha256=-5Gl5IbWdd_Fi-ecNEpqQgWNe5O_e_ZuKPKeZimz-zg,16365
222
- janito-2.17.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
223
- janito-2.17.1.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
224
- janito-2.17.1.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
225
- janito-2.17.1.dist-info/RECORD,,
220
+ janito-2.18.0.dist-info/licenses/LICENSE,sha256=GSAKapQH5ZIGWlpQTA7v5YrfECyaxaohUb1vJX-qepw,1090
221
+ janito-2.18.0.dist-info/METADATA,sha256=bRfqlaQ-v39RPyYETpzpTi2jSQrd8p4mn4oTjlIwGss,16365
222
+ janito-2.18.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
223
+ janito-2.18.0.dist-info/entry_points.txt,sha256=wIo5zZxbmu4fC-ZMrsKD0T0vq7IqkOOLYhrqRGypkx4,48
224
+ janito-2.18.0.dist-info/top_level.txt,sha256=m0NaVCq0-ivxbazE2-ND0EA9Hmuijj_OGkmCbnBcCig,7
225
+ janito-2.18.0.dist-info/RECORD,,