evolvingmachines-evolve 0.0.55.dev1355__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.
- bridge/__init__.py +5 -0
- bridge/dist/bridge.bundle.cjs +1275 -0
- evolve/__init__.py +819 -0
- evolve/_http.py +71 -0
- evolve/agent.py +896 -0
- evolve/bridge.py +509 -0
- evolve/browser_credentials.py +265 -0
- evolve/browser_profiles.py +95 -0
- evolve/config.py +600 -0
- evolve/hosted.py +8958 -0
- evolve/integrations.py +173 -0
- evolve/managed_secrets.py +175 -0
- evolve/pipeline/__init__.py +59 -0
- evolve/pipeline/pipeline.py +512 -0
- evolve/pipeline/types.py +286 -0
- evolve/prompts/__init__.py +132 -0
- evolve/prompts/agent_md/judge.md +30 -0
- evolve/prompts/agent_md/reduce.md +7 -0
- evolve/prompts/agent_md/verify.md +33 -0
- evolve/prompts/user/judge.md +1 -0
- evolve/prompts/user/retry_feedback.md +9 -0
- evolve/prompts/user/verify.md +1 -0
- evolve/py.typed +0 -0
- evolve/results.py +315 -0
- evolve/retry.py +133 -0
- evolve/schema.py +107 -0
- evolve/sessions_client.py +167 -0
- evolve/storage_client.py +178 -0
- evolve/swarm/__init__.py +75 -0
- evolve/swarm/results.py +140 -0
- evolve/swarm/swarm.py +2116 -0
- evolve/swarm/types.py +241 -0
- evolve/utils.py +227 -0
- evolvingmachines_evolve-0.0.55.dev1355.dist-info/METADATA +52 -0
- evolvingmachines_evolve-0.0.55.dev1355.dist-info/RECORD +38 -0
- evolvingmachines_evolve-0.0.55.dev1355.dist-info/WHEEL +5 -0
- evolvingmachines_evolve-0.0.55.dev1355.dist-info/licenses/LICENSE +201 -0
- evolvingmachines_evolve-0.0.55.dev1355.dist-info/top_level.txt +2 -0
evolve/__init__.py
ADDED
|
@@ -0,0 +1,819 @@
|
|
|
1
|
+
"""Evolve Python SDK - Pythonic wrapper around the TypeScript Evolve SDK."""
|
|
2
|
+
|
|
3
|
+
from .agent import Evolve
|
|
4
|
+
from .config import (
|
|
5
|
+
AgentConfig,
|
|
6
|
+
E2BProvider,
|
|
7
|
+
ManagedProvider,
|
|
8
|
+
DaytonaProvider,
|
|
9
|
+
ModalProvider,
|
|
10
|
+
SandboxCreateOptions,
|
|
11
|
+
SandboxNetworkPolicy,
|
|
12
|
+
SandboxProvider,
|
|
13
|
+
AgentType,
|
|
14
|
+
WorkspaceMode,
|
|
15
|
+
BrowserProvider,
|
|
16
|
+
BrowserConfig,
|
|
17
|
+
BrowserCredentialScopeEntry,
|
|
18
|
+
BrowserCredentialsConfig,
|
|
19
|
+
BrowserCredentialsClientConfig,
|
|
20
|
+
BrowserProfilesClientConfig,
|
|
21
|
+
ManagedSecretRef,
|
|
22
|
+
ManagedSecretsClientConfig,
|
|
23
|
+
AgentPluginConfig,
|
|
24
|
+
ReasoningEffort,
|
|
25
|
+
AgentPreset,
|
|
26
|
+
ValidationMode,
|
|
27
|
+
SchemaOptions,
|
|
28
|
+
IntegrationsConfig,
|
|
29
|
+
IntegrationsSetup,
|
|
30
|
+
IntegrationToolsFilter,
|
|
31
|
+
StorageConfig,
|
|
32
|
+
StorageCredentials,
|
|
33
|
+
SessionsConfig,
|
|
34
|
+
HostedClientConfig,
|
|
35
|
+
)
|
|
36
|
+
from .hosted import (
|
|
37
|
+
EFFORT_SUPPORT_VALUES,
|
|
38
|
+
ActiveDataset,
|
|
39
|
+
Agent,
|
|
40
|
+
AnalysesClient,
|
|
41
|
+
AnalysisPage,
|
|
42
|
+
AnalysisLabel,
|
|
43
|
+
AnalysisStatus,
|
|
44
|
+
Check,
|
|
45
|
+
CheckConfigInput,
|
|
46
|
+
CheckPage,
|
|
47
|
+
CheckSource,
|
|
48
|
+
CheckLabel,
|
|
49
|
+
CheckStatus,
|
|
50
|
+
ChecksClient,
|
|
51
|
+
TaskCheck,
|
|
52
|
+
JobListScope,
|
|
53
|
+
AgentArm,
|
|
54
|
+
AgentCapability,
|
|
55
|
+
AgentDatasetStats,
|
|
56
|
+
AgentInfo,
|
|
57
|
+
AgentModelOption,
|
|
58
|
+
AgentPage,
|
|
59
|
+
AgentResult,
|
|
60
|
+
AgentsClient,
|
|
61
|
+
AnalysisCheck,
|
|
62
|
+
AnalysisEvidence,
|
|
63
|
+
AnalysisFailure,
|
|
64
|
+
AnalyzeConfig,
|
|
65
|
+
AnalyzeConfigInput,
|
|
66
|
+
ApiKey,
|
|
67
|
+
AttemptPhase,
|
|
68
|
+
AuthClient,
|
|
69
|
+
AuthStatus,
|
|
70
|
+
Organization,
|
|
71
|
+
OrganizationDetail,
|
|
72
|
+
OrgQuota,
|
|
73
|
+
OrgRole,
|
|
74
|
+
OrgUsage,
|
|
75
|
+
OrgsClient,
|
|
76
|
+
CapabilityDocument,
|
|
77
|
+
CompareCell,
|
|
78
|
+
CompareCoverage,
|
|
79
|
+
CompareJobAggregate,
|
|
80
|
+
CompareResponse,
|
|
81
|
+
CompareTaskRow,
|
|
82
|
+
Dataset,
|
|
83
|
+
DatasetFailedTask,
|
|
84
|
+
DatasetImport,
|
|
85
|
+
DatasetImportFailure,
|
|
86
|
+
DatasetImportProgress,
|
|
87
|
+
DatasetManifestAuthor,
|
|
88
|
+
DatasetManifestMetadata,
|
|
89
|
+
DatasetImportPage,
|
|
90
|
+
JobImport,
|
|
91
|
+
JobImportFailure,
|
|
92
|
+
JobImportPage,
|
|
93
|
+
JobImportPhaseProgress,
|
|
94
|
+
JobImportProgress,
|
|
95
|
+
JobImportSkippedTrial,
|
|
96
|
+
JobImportSource,
|
|
97
|
+
JobTaskLink,
|
|
98
|
+
TrialTaskLink,
|
|
99
|
+
TASK_LINKED_BY,
|
|
100
|
+
TASK_LINK_REASONS,
|
|
101
|
+
DatasetPage,
|
|
102
|
+
DatasetPreflight,
|
|
103
|
+
PreflightDeferredCheck,
|
|
104
|
+
PreflightManifestVerdict,
|
|
105
|
+
PreflightTaskVerdict,
|
|
106
|
+
TaskNote,
|
|
107
|
+
DatasetRef,
|
|
108
|
+
DatasetSelector,
|
|
109
|
+
DatasetVersion,
|
|
110
|
+
DatasetVersionArchiveSource,
|
|
111
|
+
DatasetVersionArchiveUrlSource,
|
|
112
|
+
DatasetVersionGitSource,
|
|
113
|
+
DatasetVersionHubSource,
|
|
114
|
+
DatasetVersionSource,
|
|
115
|
+
DatasetsClient,
|
|
116
|
+
EvalSandboxProvider,
|
|
117
|
+
EvolveAPIError,
|
|
118
|
+
EvolveDigestMismatchError,
|
|
119
|
+
EvolveIncompleteDownloadError,
|
|
120
|
+
ExceptionInfo,
|
|
121
|
+
HostedEvolve,
|
|
122
|
+
HOSTED_ERROR_CODES,
|
|
123
|
+
HostedErrorCode,
|
|
124
|
+
ImportSettleError,
|
|
125
|
+
ImportTaskFailure,
|
|
126
|
+
ImportCodeBuildMeter,
|
|
127
|
+
ImportImageCounts,
|
|
128
|
+
ImportPhaseProgress,
|
|
129
|
+
ImportWarning,
|
|
130
|
+
Job,
|
|
131
|
+
JobAnalysisStats,
|
|
132
|
+
JobBuildExclusion,
|
|
133
|
+
JobCounts,
|
|
134
|
+
JobDeleteResult,
|
|
135
|
+
JobEvent,
|
|
136
|
+
JobEventType,
|
|
137
|
+
InfraFailureSignature,
|
|
138
|
+
JobFailure,
|
|
139
|
+
JobPage,
|
|
140
|
+
JobRetryConfig,
|
|
141
|
+
JobRetryConfigInput,
|
|
142
|
+
JobSecretRef,
|
|
143
|
+
JobSecretInline,
|
|
144
|
+
JobStats,
|
|
145
|
+
JobStatus,
|
|
146
|
+
JobTaskRollup,
|
|
147
|
+
JobTaskRollupPage,
|
|
148
|
+
JobsClient,
|
|
149
|
+
JudgeResult,
|
|
150
|
+
ModelInfo,
|
|
151
|
+
NoActiveVersionError,
|
|
152
|
+
ManagedProviderCapability,
|
|
153
|
+
PassAtKGroup,
|
|
154
|
+
PassAtKPoint,
|
|
155
|
+
ProviderCapability,
|
|
156
|
+
ReportedAgentResult,
|
|
157
|
+
ReportedTotals,
|
|
158
|
+
SkillLock,
|
|
159
|
+
SkillUpload,
|
|
160
|
+
SkillUploadPage,
|
|
161
|
+
SkillsClient,
|
|
162
|
+
SourceJob,
|
|
163
|
+
SpendSource,
|
|
164
|
+
StatusVocabulary,
|
|
165
|
+
StopResponse,
|
|
166
|
+
Task,
|
|
167
|
+
TaskBuild,
|
|
168
|
+
TaskBuildFailure,
|
|
169
|
+
TaskPage,
|
|
170
|
+
TaskProviderVerdict,
|
|
171
|
+
TimingInfo,
|
|
172
|
+
TraceEvent,
|
|
173
|
+
TraceEventPage,
|
|
174
|
+
GATEWAY_TRACE_SEQ_BASE,
|
|
175
|
+
gateway_usage_of,
|
|
176
|
+
JobGrepGroup,
|
|
177
|
+
JobGrepPage,
|
|
178
|
+
Rubric,
|
|
179
|
+
RubricCriterion,
|
|
180
|
+
Trial,
|
|
181
|
+
TrialAnalysis,
|
|
182
|
+
TrialFile,
|
|
183
|
+
TrialFilePage,
|
|
184
|
+
TrialPage,
|
|
185
|
+
TrialRetry,
|
|
186
|
+
TrialStatus,
|
|
187
|
+
TrialTally,
|
|
188
|
+
TrialUploadProvenance,
|
|
189
|
+
TrialsClient,
|
|
190
|
+
UploadProvenance,
|
|
191
|
+
UpstreamStatus,
|
|
192
|
+
VerifierEnvironmentMode,
|
|
193
|
+
VerifierResult,
|
|
194
|
+
is_hosted_error_code,
|
|
195
|
+
meta,
|
|
196
|
+
pass_at_k,
|
|
197
|
+
)
|
|
198
|
+
from .results import (
|
|
199
|
+
AgentResponse,
|
|
200
|
+
CheckpointInfo,
|
|
201
|
+
ExecuteResult,
|
|
202
|
+
OutputResult,
|
|
203
|
+
RunCost,
|
|
204
|
+
SessionCost,
|
|
205
|
+
SessionStatus,
|
|
206
|
+
SessionInfo,
|
|
207
|
+
SessionPage,
|
|
208
|
+
SessionEvent,
|
|
209
|
+
SessionTranscript,
|
|
210
|
+
BrowserReplay,
|
|
211
|
+
UsageReading,
|
|
212
|
+
)
|
|
213
|
+
from .storage_client import StorageClient
|
|
214
|
+
from .sessions_client import SessionsClient
|
|
215
|
+
from .browser_credentials import BrowserCredentialsClient, BrowserCredentialMetadata, BrowserCredentialsPage
|
|
216
|
+
from .browser_profiles import BrowserProfilesClient, BrowserProfileMetadata, BrowserProfilesPage
|
|
217
|
+
from .managed_secrets import (
|
|
218
|
+
ManagedSecretsClient,
|
|
219
|
+
ManagedSecretMetadata,
|
|
220
|
+
ManagedSecretWriteResult,
|
|
221
|
+
ManagedSecretDeleteResult,
|
|
222
|
+
)
|
|
223
|
+
from .utils import read_local_dir, save_local_dir
|
|
224
|
+
from .bridge import (
|
|
225
|
+
SandboxNotFoundError,
|
|
226
|
+
BridgeConnectionError,
|
|
227
|
+
BridgeBuildError,
|
|
228
|
+
)
|
|
229
|
+
from .retry import RetryConfig, OnItemRetryCallback, execute_with_retry
|
|
230
|
+
from .swarm import (
|
|
231
|
+
Swarm,
|
|
232
|
+
SwarmConfig,
|
|
233
|
+
BestOfConfig,
|
|
234
|
+
VerifyConfig,
|
|
235
|
+
SwarmResult,
|
|
236
|
+
SwarmResultList,
|
|
237
|
+
ReduceResult,
|
|
238
|
+
BestOfResult,
|
|
239
|
+
BestOfInfo,
|
|
240
|
+
VerifyInfo,
|
|
241
|
+
IndexedMeta,
|
|
242
|
+
ReduceMeta,
|
|
243
|
+
JudgeMeta,
|
|
244
|
+
VerifyMeta,
|
|
245
|
+
VerifyDecision,
|
|
246
|
+
is_swarm_result,
|
|
247
|
+
# Callback types
|
|
248
|
+
OnCandidateCompleteCallback,
|
|
249
|
+
OnJudgeCompleteCallback,
|
|
250
|
+
OnWorkerCompleteCallback,
|
|
251
|
+
OnVerifierCompleteCallback,
|
|
252
|
+
)
|
|
253
|
+
from .pipeline import (
|
|
254
|
+
Pipeline,
|
|
255
|
+
TerminalPipeline,
|
|
256
|
+
MapConfig,
|
|
257
|
+
FilterConfig,
|
|
258
|
+
ReduceConfig,
|
|
259
|
+
StepResult,
|
|
260
|
+
PipelineResult,
|
|
261
|
+
PipelineEvents,
|
|
262
|
+
StepStartEvent,
|
|
263
|
+
StepCompleteEvent,
|
|
264
|
+
StepErrorEvent,
|
|
265
|
+
ItemRetryEvent,
|
|
266
|
+
WorkerCompleteEvent,
|
|
267
|
+
VerifierCompleteEvent,
|
|
268
|
+
CandidateCompleteEvent,
|
|
269
|
+
JudgeCompleteEvent,
|
|
270
|
+
EmitOption,
|
|
271
|
+
)
|
|
272
|
+
|
|
273
|
+
from typing import List, Optional
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
def storage(config: Optional[StorageConfig] = None) -> StorageClient:
|
|
277
|
+
"""Create a standalone storage client for checkpoint browsing and download.
|
|
278
|
+
|
|
279
|
+
Returns a ``StorageClient`` that manages its own bridge subprocess.
|
|
280
|
+
Use as an async context manager to ensure cleanup.
|
|
281
|
+
|
|
282
|
+
Args:
|
|
283
|
+
config: Storage configuration (BYOK S3 or None for gateway mode)
|
|
284
|
+
|
|
285
|
+
Returns:
|
|
286
|
+
StorageClient with list_checkpoints, get_checkpoint,
|
|
287
|
+
download_checkpoint, download_files methods
|
|
288
|
+
|
|
289
|
+
Example:
|
|
290
|
+
>>> from evolve import storage, StorageConfig
|
|
291
|
+
>>>
|
|
292
|
+
>>> # BYOK mode
|
|
293
|
+
>>> async with storage(StorageConfig(url='s3://my-bucket/')) as store:
|
|
294
|
+
... checkpoints = await store.list_checkpoints(limit=5)
|
|
295
|
+
... files = await store.download_files(checkpoints[0].id)
|
|
296
|
+
>>>
|
|
297
|
+
>>> # Gateway mode (uses EVOLVE_API_KEY)
|
|
298
|
+
>>> async with storage() as store:
|
|
299
|
+
... checkpoints = await store.list_checkpoints()
|
|
300
|
+
"""
|
|
301
|
+
from .bridge import BridgeManager
|
|
302
|
+
bridge = BridgeManager()
|
|
303
|
+
return StorageClient(bridge, config or StorageConfig(), _owns_bridge=True)
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
def sessions(config: Optional[SessionsConfig] = None) -> SessionsClient:
|
|
307
|
+
"""Create a standalone sessions client for historical traces and past sessions.
|
|
308
|
+
|
|
309
|
+
Returns a ``SessionsClient`` that manages its own bridge subprocess.
|
|
310
|
+
Use as an async context manager to ensure cleanup.
|
|
311
|
+
|
|
312
|
+
Gateway-only: requires ``EVOLVE_API_KEY`` unless ``SessionsConfig(api_key=...)``
|
|
313
|
+
is provided.
|
|
314
|
+
|
|
315
|
+
Args:
|
|
316
|
+
config: Optional API key / dashboard URL overrides
|
|
317
|
+
|
|
318
|
+
Returns:
|
|
319
|
+
SessionsClient with list, get, events, download, browser_replay methods
|
|
320
|
+
|
|
321
|
+
Example:
|
|
322
|
+
>>> from evolve import sessions
|
|
323
|
+
>>>
|
|
324
|
+
>>> async with sessions() as client:
|
|
325
|
+
... page = await client.list(limit=10, state='ended')
|
|
326
|
+
... trace = await client.get(page.items[0].id)
|
|
327
|
+
... await client.download(trace.id, to='./traces')
|
|
328
|
+
... await client.browser_replay(trace.id)
|
|
329
|
+
"""
|
|
330
|
+
from .bridge import BridgeManager
|
|
331
|
+
bridge = BridgeManager()
|
|
332
|
+
return SessionsClient(bridge, config or SessionsConfig(), _owns_bridge=True)
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
def browser_credentials(config: Optional[BrowserCredentialsClientConfig] = None) -> BrowserCredentialsClient:
|
|
336
|
+
"""Create a standalone browser credentials client.
|
|
337
|
+
|
|
338
|
+
Uses EVOLVE_API_KEY unless BrowserCredentialsClientConfig(api_key=...) is provided.
|
|
339
|
+
Passwords are encrypted locally before they are sent to the dashboard.
|
|
340
|
+
"""
|
|
341
|
+
return BrowserCredentialsClient(config or BrowserCredentialsClientConfig())
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
def browser_profiles(config: Optional[BrowserProfilesClientConfig] = None) -> BrowserProfilesClient:
|
|
345
|
+
"""Create a standalone browser profiles client.
|
|
346
|
+
|
|
347
|
+
Uses EVOLVE_API_KEY unless BrowserProfilesClientConfig(api_key=...) is provided.
|
|
348
|
+
"""
|
|
349
|
+
return BrowserProfilesClient(config or BrowserProfilesClientConfig())
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
def datasets(config: Optional[HostedClientConfig] = None) -> DatasetsClient:
|
|
353
|
+
"""Create a standalone hosted-evals datasets client (shared catalog).
|
|
354
|
+
|
|
355
|
+
Uses EVOLVE_API_KEY unless HostedClientConfig(api_key=...) is provided.
|
|
356
|
+
"""
|
|
357
|
+
return DatasetsClient(config)
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
def agents(config: Optional[HostedClientConfig] = None) -> AgentsClient:
|
|
361
|
+
"""Create a standalone hosted-evals registered-agents client.
|
|
362
|
+
|
|
363
|
+
Register a private agent once, then name it in job agents[].name
|
|
364
|
+
exactly like a built-in. Uses EVOLVE_API_KEY unless
|
|
365
|
+
HostedClientConfig(api_key=...) is provided.
|
|
366
|
+
"""
|
|
367
|
+
return AgentsClient(config)
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
def hosted(config: Optional[HostedClientConfig] = None) -> HostedEvolve:
|
|
371
|
+
"""Open the hosted surface with ONE configuration.
|
|
372
|
+
|
|
373
|
+
Named ``hosted()`` rather than ``evolve()`` deliberately: ``Evolve`` is
|
|
374
|
+
already the local-sandbox class in this same package, and two exports one
|
|
375
|
+
shift key apart that do completely different things is a trap. ``hosted()``
|
|
376
|
+
says which half of the SDK you are reaching for.
|
|
377
|
+
|
|
378
|
+
The four clients underneath are built lazily, so ``await hosted().meta()``
|
|
379
|
+
works with no API key configured::
|
|
380
|
+
|
|
381
|
+
from evolve import hosted
|
|
382
|
+
|
|
383
|
+
client = hosted()
|
|
384
|
+
doc = await client.meta() # public, no key needed
|
|
385
|
+
job = await client.jobs.start(...) # needs EVOLVE_API_KEY
|
|
386
|
+
"""
|
|
387
|
+
return HostedEvolve(config)
|
|
388
|
+
|
|
389
|
+
|
|
390
|
+
def jobs(config: Optional[HostedClientConfig] = None) -> JobsClient:
|
|
391
|
+
"""Create a standalone hosted-evals jobs client.
|
|
392
|
+
|
|
393
|
+
Uses EVOLVE_API_KEY unless HostedClientConfig(api_key=...) is provided.
|
|
394
|
+
watch() consumes the job's server-sent event stream until the job is
|
|
395
|
+
terminal, mirroring the TypeScript SDK.
|
|
396
|
+
"""
|
|
397
|
+
return JobsClient(config)
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
def trials(config: Optional[HostedClientConfig] = None) -> TrialsClient:
|
|
401
|
+
"""Create a standalone hosted-evals trials client.
|
|
402
|
+
|
|
403
|
+
A trial id is globally addressable — no method takes a job id. Uses
|
|
404
|
+
EVOLVE_API_KEY unless HostedClientConfig(api_key=...) is provided.
|
|
405
|
+
"""
|
|
406
|
+
return TrialsClient(config)
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
def analyses(config: Optional[HostedClientConfig] = None) -> AnalysesClient:
|
|
410
|
+
"""Create a standalone hosted-evals analyses client.
|
|
411
|
+
|
|
412
|
+
The catalog of trace-analysis runs (``list()``), each row carrying the
|
|
413
|
+
trial, job, and task it judged. Uses EVOLVE_API_KEY unless
|
|
414
|
+
HostedClientConfig(api_key=...) is provided.
|
|
415
|
+
"""
|
|
416
|
+
return AnalysesClient(config)
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
def checks(config: Optional[HostedClientConfig] = None) -> ChecksClient:
|
|
420
|
+
"""Create a standalone hosted-evals checks client.
|
|
421
|
+
|
|
422
|
+
Task quality checks — Harbor's ``harbor check <PATH>``, hosted: upload a
|
|
423
|
+
task directory (or a directory of them), read the report, list your
|
|
424
|
+
checks. Uses EVOLVE_API_KEY unless HostedClientConfig(api_key=...) is
|
|
425
|
+
provided.
|
|
426
|
+
"""
|
|
427
|
+
return ChecksClient(config)
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
def skills(config: Optional[HostedClientConfig] = None) -> SkillsClient:
|
|
431
|
+
"""Create a standalone hosted-evals skills client (platform uploads).
|
|
432
|
+
|
|
433
|
+
An uploaded skill is an immutable folder referenced as ``upload:<id>`` in
|
|
434
|
+
job ``agents[].skills``, next to skills.sh and git references. Uses
|
|
435
|
+
EVOLVE_API_KEY unless HostedClientConfig(api_key=...) is provided.
|
|
436
|
+
"""
|
|
437
|
+
return SkillsClient(config)
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
def auth(config: Optional[HostedClientConfig] = None) -> AuthClient:
|
|
441
|
+
"""Create a standalone hosted-evals auth client (caller identity).
|
|
442
|
+
|
|
443
|
+
Wave-gated: until the server's wave lands, status() reports the route's
|
|
444
|
+
not-found as the API error it is. Uses EVOLVE_API_KEY unless
|
|
445
|
+
HostedClientConfig(api_key=...) is provided.
|
|
446
|
+
"""
|
|
447
|
+
return AuthClient(config)
|
|
448
|
+
|
|
449
|
+
|
|
450
|
+
def orgs(config: Optional[HostedClientConfig] = None) -> OrgsClient:
|
|
451
|
+
"""Create a standalone hosted-evals organizations client (the read pair).
|
|
452
|
+
|
|
453
|
+
``list()`` — every organization you belong to; ``get(slug)`` — one
|
|
454
|
+
organization's role, member count, quota and usage. Uses EVOLVE_API_KEY
|
|
455
|
+
unless HostedClientConfig(api_key=...) is provided.
|
|
456
|
+
"""
|
|
457
|
+
return OrgsClient(config)
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
def managed_secrets(config: Optional[ManagedSecretsClientConfig] = None) -> ManagedSecretsClient:
|
|
461
|
+
"""Create a standalone managed secrets client.
|
|
462
|
+
|
|
463
|
+
Uses EVOLVE_API_KEY unless ManagedSecretsClientConfig(api_key=...) is provided.
|
|
464
|
+
Values are never returned.
|
|
465
|
+
"""
|
|
466
|
+
return ManagedSecretsClient(config or ManagedSecretsClientConfig())
|
|
467
|
+
|
|
468
|
+
|
|
469
|
+
async def list_checkpoints(
|
|
470
|
+
storage: Optional[StorageConfig] = None,
|
|
471
|
+
limit: Optional[int] = None,
|
|
472
|
+
tag: Optional[str] = None,
|
|
473
|
+
) -> List[CheckpointInfo]:
|
|
474
|
+
"""List checkpoints without creating a full Evolve instance.
|
|
475
|
+
|
|
476
|
+
Uses the lightweight :class:`StorageClient` path instead of a full
|
|
477
|
+
Evolve initialization (no agent/sandbox setup needed).
|
|
478
|
+
|
|
479
|
+
Args:
|
|
480
|
+
storage: Storage configuration (BYOK S3 or None for gateway mode)
|
|
481
|
+
limit: Maximum number of checkpoints to return
|
|
482
|
+
tag: Filter by session tag
|
|
483
|
+
|
|
484
|
+
Returns:
|
|
485
|
+
List of CheckpointInfo sorted by newest first
|
|
486
|
+
|
|
487
|
+
Example:
|
|
488
|
+
>>> from evolve import list_checkpoints, StorageConfig
|
|
489
|
+
>>> checkpoints = await list_checkpoints(
|
|
490
|
+
... storage=StorageConfig(url='s3://my-bucket/prefix/'),
|
|
491
|
+
... limit=10,
|
|
492
|
+
... )
|
|
493
|
+
"""
|
|
494
|
+
from .bridge import BridgeManager
|
|
495
|
+
bridge = BridgeManager()
|
|
496
|
+
store = StorageClient(bridge, storage or StorageConfig(), _owns_bridge=True)
|
|
497
|
+
try:
|
|
498
|
+
return await store.list_checkpoints(limit=limit, tag=tag)
|
|
499
|
+
finally:
|
|
500
|
+
await store.close()
|
|
501
|
+
|
|
502
|
+
|
|
503
|
+
__version__ = '0.0.55.dev1355'
|
|
504
|
+
|
|
505
|
+
__all__ = [
|
|
506
|
+
# Main classes
|
|
507
|
+
'Evolve',
|
|
508
|
+
'Swarm',
|
|
509
|
+
'Pipeline',
|
|
510
|
+
'TerminalPipeline',
|
|
511
|
+
|
|
512
|
+
# Evolve Configuration
|
|
513
|
+
'AgentConfig',
|
|
514
|
+
'E2BProvider',
|
|
515
|
+
'ManagedProvider',
|
|
516
|
+
'DaytonaProvider',
|
|
517
|
+
'ModalProvider',
|
|
518
|
+
'SandboxProvider',
|
|
519
|
+
'AgentType',
|
|
520
|
+
'WorkspaceMode',
|
|
521
|
+
'BrowserProvider',
|
|
522
|
+
'BrowserConfig',
|
|
523
|
+
'BrowserCredentialScopeEntry',
|
|
524
|
+
'BrowserCredentialsConfig',
|
|
525
|
+
'BrowserCredentialsClientConfig',
|
|
526
|
+
'BrowserProfilesClientConfig',
|
|
527
|
+
'ManagedSecretRef',
|
|
528
|
+
'ManagedSecretsClientConfig',
|
|
529
|
+
'AgentPluginConfig',
|
|
530
|
+
'ReasoningEffort',
|
|
531
|
+
'AgentPreset',
|
|
532
|
+
'ValidationMode',
|
|
533
|
+
'SchemaOptions',
|
|
534
|
+
'IntegrationsConfig',
|
|
535
|
+
'IntegrationsSetup',
|
|
536
|
+
'IntegrationToolsFilter',
|
|
537
|
+
'StorageConfig',
|
|
538
|
+
'StorageCredentials',
|
|
539
|
+
'SessionsConfig',
|
|
540
|
+
'BrowserCredentialsClient',
|
|
541
|
+
'BrowserCredentialMetadata',
|
|
542
|
+
'BrowserCredentialsPage',
|
|
543
|
+
'BrowserProfilesClient',
|
|
544
|
+
'BrowserProfileMetadata',
|
|
545
|
+
'BrowserProfilesPage',
|
|
546
|
+
'ManagedSecretsClient',
|
|
547
|
+
'ManagedSecretMetadata',
|
|
548
|
+
'ManagedSecretWriteResult',
|
|
549
|
+
'ManagedSecretDeleteResult',
|
|
550
|
+
'SandboxCreateOptions',
|
|
551
|
+
'SandboxNetworkPolicy',
|
|
552
|
+
|
|
553
|
+
# Evolve Results
|
|
554
|
+
'AgentResponse',
|
|
555
|
+
'CheckpointInfo',
|
|
556
|
+
'ExecuteResult', # Backward compatibility alias for AgentResponse
|
|
557
|
+
'OutputResult',
|
|
558
|
+
'RunCost',
|
|
559
|
+
'SessionCost',
|
|
560
|
+
'SessionStatus',
|
|
561
|
+
'SessionInfo',
|
|
562
|
+
'SessionPage',
|
|
563
|
+
'SessionEvent',
|
|
564
|
+
'SessionTranscript',
|
|
565
|
+
'BrowserReplay',
|
|
566
|
+
'UsageReading',
|
|
567
|
+
|
|
568
|
+
# Standalone clients
|
|
569
|
+
'StorageClient',
|
|
570
|
+
'SessionsClient',
|
|
571
|
+
'browser_credentials',
|
|
572
|
+
'browser_profiles',
|
|
573
|
+
'managed_secrets',
|
|
574
|
+
|
|
575
|
+
# Hosted evals (datasets + agents + jobs + trials + auth)
|
|
576
|
+
'HostedClientConfig',
|
|
577
|
+
'DatasetsClient',
|
|
578
|
+
'AgentsClient',
|
|
579
|
+
'JobsClient',
|
|
580
|
+
'TrialsClient',
|
|
581
|
+
'AnalysesClient',
|
|
582
|
+
'ChecksClient',
|
|
583
|
+
'AuthClient',
|
|
584
|
+
'OrgsClient',
|
|
585
|
+
'EvolveAPIError',
|
|
586
|
+
'EvolveDigestMismatchError',
|
|
587
|
+
'EvolveIncompleteDownloadError',
|
|
588
|
+
'NoActiveVersionError',
|
|
589
|
+
'ImportSettleError',
|
|
590
|
+
'Dataset',
|
|
591
|
+
'ActiveDataset',
|
|
592
|
+
'DatasetManifestAuthor',
|
|
593
|
+
'DatasetManifestMetadata',
|
|
594
|
+
'DatasetVersion',
|
|
595
|
+
'DatasetVersionSource',
|
|
596
|
+
'DatasetVersionArchiveSource',
|
|
597
|
+
'DatasetVersionArchiveUrlSource',
|
|
598
|
+
'DatasetVersionGitSource',
|
|
599
|
+
'DatasetVersionHubSource',
|
|
600
|
+
'DatasetRef',
|
|
601
|
+
'DatasetSelector',
|
|
602
|
+
'DatasetFailedTask',
|
|
603
|
+
'TaskBuild',
|
|
604
|
+
'TaskBuildFailure',
|
|
605
|
+
'DatasetImport',
|
|
606
|
+
'DatasetImportFailure',
|
|
607
|
+
'DatasetImportProgress',
|
|
608
|
+
'ImportTaskFailure',
|
|
609
|
+
'ImportCodeBuildMeter',
|
|
610
|
+
'ImportImageCounts',
|
|
611
|
+
'ImportPhaseProgress',
|
|
612
|
+
'ImportWarning',
|
|
613
|
+
'Task',
|
|
614
|
+
'TaskProviderVerdict',
|
|
615
|
+
'DatasetPreflight',
|
|
616
|
+
'PreflightDeferredCheck',
|
|
617
|
+
'PreflightManifestVerdict',
|
|
618
|
+
'PreflightTaskVerdict',
|
|
619
|
+
'TaskNote',
|
|
620
|
+
'AgentArm',
|
|
621
|
+
'AgentDatasetStats',
|
|
622
|
+
'Job',
|
|
623
|
+
'JobAnalysisStats',
|
|
624
|
+
'JobBuildExclusion',
|
|
625
|
+
'JobCounts',
|
|
626
|
+
'JobDeleteResult',
|
|
627
|
+
'JobFailure',
|
|
628
|
+
'JobRetryConfig',
|
|
629
|
+
'JobRetryConfigInput',
|
|
630
|
+
'JobSecretRef',
|
|
631
|
+
'JobSecretInline',
|
|
632
|
+
'JobStats',
|
|
633
|
+
'JobStatus',
|
|
634
|
+
'AnalyzeConfig',
|
|
635
|
+
'AnalyzeConfigInput',
|
|
636
|
+
'AnalysisCheck',
|
|
637
|
+
'AnalysisEvidence',
|
|
638
|
+
'AnalysisFailure',
|
|
639
|
+
'Rubric',
|
|
640
|
+
'RubricCriterion',
|
|
641
|
+
'TrialAnalysis',
|
|
642
|
+
'CheckConfigInput',
|
|
643
|
+
'CheckSource',
|
|
644
|
+
'TaskCheck',
|
|
645
|
+
'Check',
|
|
646
|
+
'TrialStatus',
|
|
647
|
+
'EvalSandboxProvider',
|
|
648
|
+
'SpendSource',
|
|
649
|
+
'VerifierEnvironmentMode',
|
|
650
|
+
'AttemptPhase',
|
|
651
|
+
'JobTaskRollup',
|
|
652
|
+
'PassAtKGroup',
|
|
653
|
+
'PassAtKPoint',
|
|
654
|
+
'pass_at_k',
|
|
655
|
+
'SourceJob',
|
|
656
|
+
'SkillLock',
|
|
657
|
+
'SkillUpload',
|
|
658
|
+
'SkillUploadPage',
|
|
659
|
+
'SkillsClient',
|
|
660
|
+
'TrialTally',
|
|
661
|
+
'JobEvent',
|
|
662
|
+
'JobEventType',
|
|
663
|
+
'InfraFailureSignature',
|
|
664
|
+
'CompareResponse',
|
|
665
|
+
'CompareJobAggregate',
|
|
666
|
+
'CompareCell',
|
|
667
|
+
'CompareCoverage',
|
|
668
|
+
'CompareTaskRow',
|
|
669
|
+
'Trial',
|
|
670
|
+
'TrialRetry',
|
|
671
|
+
'TimingInfo',
|
|
672
|
+
'ModelInfo',
|
|
673
|
+
'AgentInfo',
|
|
674
|
+
'AgentResult',
|
|
675
|
+
'JudgeResult',
|
|
676
|
+
'VerifierResult',
|
|
677
|
+
'ExceptionInfo',
|
|
678
|
+
'StopResponse',
|
|
679
|
+
'TraceEvent',
|
|
680
|
+
'TraceEventPage',
|
|
681
|
+
'GATEWAY_TRACE_SEQ_BASE',
|
|
682
|
+
'gateway_usage_of',
|
|
683
|
+
'JobGrepGroup',
|
|
684
|
+
'JobGrepPage',
|
|
685
|
+
'TrialFile',
|
|
686
|
+
'TrialFilePage',
|
|
687
|
+
'JobPage',
|
|
688
|
+
'TrialPage',
|
|
689
|
+
'AnalysisPage',
|
|
690
|
+
'CheckPage',
|
|
691
|
+
'JobListScope',
|
|
692
|
+
'AnalysisStatus',
|
|
693
|
+
'AnalysisLabel',
|
|
694
|
+
'CheckStatus',
|
|
695
|
+
'CheckLabel',
|
|
696
|
+
'JobTaskRollupPage',
|
|
697
|
+
'DatasetPage',
|
|
698
|
+
'AgentPage',
|
|
699
|
+
'TaskPage',
|
|
700
|
+
'Agent',
|
|
701
|
+
'DatasetImportPage',
|
|
702
|
+
'JobImport',
|
|
703
|
+
'JobImportFailure',
|
|
704
|
+
'JobImportPage',
|
|
705
|
+
'JobImportPhaseProgress',
|
|
706
|
+
'JobImportProgress',
|
|
707
|
+
'JobImportSkippedTrial',
|
|
708
|
+
'JobImportSource',
|
|
709
|
+
'JobTaskLink',
|
|
710
|
+
'TrialTaskLink',
|
|
711
|
+
'TASK_LINKED_BY',
|
|
712
|
+
'TASK_LINK_REASONS',
|
|
713
|
+
'ApiKey',
|
|
714
|
+
'AuthStatus',
|
|
715
|
+
'Organization',
|
|
716
|
+
'OrganizationDetail',
|
|
717
|
+
'OrgQuota',
|
|
718
|
+
'OrgRole',
|
|
719
|
+
'OrgUsage',
|
|
720
|
+
'datasets',
|
|
721
|
+
'agents',
|
|
722
|
+
'jobs',
|
|
723
|
+
'trials',
|
|
724
|
+
'analyses',
|
|
725
|
+
'checks',
|
|
726
|
+
'skills',
|
|
727
|
+
'orgs',
|
|
728
|
+
'auth',
|
|
729
|
+
'hosted',
|
|
730
|
+
'meta',
|
|
731
|
+
'HostedEvolve',
|
|
732
|
+
'CapabilityDocument',
|
|
733
|
+
'AgentCapability',
|
|
734
|
+
'AgentModelOption',
|
|
735
|
+
'EFFORT_SUPPORT_VALUES',
|
|
736
|
+
'ManagedProviderCapability',
|
|
737
|
+
'ProviderCapability',
|
|
738
|
+
'StatusVocabulary',
|
|
739
|
+
'ReportedAgentResult',
|
|
740
|
+
'ReportedTotals',
|
|
741
|
+
'TrialUploadProvenance',
|
|
742
|
+
'UploadProvenance',
|
|
743
|
+
'UpstreamStatus',
|
|
744
|
+
'HOSTED_ERROR_CODES',
|
|
745
|
+
'HostedErrorCode',
|
|
746
|
+
'is_hosted_error_code',
|
|
747
|
+
|
|
748
|
+
# Standalone functions
|
|
749
|
+
'storage',
|
|
750
|
+
'sessions',
|
|
751
|
+
'list_checkpoints',
|
|
752
|
+
|
|
753
|
+
# Swarm Configuration
|
|
754
|
+
'SwarmConfig',
|
|
755
|
+
'BestOfConfig',
|
|
756
|
+
'VerifyConfig',
|
|
757
|
+
|
|
758
|
+
# Swarm Results
|
|
759
|
+
'SwarmResult',
|
|
760
|
+
'SwarmResultList',
|
|
761
|
+
'ReduceResult',
|
|
762
|
+
'BestOfResult',
|
|
763
|
+
'BestOfInfo',
|
|
764
|
+
'VerifyInfo',
|
|
765
|
+
'VerifyDecision',
|
|
766
|
+
|
|
767
|
+
# Swarm Metadata
|
|
768
|
+
'IndexedMeta',
|
|
769
|
+
'ReduceMeta',
|
|
770
|
+
'JudgeMeta',
|
|
771
|
+
'VerifyMeta',
|
|
772
|
+
|
|
773
|
+
# Swarm Helpers
|
|
774
|
+
'is_swarm_result',
|
|
775
|
+
|
|
776
|
+
# Swarm Callback types
|
|
777
|
+
'OnCandidateCompleteCallback',
|
|
778
|
+
'OnJudgeCompleteCallback',
|
|
779
|
+
'OnWorkerCompleteCallback',
|
|
780
|
+
'OnVerifierCompleteCallback',
|
|
781
|
+
|
|
782
|
+
# Pipeline Configuration
|
|
783
|
+
'MapConfig',
|
|
784
|
+
'FilterConfig',
|
|
785
|
+
'ReduceConfig',
|
|
786
|
+
|
|
787
|
+
# Pipeline Results
|
|
788
|
+
'StepResult',
|
|
789
|
+
'PipelineResult',
|
|
790
|
+
|
|
791
|
+
# Pipeline Events
|
|
792
|
+
'PipelineEvents',
|
|
793
|
+
'StepStartEvent',
|
|
794
|
+
'StepCompleteEvent',
|
|
795
|
+
'StepErrorEvent',
|
|
796
|
+
'ItemRetryEvent',
|
|
797
|
+
'WorkerCompleteEvent',
|
|
798
|
+
'VerifierCompleteEvent',
|
|
799
|
+
'CandidateCompleteEvent',
|
|
800
|
+
'JudgeCompleteEvent',
|
|
801
|
+
'EmitOption',
|
|
802
|
+
|
|
803
|
+
# Retry — the SWARM client-side retry helper. The hosted job auto-retry
|
|
804
|
+
# policy is a different shape with its own names: JobRetryConfig /
|
|
805
|
+
# JobRetryConfigInput above (the spec calls that pair RetryConfig /
|
|
806
|
+
# RetryConfigInput; the Python export is prefixed so the two never shadow).
|
|
807
|
+
'RetryConfig',
|
|
808
|
+
'OnItemRetryCallback',
|
|
809
|
+
'execute_with_retry',
|
|
810
|
+
|
|
811
|
+
# Utilities
|
|
812
|
+
'read_local_dir',
|
|
813
|
+
'save_local_dir',
|
|
814
|
+
|
|
815
|
+
# Exceptions
|
|
816
|
+
'SandboxNotFoundError',
|
|
817
|
+
'BridgeConnectionError',
|
|
818
|
+
'BridgeBuildError',
|
|
819
|
+
]
|