agentshim 0.18.0__tar.gz → 0.18.2__tar.gz
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.
- {agentshim-0.18.0 → agentshim-0.18.2}/CHANGELOG.md +18 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/PKG-INFO +1 -1
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/__init__.py +1 -1
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/models.py +29 -3
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/provider.py +1 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/pyproject.toml +1 -1
- {agentshim-0.18.0 → agentshim-0.18.2}/.gitignore +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/LICENSE +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/README.md +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/agent.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/_files.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/auth.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/checkpoints.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/clock.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/conversation.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/env.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/errors.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/home.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/ids.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/mcp.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/permissions.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/pricing.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/profile.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/provider.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/schema.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/session_policy.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/skills.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/status.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/stream.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/turn.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/core/usage.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/confinement.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/docker.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/executor.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/host.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/process.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/execution/transform.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/oneshot.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/failures.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/hooks/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/hooks/confine_reads.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/parser.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/provider.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/rate_limits.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/sandbox.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/scripted.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/stream_argv.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/stream_transport.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/claude/user_hooks.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/_toml.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/_wire.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/approvals.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/channel.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/errors.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/items.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/mcp.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/permissions.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/profile.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/protocol.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/rate_limits.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/transport.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/app_server/usage.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/failures.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/mcp_scope.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/parser.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/rules.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/sandbox.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/scripted.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/codex/skills.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/parser.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/provider.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/copilot/scripted.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/parser.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/provider.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/gemini/scripted.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/events.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/parser.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/provider.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/providers/opencode/scripted.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/py.typed +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/runtime.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/session.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/__init__.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/claude_stream.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/clock.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/codex_app_server.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/confinement.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/contracts.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/conversation.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/probe.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/agentshim/testing/process.py +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/tests/fixtures/claude_stream/README.md +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/tests/fixtures/codex/README.md +0 -0
- {agentshim-0.18.0 → agentshim-0.18.2}/tests/fixtures/codex_app_server/README.md +0 -0
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.18.2 (2026-10-16)
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Codex's `ProviderProfile.models` lists `gpt-6.1-sol`, which codex-cli 0.160.0's own
|
|
8
|
+
model list (`codex debug models`) offers beside `gpt-6-astra`, `gpt-6-sol` and
|
|
9
|
+
`gpt-6-luna`. Its context window was already in the table. The default (the first
|
|
10
|
+
entry, `gpt-5.6-sol`) is unchanged.
|
|
11
|
+
|
|
12
|
+
## 0.18.1 (2026-10-16)
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- `context_window` knows Google's models named `google/` or `google-vertex/`:
|
|
17
|
+
`gemini-3-pro-preview` is 1,048,576 tokens (opencode's default model).
|
|
18
|
+
Before, it returned `None` for every model opencode lists. A new test holds that every
|
|
19
|
+
model in any provider's `ProviderProfile.models` has a known window.
|
|
20
|
+
|
|
3
21
|
## 0.18.0 (2026-10-16)
|
|
4
22
|
|
|
5
23
|
### Added
|
|
@@ -32,7 +32,18 @@ if TYPE_CHECKING:
|
|
|
32
32
|
|
|
33
33
|
_DATE_SUFFIX = re.compile(r"-\d{8}$")
|
|
34
34
|
|
|
35
|
+
#: Vendor whose models each provider name, or ``vendor/`` prefix, runs: every
|
|
36
|
+
#: one pricing knows, plus the prefixes opencode names Google's models with
|
|
37
|
+
#: (``google/``, ``google-vertex/``). Google is not priced, so pricing's map
|
|
38
|
+
#: lacks them.
|
|
39
|
+
MODEL_VENDORS: dict[str, str] = {
|
|
40
|
+
**PROVIDER_VENDORS,
|
|
41
|
+
"google": "google",
|
|
42
|
+
"google-vertex": "google",
|
|
43
|
+
}
|
|
44
|
+
|
|
35
45
|
OPENAI_MODELS_URL = "https://developers.openai.com/api/docs/models"
|
|
46
|
+
GOOGLE_MODELS_URL = "https://ai.google.dev/gemini-api/docs/models"
|
|
36
47
|
ANTHROPIC_CONTEXT_WINDOWS_URL = (
|
|
37
48
|
"https://platform.claude.com/docs/en/build-with-claude/context-windows"
|
|
38
49
|
)
|
|
@@ -165,10 +176,10 @@ def model_spec(
|
|
|
165
176
|
name = model.strip().lower()
|
|
166
177
|
if "[" in name:
|
|
167
178
|
return None
|
|
168
|
-
vendor =
|
|
179
|
+
vendor = MODEL_VENDORS.get(provider.strip().lower())
|
|
169
180
|
if "/" in name:
|
|
170
181
|
prefix, _, rest = name.partition("/")
|
|
171
|
-
vendor =
|
|
182
|
+
vendor = MODEL_VENDORS.get(prefix)
|
|
172
183
|
name = rest
|
|
173
184
|
if vendor is None or not name:
|
|
174
185
|
return None
|
|
@@ -212,13 +223,26 @@ def _anthropic(model: str, context_window: int) -> ModelSpec:
|
|
|
212
223
|
)
|
|
213
224
|
|
|
214
225
|
|
|
226
|
+
def _google(model: str, context_window: int) -> ModelSpec:
|
|
227
|
+
# Each model's page under GOOGLE_MODELS_URL ("Input token limit"), which
|
|
228
|
+
# is the window Google publishes for the model.
|
|
229
|
+
return ModelSpec(
|
|
230
|
+
vendor="google",
|
|
231
|
+
model=model,
|
|
232
|
+
context_window=context_window,
|
|
233
|
+
source=f"{GOOGLE_MODELS_URL}/{model}",
|
|
234
|
+
checked=_CHECKED,
|
|
235
|
+
)
|
|
236
|
+
|
|
237
|
+
|
|
215
238
|
_ONE_MILLION = 1_000_000
|
|
239
|
+
_GOOGLE_1M = 1_048_576
|
|
216
240
|
_OPENAI_1_05M = 1_050_000
|
|
217
241
|
|
|
218
242
|
#: The table agentshim ships. Update it as described in ``docs/models.md``.
|
|
219
243
|
#: A model whose window could not be read from its vendor's page is left out.
|
|
220
244
|
DEFAULT_MODELS = ModelTable(
|
|
221
|
-
version="2026-10-16",
|
|
245
|
+
version="2026-10-16.1",
|
|
222
246
|
last_updated=_CHECKED,
|
|
223
247
|
entries=(
|
|
224
248
|
# OpenAI (Codex): each model page reads "1,050,000 context window".
|
|
@@ -243,5 +267,7 @@ DEFAULT_MODELS = ModelTable(
|
|
|
243
267
|
_anthropic("claude-sonnet-4-6", _ONE_MILLION),
|
|
244
268
|
_anthropic("claude-haiku-5-5", _ONE_MILLION),
|
|
245
269
|
_anthropic("claude-haiku-4-5", 200_000),
|
|
270
|
+
# Google (opencode): the page reads "Input token limit 1,048,576".
|
|
271
|
+
_google("gemini-3-pro-preview", _GOOGLE_1M),
|
|
246
272
|
),
|
|
247
273
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|