KohakuTerrarium 2.0.0.dev7__tar.gz → 2.0.0.dev9__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.
- {kohakuterrarium-2.0.0.dev7/src/KohakuTerrarium.egg-info → kohakuterrarium-2.0.0.dev9}/PKG-INFO +3 -2
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/pyproject.toml +23 -5
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9/src/KohakuTerrarium.egg-info}/PKG-INFO +3 -2
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/SOURCES.txt +33 -12
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/requires.txt +2 -1
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/api/routes/identity/codex.py +147 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-adaptive-108.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-adaptive-162.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-adaptive-216.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-adaptive-324.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-adaptive-432.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-round-144.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-round-192.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-round-48.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-round-72.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-round-96.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-1280.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-144.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-192.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-320.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-48.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-480.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-640.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-72.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-96.png +0 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/app_icons/app-square-960.png +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_auth.py +36 -3
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/packages/git_backend.py +150 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/install.py +20 -26
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/packages.py +27 -3
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/codex_oauth.py +9 -3
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/_id_-uBFoVSR-.js → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/_id_-BwN6vCT_.js +1 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/_key_-DNOvxKYU.js → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/_key_-mOfYdFA8.js +1 -1
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/api-CdBGIjO8.js +1 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/axios-Cx6az8TG.js +1 -0
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/element-plus-Bl9PS9H7.css → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/element-plus-BmQ7cnZ3.css +1 -1
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/index-CAxTq8GR.js +700 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/index-CuB7PtQi.css +1 -0
- kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/instances-B2ySdeCd.js +1 -0
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/pages-tbxF8vvv.js → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/pages-B_cEdNdl.js +1 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/panel-debug-CdERMccn.js → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/panel-debug-BT1go744.js +1 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/vue-vendor-GLcKlkIp.js → kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/vue-vendor-DroPwbFZ.js +1 -1
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/index.html +5 -5
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/api/routes/identity/codex.py +0 -61
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/api-6WpGvpdH.js +0 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/axios-DkY6n9a-.js +0 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/index-CPPu7zHj.css +0 -1
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/index-CrlVAR7v.js +0 -699
- kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/instances-BQRxJfAx.js +0 -1
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/LICENSE +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/README.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/setup.cfg +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/dependency_links.txt +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/entry_points.txt +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/top_level.txt +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/__briefcase__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/__main__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/_io_executor.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/app.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/config_write.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/crypto.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/db.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/dependencies.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/engine_pool.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/invitations.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/middleware.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/migrations/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/models.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/namespace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/routes.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/sessions.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/tokens.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/users.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/auth/ws_auth.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/deps.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/main.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/app_update.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/attach/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/attach/files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/attach/policies.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/_deps.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/builtins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/commands.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/creatures.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/creatures_scan.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/extensions.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/manifest.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/models.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/modules.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/packages.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/registry.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/schema.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/server_info.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/skills.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/templates.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/terrariums_scan.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/validate.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/catalog/workspace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/health.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/api_keys.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/config_files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/llm.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/mcp.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/node_routing.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/identity/ui_prefs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/lab_clients.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/lab_status.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/metrics.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/nodes.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/_executor.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/artifacts.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/fork.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/history.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/memory_index.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/resume.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/saved.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/persistence/viewer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/runtime_graph.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/_helpers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/active.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_chat.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_command.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_ctl.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_modules.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_plugins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/creatures_state.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/memory.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/topology.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/routes/sessions_v2/wiring.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/schemas.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/app.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/deps.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/routes/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/routes/meta.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/routes/packages.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/utils/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/studio/utils/paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/daemon_logs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/io.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/logs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/memory_build.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/observer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/pty.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/runtime_graph.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/api/ws/trace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/app_icons/app.ico +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/app_icons/app.png +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/app_icons/window.ico +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/app_icons/window.png +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/agent_init.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/io.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/llm.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/plugins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/subagents.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/bootstrap/triggers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/README.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/coordinator.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/critic.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/explore.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/memory_read.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/memory_write.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/plan.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/research.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/response.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/summarize.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/subagents/worker.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/ask_user.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/bash.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/edit.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/glob.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/grep.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/image_gen.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/info.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/json_read.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/json_write.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/mcp_call.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/mcp_connect.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/mcp_disconnect.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/mcp_list.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/multi_edit.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/notebook_edit.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/notebook_read.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/python.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/read.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/scratchpad.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/search_memory.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/send_message.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/show_card.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/skill.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/stop_task.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/tree.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/web_fetch.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/web_search.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtin_skills/tools/write.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/app.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/app_multi.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/app_output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/diff.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/footer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/message.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/tool.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/blocks/tool_renderers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/commit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/completer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/composer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/creature_status.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/agent_overlay.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/bus_overlay.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/model_picker.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/module_picker.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/module_picker_model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/module_picker_render.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/peek_panel.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/settings_model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/dialogs/settings_render.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/focus.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/hint_bar.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/input.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/live_region.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/live_state.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/multiplex.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/paste_store.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/roster.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/runtime.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/cli_rich/theme.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/inputs/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/inputs/cli.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/inputs/none.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/outputs/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/outputs/stdout.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/outputs/tts.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugin_catalog.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/budget/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/budget/plugin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/compact/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/compact/auto.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/permgate/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/permgate/plugin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/sandbox/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/plugins/sandbox/plugin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagent_catalog.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/README.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/_base_prompt.md +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/_prompt_loader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/coordinator.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/critic.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/explore.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/memory_read.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/memory_write.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/plan.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/research.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/response.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/summarize.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/subagents/worker.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tool_catalog.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/ask_user.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/bash.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/bash_windows.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/edit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/glob.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/grep.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/image_gen.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/info.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/json_read.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/json_write.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/multi_edit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/notebook_edit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/notebook_read.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/notebook_utils.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/read.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/registry.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/scratchpad_tool.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/search_memory.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/send_message.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/show_card.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/skill.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/stop_task.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/subprocess/shell_utils.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/tree.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/web_fetch.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/web_search.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tools/write.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/app.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/input.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/session.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/blocks.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/bus_blocks.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/helpers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/input.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/messages.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/modals.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/model_picker_modal.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/modules_modal.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/panels.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/tui/widgets/ui_event_modals.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/branch.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/channels.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/clear.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/compact.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/edit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/env.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/exit.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/fork.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/help.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/jobs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/module.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/plugin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/regen.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/registry.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/scratchpad.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/skill.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/spawn.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/start.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/status.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/stop.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/system_prompt.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/tool_options.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/triggers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/builtins/user_commands/workspace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/__main__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/_aio_entrypoint.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/_aliases.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/_config_layers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/admin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/admin_qr.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/auth.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/config_prompts.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/extension.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_backend.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_codex.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_keys.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_llm.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_mcp.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/identity_settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/lab_client.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/memory.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/packages.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/resume.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/run.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/self_update.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/serve.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/service.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/cli/version.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/commands/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/commands/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/commands/read.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/compose/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/compose/agent.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/compose/core.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/compose/effects.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_budget_recovery.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_compact.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_handlers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_helpers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_lifecycle.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_mcp.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_messages.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_native_tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_observability.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_plugin_options.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_pre_dispatch.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_runtime_tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_tools_metrics.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/agent_workspace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/backgroundify.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/budget.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/channel.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/compact.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/compact_text.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/config_merge.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/config_serde.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/config_types.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/constants.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/controller.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/controller_metrics.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/controller_plugins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/conversation.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/environment.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/executor.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/job.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/loader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/metrics_hook.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/native_tool_validation.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/output_wiring.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/registry.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/scratchpad.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/session.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/single_flight.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/termination.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/tool_output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/core/trigger_manager.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/addressing.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/app.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/auth.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/backpressure.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/client.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/control.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/envelope.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/host.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/membership.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/protocol.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/streams.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/transport_base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/transport_inproc.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/_internal/transport_ws.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/_worker_session.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/file_scopes.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/studio_catalog.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/studio_deploy.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/studio_identity.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_attach.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_broadcast.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_output_wire.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_pty.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_runtime.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/adapters/terrarium_session.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/file_transfer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/identity_cache.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/protocols.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/streams.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/verbs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/laboratory/ws_proxy.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/__main__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/_lock.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/android.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/bootloader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/downloader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/feeds.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/log.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/migration.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/splash_server.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/splash_window.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/tree_ops.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/launcher/update_runner.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/anthropic_cache.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/anthropic_format.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/anthropic_provider.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/api_keys.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/backends.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_format.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_image_gen.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_provider.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_rate_limits.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/deferred_provider.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/litellm_provider.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/message.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/openai.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/openai_helpers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/openai_sanitize.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/preset_aliases.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/preset_store.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/presets.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/profile_types.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/profiles.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/recovery.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/tool_schemas.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/variations.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/mcp/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/mcp/client.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/mcp/tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/input/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/input/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/event.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/router.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/router_interactive.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/router_multi.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/router_parsing.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/output/router_state.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/plugin/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/plugin/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/plugin/manager.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/plugin/option_validation.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/parse.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/presets.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/profile.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/sandbox/violations.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/interactive.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/interactive_mgr.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/manager.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/result.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/subagent/runtime_builders.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/tool/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/tool/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/callable.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/channel.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/context.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/scheduler.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/timer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/trigger/universal.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/user_command/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/modules/user_command/base.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/locations.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/manifest.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/resolve.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/slots.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packages/walk.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packaging/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packaging/systemd/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packaging/systemd/kohakuterrarium-all.service.template +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packaging/systemd/kohakuterrarium-client@.service.template +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/packaging/systemd/kohakuterrarium-host.service.template +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/parsing/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/parsing/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/parsing/format.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/parsing/patterns.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/parsing/state_machine.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/plugins_context.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/aggregator.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/framework_hints.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/loader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/plugins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/skill_loader.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/template.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/prompt/tool_contributions.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/serving/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/serving/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/serving/process_metrics.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/serving/web.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/agent_attach.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/artifacts.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/attach.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/attachment_service.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/embedding.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/errors.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/history.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/memory.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/migrations/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/migrations/v1_to_v2.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/resume.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/rollup.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/session.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/store.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/store_counters.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/store_fork.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/store_protocol.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/sync.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/token_views.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/session/version.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skill_docs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/command.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/discovery.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/hints.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/index.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/registry.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/skills/user_slash.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/_runtime.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/_event_stream.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/io.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/io_cluster.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/log.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/observer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/policies.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/pty_posix.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/pty_router.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/pty_windows.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/trace.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/workspace_files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/attach/workspace_watch.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/builtins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/catalog_sources.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/creatures.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/introspect.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/modules.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/packages_aggregate.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/packages_remote.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/packages_scan.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/catalog/spawnable.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/deploy.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_common.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_init.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_io.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_pending.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_plugin.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_subagent.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_tool.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/codegen_trigger.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/creatures_crud.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/modules_crud.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/plugin_hooks.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/skills_state.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/creature_config.yaml.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/input.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/output.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/plugin.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/subagent.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/system_prompt.md.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/tool.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/templates_data/trigger.py.j2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/utils_paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/validators.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/workspace_fs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/workspace_manifest.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/yaml_creature.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/editors/yaml_manifest.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/files.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/api_keys.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/llm_backends.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/llm_default.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/llm_native_tools.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/llm_profiles.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/mcp_servers.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/mcp_usage.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/settings.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/identity/ui_prefs.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/nodes.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/artifacts.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/fork.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/history.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/resume.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/store.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/diff.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/export.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/rollups.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/summary.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/tree.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/persistence/viewer/turns.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/cluster_fold.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/cluster_paths.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_chat.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_command.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_ctl.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_model.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_modules.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_plugins.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/creature_state.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/find.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/handles.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/lifecycle.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/memory_build.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/memory_search.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/remote_meta.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/stop.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/topology.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/sessions/wiring.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/studio/studio.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/channel_lifecycle.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/channels.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/cli_output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/config.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/creature.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/creature_host.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/creature_ops.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/engine.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/engine_cli.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/engine_rich_cli.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/group_hooks.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/group_tool_context.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/multi_node_channels.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/multi_node_cluster.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/multi_node_replication.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/multi_node_routing.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/multi_node_service.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/observer.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/output_log.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/output_wiring.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/recipe.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/remote_service.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/resume.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/root.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/runtime_prompt.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/service.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/session_coord.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_channel.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_common.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_lifecycle.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_send.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_status.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/tools_group_wire.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/topology.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/topology_snapshot.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/wire.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/terrarium/wiring.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/agent.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/events.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/fake_llm_provider.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/llm.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/output.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/subprocess_seam.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/testing/terrarium.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/__init__.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/async_utils.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/config_dir.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/file_guard.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/file_walk.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/logging.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/utils/mobile_sandbox.py +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/abap-DNgBPGRI.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/apex-B4r7dYl2.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/azcli-BKm6S2Cw.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/bat-BSxnouuk.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/bicep-B_GZ-wpx.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/cameligo-CXBRVnLk.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/clojure-cnfZdiGc.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/codicon-ngg6Pgfi.ttf +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/coffee-Cl1ACx-O.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/cpp-DnANvcr4.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/csharp-j4Zsiuzn.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/csp-CJnfk5It.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/css-CX2KWW-Q.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/css.worker-CpJJqcA4.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/cssMode-CtfXwgnY.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/cypher-D4V0lKaT.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/dart-CLzO6BZf.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/dockerfile-Bt15Hhqr.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/ecl-DLgnzhBc.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/editor.main-D4M8mfOA.js +0 -0
- /kohakuterrarium-2.0.0.dev7/src/kohakuterrarium/web_dist/assets/element-plus-Dy9KxKFU.js → /kohakuterrarium-2.0.0.dev9/src/kohakuterrarium/web_dist/assets/element-plus-DadrrCeP.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/elixir-Dc0k6n94.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/flow9-Cmb0SGvr.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/freemarker2-Dz8yjL95.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/fsharp-DUjP-BKm.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/go-DSFt5f-B.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/graphql-BGj0n4rN.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/handlebars-B9-G7gwA.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/hcl-CN-Ztzb4.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/highlight-BEOF7mkP.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/highlight-C8LL_u4z.css +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/html-DVGxM4pJ.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/html.worker-wsVgX3gp.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/htmlMode-C5KOTPV1.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/ini-BeMa714h.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/java-Dq86Qznf.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/javascript-BOm_W1Jn.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/json.worker-CcNiYOcv.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/jsonMode-CwOj3Xo4.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/julia-Bc53DpKu.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/kotlin-CQRm1pZj.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/less-BfrtPnli.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/lexon-D2S1YkuX.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/liquid-kAsMw2d0.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/lua-DQEY0YnT.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/m3-BuflAguW.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/markdown-BK2Bx0Uc.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/mdx-GqCrln-N.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/mips-1qOAKy2g.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/monaco-editor-BZeDFz3E.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/monaco-editor-Br_kD0ds.css +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/msdax-_4dmgZQ-.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/mysql-P77yJQsH.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/objective-c-ClnQjoXg.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/pascal-Bc7vQ0ww.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/pascaligo-CU0Jj3mr.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/perl-DUQq7oYb.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/pgsql-DiaHC3-b.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/php-BlWW-s9t.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/pla-C3G0xNH_.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/postiats-DuDQ2g7d.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/powerquery-A0ZakVXM.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/powershell-CR6g6RNz.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/protobuf-VgxhPgSb.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/pug-C_DyW9aF.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/python-NFGiUyiK.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/qsharp-DoW7kwI_.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/r-Cm84JybY.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/razor-DF_wJ9vT.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/redis-DrL-NF5O.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/redshift-BFyI3dDM.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/restructuredtext-BAnVJkrD.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/rolldown-runtime-Ckerh37x.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/ruby-BYkT7NSf.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/rust-fRZUAapC.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/sb-BEQIq6mo.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/scala-CtA-Dpyr.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/scheme-CUVe3YvV.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/scss-5W3dNF3Y.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/shell-DBgxJgVK.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/solidity-Dye8lGhL.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/sophia-DmcDOq41.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/sparql-Cv3vTK64.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/sql-D06NJRlu.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/st-Ca1c9xyP.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/swift-_jxqZxpE.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/systemverilog-B6m9LHIf.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/tcl-iZQEJ5k-.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/ts.worker-DfMAw22J.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/tsMode-ByqsHXMY.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/twig-tgVGZ8a3.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/typescript-fw_MGe8q.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/typespec-C5xfuswf.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/vb-BMkNQk3p.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/wgsl-Borzlq4p.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/xml-zEmrWqLn.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/assets/yaml-Bnn6I1fK.js +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/favicon.ico +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/favicon.png +0 -0
- {kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/web_dist/kohaku-icon.png +0 -0
{kohakuterrarium-2.0.0.dev7/src/KohakuTerrarium.egg-info → kohakuterrarium-2.0.0.dev9}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: KohakuTerrarium
|
|
3
|
-
Version: 2.0.0.
|
|
3
|
+
Version: 2.0.0.dev9
|
|
4
4
|
Summary: A universal agent framework for building self-driven AI agents and multi-agent teams
|
|
5
5
|
Author-email: "Shih-Ying Yeh (KohakuBlueLeaf)" <apolloyeh0123@gmail.com>
|
|
6
6
|
License-Expression: LicenseRef-KohakuTerrarium-1.0
|
|
@@ -37,6 +37,7 @@ Requires-Dist: kohakuvault>=0.8.6
|
|
|
37
37
|
Requires-Dist: textual>=8.0.0
|
|
38
38
|
Requires-Dist: html2text>=2025.0.0
|
|
39
39
|
Requires-Dist: gitpython>=3.1.0
|
|
40
|
+
Requires-Dist: dulwich>=0.22
|
|
40
41
|
Requires-Dist: fastapi>=0.115.0
|
|
41
42
|
Requires-Dist: uvicorn[standard]>=0.34.0
|
|
42
43
|
Requires-Dist: websockets>=10.4
|
|
@@ -52,7 +53,7 @@ Requires-Dist: jiter<1,>=0.10.0
|
|
|
52
53
|
Requires-Dist: primp>=1.3.0
|
|
53
54
|
Requires-Dist: model2vec>=0.8.0
|
|
54
55
|
Requires-Dist: safetensors>=0.7.0
|
|
55
|
-
Requires-Dist: tokenizers
|
|
56
|
+
Requires-Dist: tokenizers<0.24,>=0.20
|
|
56
57
|
Requires-Dist: pywinpty>=2.0.0; sys_platform == "win32"
|
|
57
58
|
Provides-Extra: host
|
|
58
59
|
Provides-Extra: client
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "KohakuTerrarium"
|
|
7
|
-
version = "2.0.0.
|
|
7
|
+
version = "2.0.0.dev9"
|
|
8
8
|
description = "A universal agent framework for building self-driven AI agents and multi-agent teams"
|
|
9
9
|
authors = [
|
|
10
10
|
{ name = "Shih-Ying Yeh (KohakuBlueLeaf)", email = "apolloyeh0123@gmail.com" },
|
|
@@ -92,6 +92,15 @@ dependencies = [
|
|
|
92
92
|
"textual>=8.0.0",
|
|
93
93
|
"html2text>=2025.0.0",
|
|
94
94
|
"gitpython>=3.1.0",
|
|
95
|
+
# dulwich: pure-Python git impl used as the Android fallback for
|
|
96
|
+
# ``kt install <url>`` when no system ``git`` binary is on PATH.
|
|
97
|
+
# On Chaquopy Android there's no shellable ``git``; dulwich's
|
|
98
|
+
# ``py3-none-any`` wheel installs cleanly and the
|
|
99
|
+
# ``packages/git_backend.py`` shim auto-selects it when
|
|
100
|
+
# ``shutil.which('git')`` returns None. Slightly slower than
|
|
101
|
+
# native git for big repos but fine for creature / terrarium /
|
|
102
|
+
# plugin package sizes.
|
|
103
|
+
"dulwich>=0.22",
|
|
95
104
|
# API server
|
|
96
105
|
"fastapi>=0.115.0",
|
|
97
106
|
# ``[standard]`` pulls in uvloop + httptools + watchfiles for
|
|
@@ -147,10 +156,19 @@ dependencies = [
|
|
|
147
156
|
# safetensors + tokenizers: hard transitives via model2vec.
|
|
148
157
|
# Declared as direct deps so Briefcase emits the lines and
|
|
149
158
|
# postcreate's URL refs fire on Android. On desktop / PyPI
|
|
150
|
-
# both packages have manylinux wheels
|
|
151
|
-
#
|
|
159
|
+
# both packages have manylinux wheels.
|
|
160
|
+
#
|
|
161
|
+
# ``tokenizers`` floor must match what ``sentence-transformers``
|
|
162
|
+
# (in the ``full`` extra) can satisfy: it pulls
|
|
163
|
+
# ``transformers>=4.41.0`` which only accepts
|
|
164
|
+
# ``tokenizers<=0.23.0``. Using ``>=0.23.1`` here makes
|
|
165
|
+
# ``uv pip install -e .[full]`` unsolvable. Floor 0.20 matches
|
|
166
|
+
# model2vec's own pin and is satisfied by both PyPI's manylinux
|
|
167
|
+
# wheel chain AND our Android wheel (0.23.1 — version constraint
|
|
168
|
+
# on the wheel-filename URL ref is independent of the dep-spec
|
|
169
|
+
# range we accept here).
|
|
152
170
|
"safetensors>=0.7.0",
|
|
153
|
-
"tokenizers>=0.
|
|
171
|
+
"tokenizers>=0.20,<0.24",
|
|
154
172
|
# Windows PTY for terminal panel (Nerd Font / PowerShell theme support)
|
|
155
173
|
"pywinpty>=2.0.0; sys_platform == 'win32'",
|
|
156
174
|
]
|
|
@@ -273,7 +291,7 @@ select = ["F401", "F841"]
|
|
|
273
291
|
[tool.briefcase]
|
|
274
292
|
project_name = "KohakuTerrarium"
|
|
275
293
|
bundle = "com.kohaku.terrarium"
|
|
276
|
-
version = "2.0.0.
|
|
294
|
+
version = "2.0.0.dev9"
|
|
277
295
|
url = "https://github.com/Kohaku-Lab/KohakuTerrarium"
|
|
278
296
|
# License is read from PEP 639 ``[project]`` above; Briefcase
|
|
279
297
|
# 0.3.21+ no longer accepts ``license.file`` here.
|
{kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9/src/KohakuTerrarium.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: KohakuTerrarium
|
|
3
|
-
Version: 2.0.0.
|
|
3
|
+
Version: 2.0.0.dev9
|
|
4
4
|
Summary: A universal agent framework for building self-driven AI agents and multi-agent teams
|
|
5
5
|
Author-email: "Shih-Ying Yeh (KohakuBlueLeaf)" <apolloyeh0123@gmail.com>
|
|
6
6
|
License-Expression: LicenseRef-KohakuTerrarium-1.0
|
|
@@ -37,6 +37,7 @@ Requires-Dist: kohakuvault>=0.8.6
|
|
|
37
37
|
Requires-Dist: textual>=8.0.0
|
|
38
38
|
Requires-Dist: html2text>=2025.0.0
|
|
39
39
|
Requires-Dist: gitpython>=3.1.0
|
|
40
|
+
Requires-Dist: dulwich>=0.22
|
|
40
41
|
Requires-Dist: fastapi>=0.115.0
|
|
41
42
|
Requires-Dist: uvicorn[standard]>=0.34.0
|
|
42
43
|
Requires-Dist: websockets>=10.4
|
|
@@ -52,7 +53,7 @@ Requires-Dist: jiter<1,>=0.10.0
|
|
|
52
53
|
Requires-Dist: primp>=1.3.0
|
|
53
54
|
Requires-Dist: model2vec>=0.8.0
|
|
54
55
|
Requires-Dist: safetensors>=0.7.0
|
|
55
|
-
Requires-Dist: tokenizers
|
|
56
|
+
Requires-Dist: tokenizers<0.24,>=0.20
|
|
56
57
|
Requires-Dist: pywinpty>=2.0.0; sys_platform == "win32"
|
|
57
58
|
Provides-Extra: host
|
|
58
59
|
Provides-Extra: client
|
{kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/SOURCES.txt
RENAMED
|
@@ -114,6 +114,26 @@ src/kohakuterrarium/api/ws/observer.py
|
|
|
114
114
|
src/kohakuterrarium/api/ws/pty.py
|
|
115
115
|
src/kohakuterrarium/api/ws/runtime_graph.py
|
|
116
116
|
src/kohakuterrarium/api/ws/trace.py
|
|
117
|
+
src/kohakuterrarium/app_icons/app-adaptive-108.png
|
|
118
|
+
src/kohakuterrarium/app_icons/app-adaptive-162.png
|
|
119
|
+
src/kohakuterrarium/app_icons/app-adaptive-216.png
|
|
120
|
+
src/kohakuterrarium/app_icons/app-adaptive-324.png
|
|
121
|
+
src/kohakuterrarium/app_icons/app-adaptive-432.png
|
|
122
|
+
src/kohakuterrarium/app_icons/app-round-144.png
|
|
123
|
+
src/kohakuterrarium/app_icons/app-round-192.png
|
|
124
|
+
src/kohakuterrarium/app_icons/app-round-48.png
|
|
125
|
+
src/kohakuterrarium/app_icons/app-round-72.png
|
|
126
|
+
src/kohakuterrarium/app_icons/app-round-96.png
|
|
127
|
+
src/kohakuterrarium/app_icons/app-square-1280.png
|
|
128
|
+
src/kohakuterrarium/app_icons/app-square-144.png
|
|
129
|
+
src/kohakuterrarium/app_icons/app-square-192.png
|
|
130
|
+
src/kohakuterrarium/app_icons/app-square-320.png
|
|
131
|
+
src/kohakuterrarium/app_icons/app-square-48.png
|
|
132
|
+
src/kohakuterrarium/app_icons/app-square-480.png
|
|
133
|
+
src/kohakuterrarium/app_icons/app-square-640.png
|
|
134
|
+
src/kohakuterrarium/app_icons/app-square-72.png
|
|
135
|
+
src/kohakuterrarium/app_icons/app-square-96.png
|
|
136
|
+
src/kohakuterrarium/app_icons/app-square-960.png
|
|
117
137
|
src/kohakuterrarium/app_icons/app.ico
|
|
118
138
|
src/kohakuterrarium/app_icons/app.png
|
|
119
139
|
src/kohakuterrarium/app_icons/window.ico
|
|
@@ -511,6 +531,7 @@ src/kohakuterrarium/modules/trigger/universal.py
|
|
|
511
531
|
src/kohakuterrarium/modules/user_command/__init__.py
|
|
512
532
|
src/kohakuterrarium/modules/user_command/base.py
|
|
513
533
|
src/kohakuterrarium/packages/__init__.py
|
|
534
|
+
src/kohakuterrarium/packages/git_backend.py
|
|
514
535
|
src/kohakuterrarium/packages/install.py
|
|
515
536
|
src/kohakuterrarium/packages/locations.py
|
|
516
537
|
src/kohakuterrarium/packages/manifest.py
|
|
@@ -790,12 +811,12 @@ src/kohakuterrarium/web_dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2
|
|
|
790
811
|
src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff
|
|
791
812
|
src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2
|
|
792
813
|
src/kohakuterrarium/web_dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf
|
|
793
|
-
src/kohakuterrarium/web_dist/assets/_id_-
|
|
794
|
-
src/kohakuterrarium/web_dist/assets/_key_-
|
|
814
|
+
src/kohakuterrarium/web_dist/assets/_id_-BwN6vCT_.js
|
|
815
|
+
src/kohakuterrarium/web_dist/assets/_key_-mOfYdFA8.js
|
|
795
816
|
src/kohakuterrarium/web_dist/assets/abap-DNgBPGRI.js
|
|
796
817
|
src/kohakuterrarium/web_dist/assets/apex-B4r7dYl2.js
|
|
797
|
-
src/kohakuterrarium/web_dist/assets/api-
|
|
798
|
-
src/kohakuterrarium/web_dist/assets/axios-
|
|
818
|
+
src/kohakuterrarium/web_dist/assets/api-CdBGIjO8.js
|
|
819
|
+
src/kohakuterrarium/web_dist/assets/axios-Cx6az8TG.js
|
|
799
820
|
src/kohakuterrarium/web_dist/assets/azcli-BKm6S2Cw.js
|
|
800
821
|
src/kohakuterrarium/web_dist/assets/bat-BSxnouuk.js
|
|
801
822
|
src/kohakuterrarium/web_dist/assets/bicep-B_GZ-wpx.js
|
|
@@ -814,8 +835,8 @@ src/kohakuterrarium/web_dist/assets/dart-CLzO6BZf.js
|
|
|
814
835
|
src/kohakuterrarium/web_dist/assets/dockerfile-Bt15Hhqr.js
|
|
815
836
|
src/kohakuterrarium/web_dist/assets/ecl-DLgnzhBc.js
|
|
816
837
|
src/kohakuterrarium/web_dist/assets/editor.main-D4M8mfOA.js
|
|
817
|
-
src/kohakuterrarium/web_dist/assets/element-plus-
|
|
818
|
-
src/kohakuterrarium/web_dist/assets/element-plus-
|
|
838
|
+
src/kohakuterrarium/web_dist/assets/element-plus-BmQ7cnZ3.css
|
|
839
|
+
src/kohakuterrarium/web_dist/assets/element-plus-DadrrCeP.js
|
|
819
840
|
src/kohakuterrarium/web_dist/assets/elixir-Dc0k6n94.js
|
|
820
841
|
src/kohakuterrarium/web_dist/assets/flow9-Cmb0SGvr.js
|
|
821
842
|
src/kohakuterrarium/web_dist/assets/freemarker2-Dz8yjL95.js
|
|
@@ -829,10 +850,10 @@ src/kohakuterrarium/web_dist/assets/highlight-C8LL_u4z.css
|
|
|
829
850
|
src/kohakuterrarium/web_dist/assets/html-DVGxM4pJ.js
|
|
830
851
|
src/kohakuterrarium/web_dist/assets/html.worker-wsVgX3gp.js
|
|
831
852
|
src/kohakuterrarium/web_dist/assets/htmlMode-C5KOTPV1.js
|
|
832
|
-
src/kohakuterrarium/web_dist/assets/index-
|
|
833
|
-
src/kohakuterrarium/web_dist/assets/index-
|
|
853
|
+
src/kohakuterrarium/web_dist/assets/index-CAxTq8GR.js
|
|
854
|
+
src/kohakuterrarium/web_dist/assets/index-CuB7PtQi.css
|
|
834
855
|
src/kohakuterrarium/web_dist/assets/ini-BeMa714h.js
|
|
835
|
-
src/kohakuterrarium/web_dist/assets/instances-
|
|
856
|
+
src/kohakuterrarium/web_dist/assets/instances-B2ySdeCd.js
|
|
836
857
|
src/kohakuterrarium/web_dist/assets/java-Dq86Qznf.js
|
|
837
858
|
src/kohakuterrarium/web_dist/assets/javascript-BOm_W1Jn.js
|
|
838
859
|
src/kohakuterrarium/web_dist/assets/json.worker-CcNiYOcv.js
|
|
@@ -852,8 +873,8 @@ src/kohakuterrarium/web_dist/assets/monaco-editor-Br_kD0ds.css
|
|
|
852
873
|
src/kohakuterrarium/web_dist/assets/msdax-_4dmgZQ-.js
|
|
853
874
|
src/kohakuterrarium/web_dist/assets/mysql-P77yJQsH.js
|
|
854
875
|
src/kohakuterrarium/web_dist/assets/objective-c-ClnQjoXg.js
|
|
855
|
-
src/kohakuterrarium/web_dist/assets/pages-
|
|
856
|
-
src/kohakuterrarium/web_dist/assets/panel-debug-
|
|
876
|
+
src/kohakuterrarium/web_dist/assets/pages-B_cEdNdl.js
|
|
877
|
+
src/kohakuterrarium/web_dist/assets/panel-debug-BT1go744.js
|
|
857
878
|
src/kohakuterrarium/web_dist/assets/pascal-Bc7vQ0ww.js
|
|
858
879
|
src/kohakuterrarium/web_dist/assets/pascaligo-CU0Jj3mr.js
|
|
859
880
|
src/kohakuterrarium/web_dist/assets/perl-DUQq7oYb.js
|
|
@@ -894,7 +915,7 @@ src/kohakuterrarium/web_dist/assets/twig-tgVGZ8a3.js
|
|
|
894
915
|
src/kohakuterrarium/web_dist/assets/typescript-fw_MGe8q.js
|
|
895
916
|
src/kohakuterrarium/web_dist/assets/typespec-C5xfuswf.js
|
|
896
917
|
src/kohakuterrarium/web_dist/assets/vb-BMkNQk3p.js
|
|
897
|
-
src/kohakuterrarium/web_dist/assets/vue-vendor-
|
|
918
|
+
src/kohakuterrarium/web_dist/assets/vue-vendor-DroPwbFZ.js
|
|
898
919
|
src/kohakuterrarium/web_dist/assets/wgsl-Borzlq4p.js
|
|
899
920
|
src/kohakuterrarium/web_dist/assets/xml-zEmrWqLn.js
|
|
900
921
|
src/kohakuterrarium/web_dist/assets/yaml-Bnn6I1fK.js
|
{kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/KohakuTerrarium.egg-info/requires.txt
RENAMED
|
@@ -15,6 +15,7 @@ kohakuvault>=0.8.6
|
|
|
15
15
|
textual>=8.0.0
|
|
16
16
|
html2text>=2025.0.0
|
|
17
17
|
gitpython>=3.1.0
|
|
18
|
+
dulwich>=0.22
|
|
18
19
|
fastapi>=0.115.0
|
|
19
20
|
uvicorn[standard]>=0.34.0
|
|
20
21
|
websockets>=10.4
|
|
@@ -30,7 +31,7 @@ jiter<1,>=0.10.0
|
|
|
30
31
|
primp>=1.3.0
|
|
31
32
|
model2vec>=0.8.0
|
|
32
33
|
safetensors>=0.7.0
|
|
33
|
-
tokenizers
|
|
34
|
+
tokenizers<0.24,>=0.20
|
|
34
35
|
|
|
35
36
|
[:sys_platform == "win32"]
|
|
36
37
|
pywinpty>=2.0.0
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"""Identity codex — OAuth login/status/usage.
|
|
2
|
+
|
|
3
|
+
Accepts a ``?node=<id>`` query param: when set to a connected worker,
|
|
4
|
+
the OAuth flow runs ON THAT WORKER (browser opens on the worker's
|
|
5
|
+
machine, tokens land in the worker's ``<config_dir>/codex-auth.json``).
|
|
6
|
+
This is the ONLY sound way to use Codex from a worker — OAuth tokens
|
|
7
|
+
are process-bound so the host's token cannot be reused remotely.
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
import asyncio
|
|
11
|
+
import json
|
|
12
|
+
|
|
13
|
+
from fastapi import APIRouter, Depends, HTTPException
|
|
14
|
+
from fastapi.responses import StreamingResponse
|
|
15
|
+
|
|
16
|
+
from kohakuterrarium.api.auth import verify_admin_token
|
|
17
|
+
from kohakuterrarium.api.deps import get_service
|
|
18
|
+
from kohakuterrarium.api.routes.identity.node_routing import (
|
|
19
|
+
call_node_identity,
|
|
20
|
+
is_host_target,
|
|
21
|
+
)
|
|
22
|
+
from kohakuterrarium.studio.identity.codex_oauth import (
|
|
23
|
+
get_status,
|
|
24
|
+
get_usage_async,
|
|
25
|
+
login_async,
|
|
26
|
+
)
|
|
27
|
+
from kohakuterrarium.terrarium.service import TerrariumService
|
|
28
|
+
|
|
29
|
+
router = APIRouter()
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
@router.post("/codex-login", dependencies=[Depends(verify_admin_token)])
|
|
33
|
+
async def codex_login(
|
|
34
|
+
node: str = "",
|
|
35
|
+
service: TerrariumService = Depends(get_service),
|
|
36
|
+
):
|
|
37
|
+
"""Run the Codex OAuth flow on the targeted node."""
|
|
38
|
+
if is_host_target(node):
|
|
39
|
+
try:
|
|
40
|
+
return await login_async()
|
|
41
|
+
except Exception as e:
|
|
42
|
+
raise HTTPException(500, f"Codex login failed: {e}") from e
|
|
43
|
+
# Worker-side login: long-running (waits for user OAuth callback or
|
|
44
|
+
# device-code entry). Bump the lab-request timeout so the user has
|
|
45
|
+
# time to complete the flow.
|
|
46
|
+
return await call_node_identity(service, node, "codex_login", timeout=300.0)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
@router.post(
|
|
50
|
+
"/codex-login-stream",
|
|
51
|
+
dependencies=[Depends(verify_admin_token)],
|
|
52
|
+
)
|
|
53
|
+
async def codex_login_stream(node: str = ""):
|
|
54
|
+
"""Run Codex login while streaming progress events to the client.
|
|
55
|
+
|
|
56
|
+
The frontend ``CodexLoginModal`` consumes this endpoint as a
|
|
57
|
+
line-delimited JSON stream (one JSON object per line). Events:
|
|
58
|
+
|
|
59
|
+
* ``{"event": "device_code", "verification_url": ..., "user_code": ..., "expires_in": int}``
|
|
60
|
+
— fired as soon as the device-code branch obtains the user
|
|
61
|
+
code, BEFORE the poll loop starts. The modal renders this
|
|
62
|
+
so the user can manually open the URL + enter the code on
|
|
63
|
+
any device.
|
|
64
|
+
* ``{"event": "completed", "expires_at": float}`` — final
|
|
65
|
+
success. Modal closes itself with a success toast.
|
|
66
|
+
* ``{"event": "error", "message": str}`` — terminal failure.
|
|
67
|
+
|
|
68
|
+
Only the host path streams events directly. Worker-side login
|
|
69
|
+
falls back to the existing one-shot ``/codex-login`` route since
|
|
70
|
+
cross-node event streaming isn't wired in 1.5.0; this leaves the
|
|
71
|
+
modal-based UX functional in the common case (local Codex login
|
|
72
|
+
on the host's own machine) and the host-router lab path for the
|
|
73
|
+
rare worker case.
|
|
74
|
+
"""
|
|
75
|
+
if not is_host_target(node):
|
|
76
|
+
raise HTTPException(
|
|
77
|
+
400,
|
|
78
|
+
(
|
|
79
|
+
"Streaming Codex login is only supported on the host node "
|
|
80
|
+
'(node=""); for worker-side login use POST /codex-login.'
|
|
81
|
+
),
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
queue: asyncio.Queue = asyncio.Queue()
|
|
85
|
+
|
|
86
|
+
async def emit_device_code(verification_url: str, user_code: str, expires_in: int):
|
|
87
|
+
await queue.put(
|
|
88
|
+
{
|
|
89
|
+
"event": "device_code",
|
|
90
|
+
"verification_url": verification_url,
|
|
91
|
+
"user_code": user_code,
|
|
92
|
+
"expires_in": expires_in,
|
|
93
|
+
}
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
async def run_login():
|
|
97
|
+
try:
|
|
98
|
+
result = await login_async(on_device_code=emit_device_code)
|
|
99
|
+
await queue.put(
|
|
100
|
+
{
|
|
101
|
+
"event": "completed",
|
|
102
|
+
"expires_at": result.get("expires_at"),
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
except Exception as exc:
|
|
106
|
+
await queue.put(
|
|
107
|
+
{"event": "error", "message": f"{type(exc).__name__}: {exc}"}
|
|
108
|
+
)
|
|
109
|
+
finally:
|
|
110
|
+
await queue.put(None) # sentinel — close the stream
|
|
111
|
+
|
|
112
|
+
async def stream():
|
|
113
|
+
task = asyncio.create_task(run_login())
|
|
114
|
+
try:
|
|
115
|
+
while True:
|
|
116
|
+
event = await queue.get()
|
|
117
|
+
if event is None:
|
|
118
|
+
break
|
|
119
|
+
yield json.dumps(event) + "\n"
|
|
120
|
+
finally:
|
|
121
|
+
if not task.done():
|
|
122
|
+
task.cancel()
|
|
123
|
+
try:
|
|
124
|
+
await task
|
|
125
|
+
except (asyncio.CancelledError, Exception):
|
|
126
|
+
pass
|
|
127
|
+
|
|
128
|
+
return StreamingResponse(stream(), media_type="application/x-ndjson")
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
@router.get("/codex-status")
|
|
132
|
+
async def codex_status(
|
|
133
|
+
node: str = "",
|
|
134
|
+
service: TerrariumService = Depends(get_service),
|
|
135
|
+
):
|
|
136
|
+
if is_host_target(node):
|
|
137
|
+
return get_status()
|
|
138
|
+
return await call_node_identity(service, node, "codex_status")
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
@router.get("/codex-usage")
|
|
142
|
+
async def get_codex_usage():
|
|
143
|
+
"""Return the most-recent captured Codex rate-limit / credits snapshot."""
|
|
144
|
+
try:
|
|
145
|
+
return await get_usage_async()
|
|
146
|
+
except Exception as e:
|
|
147
|
+
raise HTTPException(401, f"Failed to refresh Codex tokens: {e}") from e
|
{kohakuterrarium-2.0.0.dev7 → kohakuterrarium-2.0.0.dev9}/src/kohakuterrarium/llm/codex_auth.py
RENAMED
|
@@ -328,7 +328,9 @@ async def _browser_flow() -> CodexTokens:
|
|
|
328
328
|
# =========================================================================
|
|
329
329
|
|
|
330
330
|
|
|
331
|
-
async def _device_code_flow(
|
|
331
|
+
async def _device_code_flow(
|
|
332
|
+
on_device_code: "callable | None" = None,
|
|
333
|
+
) -> CodexTokens:
|
|
332
334
|
"""OAuth device code flow for headless environments.
|
|
333
335
|
|
|
334
336
|
Uses OpenAI's Codex-specific device auth endpoints:
|
|
@@ -337,6 +339,14 @@ async def _device_code_flow() -> CodexTokens:
|
|
|
337
339
|
3. Poll /api/accounts/deviceauth/token until user completes auth
|
|
338
340
|
4. Server returns authorization_code + PKCE codes
|
|
339
341
|
5. Exchange at /oauth/token for access + refresh tokens
|
|
342
|
+
|
|
343
|
+
``on_device_code`` is an optional async callback ``(verification_url,
|
|
344
|
+
user_code, expires_in) -> None`` invoked AS SOON AS the user code
|
|
345
|
+
is obtained — before we start polling. The SSE / WebSocket layer
|
|
346
|
+
uses this to push the code to the frontend modal so the user can
|
|
347
|
+
paste it on another device while the server polls in background.
|
|
348
|
+
Tests and the CLI invoker pass ``None`` to keep the existing
|
|
349
|
+
print-only behaviour.
|
|
340
350
|
"""
|
|
341
351
|
async with httpx.AsyncClient(timeout=30) as client:
|
|
342
352
|
resp = await client.post(
|
|
@@ -362,6 +372,21 @@ async def _device_code_flow() -> CodexTokens:
|
|
|
362
372
|
print()
|
|
363
373
|
print("Waiting for authentication (either method)...")
|
|
364
374
|
|
|
375
|
+
# Push the user code + URL to any subscribed event sink (SSE /
|
|
376
|
+
# WebSocket modal) so the frontend can show them immediately
|
|
377
|
+
# instead of waiting for the entire poll-and-exchange to finish.
|
|
378
|
+
if on_device_code is not None:
|
|
379
|
+
try:
|
|
380
|
+
res = on_device_code(DEVICE_VERIFY_URL, user_code, expires_in)
|
|
381
|
+
if asyncio.iscoroutine(res):
|
|
382
|
+
await res
|
|
383
|
+
except Exception as exc:
|
|
384
|
+
logger.warning(
|
|
385
|
+
"on_device_code callback raised",
|
|
386
|
+
error_type=type(exc).__name__,
|
|
387
|
+
error=str(exc),
|
|
388
|
+
)
|
|
389
|
+
|
|
365
390
|
deadline = time.time() + expires_in
|
|
366
391
|
async with httpx.AsyncClient(timeout=30) as client:
|
|
367
392
|
while time.time() < deadline:
|
|
@@ -479,7 +504,9 @@ async def _exchange_code(
|
|
|
479
504
|
# =========================================================================
|
|
480
505
|
|
|
481
506
|
|
|
482
|
-
async def oauth_login(
|
|
507
|
+
async def oauth_login(
|
|
508
|
+
on_device_code: "callable | None" = None,
|
|
509
|
+
) -> CodexTokens:
|
|
483
510
|
"""
|
|
484
511
|
Authenticate with OpenAI Codex OAuth.
|
|
485
512
|
|
|
@@ -489,10 +516,16 @@ async def oauth_login() -> CodexTokens:
|
|
|
489
516
|
- SSH/headless: user visits URL on another device, enters code
|
|
490
517
|
- Remote desktop: either flow may work
|
|
491
518
|
- Windows reserved port: browser fails fast, device code continues
|
|
519
|
+
- **Android / WebView frontend**: no browser opener available,
|
|
520
|
+
``on_device_code`` callback pushes the verification URL + code
|
|
521
|
+
to the UI modal so the user can paste them on another device.
|
|
522
|
+
|
|
523
|
+
``on_device_code`` is forwarded verbatim to the device-code branch;
|
|
524
|
+
pass ``None`` (default) for the original print-only behaviour.
|
|
492
525
|
"""
|
|
493
526
|
# Start both flows as concurrent tasks
|
|
494
527
|
browser_task = asyncio.create_task(_browser_flow_safe())
|
|
495
|
-
device_task = asyncio.create_task(_device_code_flow())
|
|
528
|
+
device_task = asyncio.create_task(_device_code_flow(on_device_code=on_device_code))
|
|
496
529
|
|
|
497
530
|
tasks = {browser_task, device_task}
|
|
498
531
|
last_error: Exception | None = None
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"""Git clone / pull backend abstraction.
|
|
2
|
+
|
|
3
|
+
Two implementations, picked at call time:
|
|
4
|
+
|
|
5
|
+
1. **Native ``git`` binary** — fast, full feature set, the default
|
|
6
|
+
when ``git`` is discoverable on ``$PATH``. Used on desktop /
|
|
7
|
+
CI / Linux server installs.
|
|
8
|
+
|
|
9
|
+
2. **Pure-Python ``dulwich``** — pulled in as a hard dep so it's
|
|
10
|
+
always available on Chaquopy Android (no system ``git``
|
|
11
|
+
binary ships in the APK and one can't be shelled out to).
|
|
12
|
+
Slower than native ``git`` for large repos but covers the
|
|
13
|
+
creature / terrarium / plugin package sizes ``kt install``
|
|
14
|
+
deals with (a few MB at most).
|
|
15
|
+
|
|
16
|
+
The public API is just two functions:
|
|
17
|
+
|
|
18
|
+
``clone_repo(url, target)``
|
|
19
|
+
``pull_repo(target)``
|
|
20
|
+
|
|
21
|
+
Both raise :class:`RuntimeError` on any failure. Callers can rely on
|
|
22
|
+
the abstraction to handle backend selection — they don't need to know
|
|
23
|
+
which one ran.
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
import shutil
|
|
27
|
+
import subprocess
|
|
28
|
+
from pathlib import Path
|
|
29
|
+
|
|
30
|
+
from kohakuterrarium.utils.logging import get_logger
|
|
31
|
+
|
|
32
|
+
logger = get_logger(__name__)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def _has_native_git() -> bool:
|
|
36
|
+
"""True iff the system ``git`` binary is on ``$PATH`` and callable.
|
|
37
|
+
|
|
38
|
+
We probe once and cache. Cache invalidates on a process restart;
|
|
39
|
+
a long-running daemon that gets ``git`` installed mid-session
|
|
40
|
+
would still pick up the new binary on next restart, which is fine
|
|
41
|
+
for an install path.
|
|
42
|
+
"""
|
|
43
|
+
global _NATIVE_GIT_CACHE
|
|
44
|
+
if _NATIVE_GIT_CACHE is not None:
|
|
45
|
+
return _NATIVE_GIT_CACHE
|
|
46
|
+
found = shutil.which("git") is not None
|
|
47
|
+
_NATIVE_GIT_CACHE = found
|
|
48
|
+
if not found:
|
|
49
|
+
logger.info("Native git not found on PATH; using dulwich pure-Python backend")
|
|
50
|
+
return found
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
_NATIVE_GIT_CACHE: bool | None = None
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
def clone_repo(url: str, target: Path) -> None:
|
|
57
|
+
"""Clone ``url`` into ``target`` directory.
|
|
58
|
+
|
|
59
|
+
Selects the native git binary when available, otherwise falls
|
|
60
|
+
back to dulwich. Both code paths raise :class:`RuntimeError` on
|
|
61
|
+
failure with a one-line diagnostic message.
|
|
62
|
+
"""
|
|
63
|
+
if _has_native_git():
|
|
64
|
+
_clone_native(url, target)
|
|
65
|
+
else:
|
|
66
|
+
_clone_dulwich(url, target)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def pull_repo(target: Path) -> None:
|
|
70
|
+
"""Pull (fast-forward only) the existing clone at ``target``.
|
|
71
|
+
|
|
72
|
+
Same backend-selection rule as :func:`clone_repo`.
|
|
73
|
+
"""
|
|
74
|
+
if _has_native_git():
|
|
75
|
+
_pull_native(target)
|
|
76
|
+
else:
|
|
77
|
+
_pull_dulwich(target)
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
# ─── native git binary ────────────────────────────────────────────
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
def _clone_native(url: str, target: Path) -> None:
|
|
84
|
+
try:
|
|
85
|
+
subprocess.run(
|
|
86
|
+
["git", "clone", url, str(target)],
|
|
87
|
+
check=True,
|
|
88
|
+
capture_output=True,
|
|
89
|
+
)
|
|
90
|
+
except subprocess.CalledProcessError as exc:
|
|
91
|
+
stderr = exc.stderr.decode(errors="replace").strip() if exc.stderr else str(exc)
|
|
92
|
+
raise RuntimeError(f"Git clone failed: {stderr}") from exc
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def _pull_native(target: Path) -> None:
|
|
96
|
+
try:
|
|
97
|
+
subprocess.run(
|
|
98
|
+
["git", "-C", str(target), "pull", "--ff-only"],
|
|
99
|
+
check=True,
|
|
100
|
+
capture_output=True,
|
|
101
|
+
)
|
|
102
|
+
except subprocess.CalledProcessError as exc:
|
|
103
|
+
stderr = exc.stderr.decode(errors="replace").strip() if exc.stderr else str(exc)
|
|
104
|
+
raise RuntimeError(f"Git pull failed: {stderr}") from exc
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
# ─── pure-Python dulwich ──────────────────────────────────────────
|
|
108
|
+
#
|
|
109
|
+
# Dulwich is imported lazily so that:
|
|
110
|
+
# * the module loads on systems where dulwich isn't installed yet
|
|
111
|
+
# (only fails when actually invoked without native git);
|
|
112
|
+
# * import cost is paid once per process, on first call.
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def _import_dulwich():
|
|
116
|
+
try:
|
|
117
|
+
from dulwich import porcelain # noqa: PLC0415 — lazy by design
|
|
118
|
+
|
|
119
|
+
return porcelain
|
|
120
|
+
except ImportError as exc:
|
|
121
|
+
raise RuntimeError(
|
|
122
|
+
"No git available — install ``git`` on PATH or "
|
|
123
|
+
"``pip install dulwich`` (dulwich is a hard dep so this "
|
|
124
|
+
"should never trigger in production builds)."
|
|
125
|
+
) from exc
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
def _clone_dulwich(url: str, target: Path) -> None:
|
|
129
|
+
porcelain = _import_dulwich()
|
|
130
|
+
target.parent.mkdir(parents=True, exist_ok=True)
|
|
131
|
+
try:
|
|
132
|
+
porcelain.clone(url, str(target), depth=1)
|
|
133
|
+
except Exception as exc:
|
|
134
|
+
raise RuntimeError(f"Git clone failed (dulwich): {exc}") from exc
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
def _pull_dulwich(target: Path) -> None:
|
|
138
|
+
porcelain = _import_dulwich()
|
|
139
|
+
if not (target / ".git").exists():
|
|
140
|
+
raise RuntimeError(f"Not a git clone: {target}")
|
|
141
|
+
try:
|
|
142
|
+
porcelain.pull(str(target))
|
|
143
|
+
except Exception as exc:
|
|
144
|
+
raise RuntimeError(f"Git pull failed (dulwich): {exc}") from exc
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
def _reset_backend_cache_for_tests() -> None:
|
|
148
|
+
"""Force re-probe of the native git binary on the next call."""
|
|
149
|
+
global _NATIVE_GIT_CACHE
|
|
150
|
+
_NATIVE_GIT_CACHE = None
|