augint-shell 0.90.0__tar.gz → 0.90.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. {augint_shell-0.90.0 → augint_shell-0.90.2}/PKG-INFO +1 -1
  2. {augint_shell-0.90.0 → augint_shell-0.90.2}/pyproject.toml +1 -1
  3. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/__init__.py +1 -1
  4. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/commands/tools.py +53 -1
  5. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/pi/models.json +4 -0
  6. {augint_shell-0.90.0 → augint_shell-0.90.2}/README.md +0 -0
  7. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/assets/__init__.py +0 -0
  8. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/assets/comfyui/__init__.py +0 -0
  9. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/assets/comfyui/provision.sh +0 -0
  10. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/__init__.py +0 -0
  11. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/__main__.py +0 -0
  12. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/commands/__init__.py +0 -0
  13. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/commands/llm.py +0 -0
  14. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/cli/commands/manage.py +0 -0
  15. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/config.py +0 -0
  16. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/container.py +0 -0
  17. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/defaults.py +0 -0
  18. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/exceptions.py +0 -0
  19. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/gpu.py +0 -0
  20. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/interactive.py +0 -0
  21. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/local_chrome.py +0 -0
  22. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/models.py +0 -0
  23. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/scaffold.py +0 -0
  24. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/selector.py +0 -0
  25. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/__init__.py +0 -0
  26. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/ai-shell.toml +0 -0
  27. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/ai-shell.yaml +0 -0
  28. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/aider/__init__.py +0 -0
  29. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/claude/__init__.py +0 -0
  30. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/claude/settings.json +0 -0
  31. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/codex/__init__.py +0 -0
  32. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/n8n/workflows/chat_with_ollama.json +0 -0
  33. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/n8n/workflows/text_to_speech.json +0 -0
  34. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/n8n/workflows/transcribe_audio.json +0 -0
  35. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/opencode/__init__.py +0 -0
  36. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/templates/pi/__init__.py +0 -0
  37. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/tmux.py +0 -0
  38. {augint_shell-0.90.0 → augint_shell-0.90.2}/src/ai_shell/typeahead.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: augint-shell
3
- Version: 0.90.0
3
+ Version: 0.90.2
4
4
  Summary: Launch AI coding tools and local LLMs in Docker containers
5
5
  Author: svange
6
6
  Requires-Dist: docker>=7.0.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "augint-shell"
3
- version = "0.90.0"
3
+ version = "0.90.2"
4
4
  description = "Launch AI coding tools and local LLMs in Docker containers"
5
5
  authors = [{name = "svange"}]
6
6
  readme = "README.md"
@@ -1,6 +1,6 @@
1
1
  """augint-shell (ai-shell) - Launch AI coding tools and local LLMs in Docker containers."""
2
2
 
3
- __version__ = "0.90.0"
3
+ __version__ = "0.90.2"
4
4
 
5
5
  __all__ = [
6
6
  "__version__",
@@ -2,9 +2,11 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ import json
5
6
  import logging
6
7
  import subprocess
7
8
  import sys
9
+ import tempfile
8
10
  import uuid
9
11
  from pathlib import Path
10
12
  from typing import Any
@@ -1298,6 +1300,50 @@ def _check_ollama_running(container_name: str) -> None:
1298
1300
  )
1299
1301
 
1300
1302
 
1303
+ def _ensure_pi_ollama_provider(container_name: str, config: AiShellConfig) -> None:
1304
+ """Register Ollama as a Pi provider if not already configured.
1305
+
1306
+ Ollama is not a built-in Pi provider — it must be declared in the global
1307
+ ``~/.pi/agent/models.json``. This writes the file only when absent so
1308
+ user customizations are preserved.
1309
+ """
1310
+ check = subprocess.run(
1311
+ ["docker", "exec", container_name, "test", "-f", "/root/.pi/agent/models.json"],
1312
+ capture_output=True,
1313
+ )
1314
+ if check.returncode == 0:
1315
+ return
1316
+
1317
+ models_cfg = {
1318
+ "providers": {
1319
+ "ollama": {
1320
+ "baseUrl": "http://host.docker.internal:11434/v1",
1321
+ "api": "openai-completions",
1322
+ "apiKey": "ollama",
1323
+ "compat": {
1324
+ "supportsDeveloperRole": False,
1325
+ "supportsReasoningEffort": False,
1326
+ },
1327
+ "models": [{"id": tag} for tag in config.models_to_pull],
1328
+ }
1329
+ }
1330
+ }
1331
+ with tempfile.NamedTemporaryFile(mode="w", suffix=".json", delete=False) as tmp:
1332
+ json.dump(models_cfg, tmp, indent=2)
1333
+ tmp_path = tmp.name
1334
+ try:
1335
+ subprocess.run(
1336
+ ["docker", "exec", container_name, "mkdir", "-p", "/root/.pi/agent"],
1337
+ capture_output=True,
1338
+ )
1339
+ subprocess.run(
1340
+ ["docker", "cp", tmp_path, f"{container_name}:/root/.pi/agent/models.json"],
1341
+ capture_output=True,
1342
+ )
1343
+ finally:
1344
+ Path(tmp_path).unlink(missing_ok=True)
1345
+
1346
+
1301
1347
  @click.command(context_settings=CONTEXT_SETTINGS)
1302
1348
  @click.option("--aws", "use_aws", is_flag=True, default=False, help="Use Amazon Bedrock.")
1303
1349
  @click.option("--profile", "cli_profile", default=None, help="AWS profile for Bedrock auth.")
@@ -1355,7 +1401,13 @@ def pi(ctx, use_aws, cli_profile, openai_profile, do_login):
1355
1401
 
1356
1402
  cmd = ["pi"]
1357
1403
  if not use_bedrock and not resolved_openai_profile:
1358
- cmd.extend(["--model", f"ollama/{config.primary_coding_model}"])
1404
+ _ensure_pi_ollama_provider(name, config)
1405
+ pi_config = Path(config.project_dir) / ".pi" / "settings.json"
1406
+ if not pi_config.is_file():
1407
+ console.print(
1408
+ "[yellow]Warning: No Pi project config found (.pi/settings.json). "
1409
+ "Run 'ai-opencodex update' to generate project config.[/yellow]"
1410
+ )
1359
1411
  console.print(f"[bold]Launching pi{bedrock_label}{openai_label} in {name}...[/bold]")
1360
1412
  manager.exec_interactive(name, cmd, extra_env=exec_env, typeahead=typeahead.bytes())
1361
1413
 
@@ -4,6 +4,10 @@
4
4
  "baseUrl": "http://host.docker.internal:11434/v1",
5
5
  "api": "openai-completions",
6
6
  "apiKey": "ollama",
7
+ "compat": {
8
+ "supportsDeveloperRole": false,
9
+ "supportsReasoningEffort": false
10
+ },
7
11
  "models": [
8
12
  { "id": "qwen3-coder:30b-a3b-q4_K_M" },
9
13
  { "id": "huihui_ai/qwen3-coder-abliterated:30b-a3b-instruct-q4_K_M" },
File without changes