spawnllm 0.13.2__tar.gz → 0.13.3__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 (35) hide show
  1. {spawnllm-0.13.2 → spawnllm-0.13.3}/PKG-INFO +1 -1
  2. {spawnllm-0.13.2 → spawnllm-0.13.3}/pyproject.toml +1 -1
  3. {spawnllm-0.13.2 → spawnllm-0.13.3}/pyproject.toml.orig +1 -1
  4. spawnllm-0.13.3/spawnllm/_core/spawnllm_core.wasm +0 -0
  5. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/claude.py +5 -3
  6. spawnllm-0.13.2/spawnllm/_core/spawnllm_core.wasm +0 -0
  7. {spawnllm-0.13.2 → spawnllm-0.13.3}/LICENSE +0 -0
  8. {spawnllm-0.13.2 → spawnllm-0.13.3}/README.md +0 -0
  9. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/__init__.py +0 -0
  10. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/__main__.py +0 -0
  11. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/_core/__init__.py +0 -0
  12. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/__init__.py +0 -0
  13. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/apple.py +0 -0
  14. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/base.py +0 -0
  15. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/claude_sdk.py +0 -0
  16. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/codex.py +0 -0
  17. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/gemini.py +0 -0
  18. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/mlx.py +0 -0
  19. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/openai_endpoint.py +0 -0
  20. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/backends/registry.py +0 -0
  21. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/call.py +0 -0
  22. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/cli.py +0 -0
  23. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/extract.py +0 -0
  24. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/mlx/__init__.py +0 -0
  25. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/mlx/codec.py +0 -0
  26. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/mlx/engine.py +0 -0
  27. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/mlx/fuse.py +0 -0
  28. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/mlx/patches.py +0 -0
  29. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/proc.py +0 -0
  30. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/py.typed +0 -0
  31. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/response.py +0 -0
  32. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/run.py +0 -0
  33. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/spec.py +0 -0
  34. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/structured.py +0 -0
  35. {spawnllm-0.13.2 → spawnllm-0.13.3}/spawnllm/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: spawnllm
3
- Version: 0.13.2
3
+ Version: 0.13.3
4
4
  Summary: Delete your subprocess wrappers around claude, codex, and gemini.
5
5
  Keywords:
6
6
  Author: Yasyf Mohamedali
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "spawnllm"
3
- version = "0.13.2"
3
+ version = "0.13.3"
4
4
  description = "Delete your subprocess wrappers around claude, codex, and gemini."
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -1,7 +1,7 @@
1
1
  [project]
2
2
  name = "spawnllm"
3
3
  # Inert sentinel: the real version is set from the release tag (uv version --frozen).
4
- version = "0.13.2"
4
+ version = "0.13.3"
5
5
  description = "Delete your subprocess wrappers around claude, codex, and gemini."
6
6
  readme = "README.md"
7
7
  license = "MIT"
@@ -82,6 +82,8 @@ class ClaudeCliBackend(CliBackend):
82
82
  "platform": sys.platform,
83
83
  "home": str(Path.home()),
84
84
  "claude_config_dir_env": os.environ.get("CLAUDE_CONFIG_DIR") or None,
85
+ "claude_securestorage_config_dir_env": os.environ.get("CLAUDE_SECURESTORAGE_CONFIG_DIR"),
86
+ "claude_code_custom_oauth_url_env": os.environ.get("CLAUDE_CODE_CUSTOM_OAUTH_URL"),
85
87
  }
86
88
  },
87
89
  )
@@ -94,9 +96,9 @@ class ClaudeCliBackend(CliBackend):
94
96
  )
95
97
  config_dir = Path(tempfile.mkdtemp(prefix="spawnllm-claude-config-"))
96
98
  for file in seed["files"]:
97
- path = config_dir / file["name"]
98
- path.write_text(file["content"])
99
- path.chmod(int(file["mode"], 8))
99
+ fd = os.open(config_dir / file["name"], os.O_WRONLY | os.O_CREAT | os.O_EXCL, int(file["mode"], 8))
100
+ with os.fdopen(fd, "w") as handle:
101
+ handle.write(file["content"])
100
102
  atexit.register(shutil.rmtree, config_dir, ignore_errors=True)
101
103
  self._isolated_config_dir = str(config_dir)
102
104
  return self._isolated_config_dir
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes