claude-task-master 0.1.10__py3-none-any.whl → 0.1.12__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,5 +3,5 @@
3
3
  Uses Claude Agent SDK to keep Claude working until a goal is achieved.
4
4
  """
5
5
 
6
- __version__ = "0.1.10"
6
+ __version__ = "0.1.12"
7
7
  __all__ = ["__version__"]
@@ -289,9 +289,14 @@ default_config = {
289
289
  },
290
290
  "models": {
291
291
  "sonnet": "claude-sonnet-4-5-20250929",
292
- "opus": "claude-opus-4-5-20251101",
292
+ "opus": "claude-opus-4-6",
293
293
  "haiku": "claude-haiku-4-5-20251001"
294
294
  },
295
+ "context_windows": {
296
+ "opus": 200000,
297
+ "sonnet": 200000,
298
+ "haiku": 200000
299
+ },
295
300
  "git": {
296
301
  "target_branch": "main",
297
302
  "auto_push": True
@@ -24,6 +24,7 @@ from claude_task_master.core.agent_models import (
24
24
  ModelType,
25
25
  TaskComplexity,
26
26
  ToolConfig,
27
+ get_context_window,
27
28
  get_tools_for_phase,
28
29
  parse_task_complexity,
29
30
  )
@@ -246,6 +247,7 @@ __all__ = [
246
247
  "MODEL_CONTEXT_WINDOWS",
247
248
  "MODEL_CONTEXT_WINDOWS_STANDARD",
248
249
  "DEFAULT_COMPACT_THRESHOLD_PERCENT",
250
+ "get_context_window",
249
251
  # Rate limit classes
250
252
  "RateLimitConfig",
251
253
  # Checkpoint exceptions
@@ -91,12 +91,15 @@ class ToolConfig(Enum):
91
91
  # Constants
92
92
  # =============================================================================
93
93
 
94
- # Model context window sizes (tokens) for auto-compact threshold calculation
95
- # Sonnet 4/4.5 supports 1M context (available for tier 4+ users)
96
- # See: https://www.claude.com/blog/1m-context
94
+ # Model context window sizes (tokens) for auto-compact threshold calculation.
95
+ # These are defaults; users can override via config.json "context_windows" section.
96
+ # Opus 4.6 and Sonnet 4.5 support 1M context (beta, tier 4+ users).
97
+ # Note: The Agent SDK handles the `context-1m-2025-08-07` beta header internally.
98
+ # These values are only used to calculate when to trigger context compaction.
99
+ # See: https://platform.claude.com/docs/en/build-with-claude/context-windows
97
100
  MODEL_CONTEXT_WINDOWS = {
98
- ModelType.OPUS: 200_000, # Claude Opus 4.5: 200K context
99
- ModelType.SONNET: 1_000_000, # Claude Sonnet 4/4.5: 1M context (tier 4+)
101
+ ModelType.OPUS: 1_000_000, # Claude Opus 4.6: 1M context (beta, tier 4+)
102
+ ModelType.SONNET: 1_000_000, # Claude Sonnet 4.5: 1M context (beta, tier 4+)
100
103
  ModelType.HAIKU: 200_000, # Claude Haiku 4.5: 200K context
101
104
  }
102
105
 
@@ -107,6 +110,30 @@ MODEL_CONTEXT_WINDOWS_STANDARD = {
107
110
  ModelType.HAIKU: 200_000,
108
111
  }
109
112
 
113
+
114
+ def get_context_window(
115
+ model: ModelType,
116
+ config: ClaudeTaskMasterConfig | None = None,
117
+ ) -> int:
118
+ """Get context window size for a model, reading from config if available.
119
+
120
+ Args:
121
+ model: The model type.
122
+ config: Optional config object. If None, uses hardcoded defaults.
123
+
124
+ Returns:
125
+ Context window size in tokens.
126
+ """
127
+ if config is not None:
128
+ context_map = {
129
+ ModelType.OPUS: config.context_windows.opus,
130
+ ModelType.SONNET: config.context_windows.sonnet,
131
+ ModelType.HAIKU: config.context_windows.haiku,
132
+ }
133
+ return context_map.get(model, MODEL_CONTEXT_WINDOWS[model])
134
+ return MODEL_CONTEXT_WINDOWS[model]
135
+
136
+
110
137
  # Default compact threshold as percentage of context window
111
138
  DEFAULT_COMPACT_THRESHOLD_PERCENT = 0.85 # Compact at 85% usage
112
139
 
@@ -71,7 +71,7 @@ class ModelConfig(BaseModel):
71
71
  description="Model name for 'sonnet' (balanced). Overridden by CLAUDETM_MODEL_SONNET.",
72
72
  )
73
73
  opus: str = Field(
74
- default="claude-opus-4-5-20251101",
74
+ default="claude-opus-4-6",
75
75
  description="Model name for 'opus' (smartest). Overridden by CLAUDETM_MODEL_OPUS.",
76
76
  )
77
77
  haiku: str = Field(
@@ -97,6 +97,30 @@ class GitConfig(BaseModel):
97
97
  )
98
98
 
99
99
 
100
+ class ContextWindowsConfig(BaseModel):
101
+ """Context window sizes per model (in tokens).
102
+
103
+ Controls the max context window size used for auto-compact threshold calculation.
104
+ Opus 4.6 and Sonnet 4.5 support 1M context in beta (tier 4+ users).
105
+ Users on lower tiers should set these to 200000.
106
+
107
+ To enable 1M context via the API, use the beta header: context-1m-2025-08-07
108
+ """
109
+
110
+ opus: int = Field(
111
+ default=200_000,
112
+ description="Opus context window size in tokens. 200000 (standard) or 1000000 (beta, tier 4+).",
113
+ )
114
+ sonnet: int = Field(
115
+ default=200_000,
116
+ description="Sonnet context window size in tokens. 200000 (standard) or 1000000 (beta, tier 4+).",
117
+ )
118
+ haiku: int = Field(
119
+ default=200_000,
120
+ description="Haiku context window size in tokens.",
121
+ )
122
+
123
+
100
124
  class ToolsConfig(BaseModel):
101
125
  """Tool configurations per execution phase.
102
126
 
@@ -144,13 +168,18 @@ class ClaudeTaskMasterConfig(BaseModel):
144
168
  },
145
169
  "models": {
146
170
  "sonnet": "claude-sonnet-4-5-20250929",
147
- "opus": "claude-opus-4-5-20251101",
171
+ "opus": "claude-opus-4-6",
148
172
  "haiku": "claude-haiku-4-5-20251001"
149
173
  },
150
174
  "git": {
151
175
  "target_branch": "main",
152
176
  "auto_push": true
153
177
  },
178
+ "context_windows": {
179
+ "opus": 200000,
180
+ "sonnet": 200000,
181
+ "haiku": 200000
182
+ },
154
183
  "tools": {
155
184
  "planning": ["Read", "Glob", "Grep", "Bash", "WebFetch", "WebSearch"],
156
185
  "verification": ["Read", "Glob", "Grep", "Bash"],
@@ -172,6 +201,10 @@ class ClaudeTaskMasterConfig(BaseModel):
172
201
  default_factory=ModelConfig,
173
202
  description="Model name mappings.",
174
203
  )
204
+ context_windows: ContextWindowsConfig = Field(
205
+ default_factory=ContextWindowsConfig,
206
+ description="Context window sizes per model (tokens). Set to 200000 if not on tier 4+.",
207
+ )
175
208
  git: GitConfig = Field(
176
209
  default_factory=GitConfig,
177
210
  description="Git configuration (target branch, auto-push).",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-task-master
3
- Version: 0.1.10
3
+ Version: 0.1.12
4
4
  Summary: Autonomous task orchestration system that keeps Claude working until a goal is achieved
5
5
  Author: Claude Task Master Team
6
6
  License-Expression: MIT
@@ -19,7 +19,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
19
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
20
20
  Requires-Python: >=3.12
21
21
  Description-Content-Type: text/markdown
22
- Requires-Dist: claude-agent-sdk>=0.1.30
22
+ Requires-Dist: claude-agent-sdk<0.1.29,>=0.1.27
23
23
  Requires-Dist: typer>=0.12.0
24
24
  Requires-Dist: pydantic>=2.0.0
25
25
  Requires-Dist: rich>=14.3.2
@@ -295,9 +295,14 @@ This creates `.claude-task-master/config.json`:
295
295
  },
296
296
  "models": {
297
297
  "sonnet": "claude-sonnet-4-5-20250929",
298
- "opus": "claude-opus-4-5-20251101",
298
+ "opus": "claude-opus-4-6",
299
299
  "haiku": "claude-haiku-4-5-20251001"
300
300
  },
301
+ "context_windows": {
302
+ "opus": 200000,
303
+ "sonnet": 200000,
304
+ "haiku": 200000
305
+ },
301
306
  "git": {
302
307
  "target_branch": "main",
303
308
  "auto_push": true
@@ -305,6 +310,15 @@ This creates `.claude-task-master/config.json`:
305
310
  }
306
311
  ```
307
312
 
313
+ > **Note:** Opus 4.6 and Sonnet 4.5 support a 1M token context window in beta (**tier 4+** API access required). If you have tier 4+ access, you can increase the context windows:
314
+ > ```json
315
+ > "context_windows": {
316
+ > "opus": 1000000,
317
+ > "sonnet": 1000000,
318
+ > "haiku": 200000
319
+ > }
320
+ > ```
321
+
308
322
  ### Environment Variables
309
323
 
310
324
  The config file sets these environment variables before Python starts:
@@ -1,4 +1,4 @@
1
- claude_task_master/__init__.py,sha256=FM8X1pOP-O8f-7DZXsRpUbBJ3ztwsqBsi9AEGfwlLSI,188
1
+ claude_task_master/__init__.py,sha256=tvO9bo8JqK7OC80chiOS0IoIwHngNZiY2mK1K6TQnCw,188
2
2
  claude_task_master/cli.py,sha256=b2nowi18sFSX8pLZiFKjQqDp7cvRWRnNayN96n-d770,6238
3
3
  claude_task_master/server.py,sha256=a39yqwj2gZWpAPOzU9E3yj8ds7wmSqevOyiI7QHu_EQ,15791
4
4
  claude_task_master/wrapper.py,sha256=NQywkv06-4jkBz4lFPkQvDrr8TEMgyAqYWEnQI2fgck,6001
@@ -13,7 +13,7 @@ claude_task_master/api/server.py,sha256=xWBKKe_SMfnZuJkO9JoU-diACpd03N1SN_Sv1S0U
13
13
  claude_task_master/auth/__init__.py,sha256=etobJkCGD7pUDsLArWMru4NC1fP_MLUnuCTP5htdsYU,2665
14
14
  claude_task_master/auth/middleware.py,sha256=qeyEQHfXMtlad9bYFqJon7ScisF8JUXUSOjGFnTsx6M,14151
15
15
  claude_task_master/auth/password.py,sha256=t4c5REJ7eD8P7gsDsKrEEJeVNF7bX017HUXGjD03_yQ,10245
16
- claude_task_master/bin/claudetm,sha256=lnWkVHSRCTjr-mAqs_N2tdmsjb7BN5lZZGsLRWtRqpU,16650
16
+ claude_task_master/bin/claudetm,sha256=Ie8K20_fg0dx7cfFOU6U4NqAoTeCp4u3a0FAXip9dmU,16747
17
17
  claude_task_master/cli_commands/__init__.py,sha256=M3m3Gx0htC5IlUVaUNTbt8nQQVKIrk1ep-pjml153G0,449
18
18
  claude_task_master/cli_commands/ci_helpers.py,sha256=NgUu2qPmCntMQ89_yQIZ4DdW30AAroonOJt6e12aWoQ,3693
19
19
  claude_task_master/cli_commands/config.py,sha256=iqfgP4yQvoqG5_y3UTAddxfHjD31vcRZ1hI5gOlWnvw,6462
@@ -24,16 +24,16 @@ claude_task_master/cli_commands/github.py,sha256=x8UcAqBRdGUau0frkzkoeOmZ5xaN4AF
24
24
  claude_task_master/cli_commands/info.py,sha256=jmzslLMiVk3ZyGBsVxNSfoe1qLJsuCG9Zqz57zYauRE,6084
25
25
  claude_task_master/cli_commands/mailbox.py,sha256=SJzZxzxpkIv4cwXA-8gaVzqTJuqh1rwxQ4TeL-VmDE4,9291
26
26
  claude_task_master/cli_commands/workflow.py,sha256=mcFOG2_4r-o0GMvhIO9GQC7_z8RPCxytd8C0jTiYMr8,17270
27
- claude_task_master/core/__init__.py,sha256=nmwC07VqpbuogTYbXTYhb0KJifwsrF922FepWEHnpyc,8945
27
+ claude_task_master/core/__init__.py,sha256=ao9bc5GLYJzsx9T2D-MqVYDx1eqk8BTvCboJ2HgZj4M,8995
28
28
  claude_task_master/core/agent.py,sha256=snQmeZx4xvREuuIv-L3IlN6V7kZC0FH1BSqH41ckXVs,12064
29
29
  claude_task_master/core/agent_exceptions.py,sha256=TjPlGXQhGjWof1kENyRmBowRNRay4SXL0YCH_VYsq4g,6354
30
30
  claude_task_master/core/agent_message.py,sha256=gelItCmxluOHwiNzBQhJ-skNzFVxCVDe_qBmr6MnYao,7809
31
- claude_task_master/core/agent_models.py,sha256=06kTenpOHKDFt8tOqa9h5-4fvjkwNxm2MDC3FzbbmoQ,6551
31
+ claude_task_master/core/agent_models.py,sha256=PDAezIfVMb001NBg0KWImhZlnE2hk6LK6x2rFlu56kg,7560
32
32
  claude_task_master/core/agent_phases.py,sha256=XfXPLDcOeSthIm-v0uZNmgW-7gfueNnIGqqh_7-aMzA,13380
33
33
  claude_task_master/core/agent_query.py,sha256=lu6-X3AdNC4t-THZf6Qc2lBIpwhmm7bhgWqezSbOOGY,17269
34
34
  claude_task_master/core/checkpoint.py,sha256=qwW_Qj1yjNNuyBZEAj91bOGhn1yCsjqOccGn3XFIPRg,7142
35
35
  claude_task_master/core/circuit_breaker.py,sha256=kXVgLDVy5_kie65frVPkrcPMmm6FWSHOqwfTe7Isebk,13545
36
- claude_task_master/core/config.py,sha256=ei6M6jdSVsM66HQ9xrN2Do8-ve44mZwWC3VXEUnBzU0,8665
36
+ claude_task_master/core/config.py,sha256=eXGE4tzmH81uc9z1PE-zgf5plE0t8UqwJ0MrzINvtaQ,9789
37
37
  claude_task_master/core/config_loader.py,sha256=FWUSGKaef3DjiJPKCNL9hyJZ03RO9H9-P-9DJDOPL_c,16405
38
38
  claude_task_master/core/console.py,sha256=GQ71zKDt0mb0bhnwkrfNxBiX4jHfFmFjNjFefTjVpiM,4208
39
39
  claude_task_master/core/context_accumulator.py,sha256=q-T6jhX1UWHNKZ3mawXKRTUZQHxdLP88tcWtLPH_cOM,1527
@@ -89,8 +89,8 @@ claude_task_master/webhooks/__init__.py,sha256=bJfQBkSRZCOaVNnOg7PlG-FbwJV4YsySD
89
89
  claude_task_master/webhooks/client.py,sha256=DEz3vrNmuTBPp2t_rK515zRRKJAzFxxL8B9iCbXRuEU,24589
90
90
  claude_task_master/webhooks/config.py,sha256=cufVrl94zSSubpoNFWVYp5ht2Okf_K_8UAQfFsaaOIE,19230
91
91
  claude_task_master/webhooks/events.py,sha256=V-kWjb6QF2PpFJ3FtSP6hGP-Ivhdt2Tg71g6NXi1iwY,32141
92
- claude_task_master-0.1.10.dist-info/METADATA,sha256=vjkSZyIy0Zg_nLXZXbD6CudonMWn-qjUvtHnLYQoZm0,29955
93
- claude_task_master-0.1.10.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
94
- claude_task_master-0.1.10.dist-info/entry_points.txt,sha256=vpjSBkvZSSZ1WmmNSbiszyiiy-fAvtmmaOTOyLnufqM,251
95
- claude_task_master-0.1.10.dist-info/top_level.txt,sha256=Axj8q87a_7qo5JyjdIFe9ebs4BFOnuDt_gdxHqSDwqc,19
96
- claude_task_master-0.1.10.dist-info/RECORD,,
92
+ claude_task_master-0.1.12.dist-info/METADATA,sha256=YuCjb5XkCVtbI_sIwlLjHTEOEY7GTRQz0K8AWtsZT4A,30331
93
+ claude_task_master-0.1.12.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
94
+ claude_task_master-0.1.12.dist-info/entry_points.txt,sha256=vpjSBkvZSSZ1WmmNSbiszyiiy-fAvtmmaOTOyLnufqM,251
95
+ claude_task_master-0.1.12.dist-info/top_level.txt,sha256=Axj8q87a_7qo5JyjdIFe9ebs4BFOnuDt_gdxHqSDwqc,19
96
+ claude_task_master-0.1.12.dist-info/RECORD,,