@evolvingmachines/evolve 0.0.65 → 0.0.67-train-harness-wave-2026-09-25.20260926.e00a8a6d

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 (153) hide show
  1. package/dist/{chunk-DK2MGUPB.js → chunk-DI6LPW2B.js} +2 -2
  2. package/dist/cli/index.cjs +29 -29
  3. package/dist/cli/index.d.cts +3 -3
  4. package/dist/cli/index.d.ts +3 -3
  5. package/dist/cli/index.js +18 -18
  6. package/dist/index.cjs +64 -60
  7. package/dist/index.d.cts +297 -18
  8. package/dist/index.d.ts +297 -18
  9. package/dist/index.js +48 -44
  10. package/dist/{types-B_qmzlMk.d.cts → types-Dj0iMl5V.d.cts} +70 -90
  11. package/dist/{types-B_qmzlMk.d.ts → types-Dj0iMl5V.d.ts} +70 -90
  12. package/harness-capabilities.json +285 -0
  13. package/package.json +9 -6
  14. package/skills/create-adapter/SKILL.md +71 -26
  15. package/skills/create-task/SKILL.md +124 -66
  16. package/skills/evolve/SKILL.md +37 -20
  17. package/skills/evolve-evals/SKILL.md +142 -69
  18. package/skills/evolve-evals/references/cli-reference/agent.md +76 -0
  19. package/skills/evolve-evals/references/cli-reference/analysis.md +78 -0
  20. package/skills/evolve-evals/references/cli-reference/analyze.md +97 -0
  21. package/skills/evolve-evals/references/cli-reference/auth.md +96 -0
  22. package/skills/evolve-evals/references/cli-reference/check.md +157 -0
  23. package/skills/evolve-evals/references/cli-reference/dataset.md +154 -0
  24. package/skills/evolve-evals/references/cli-reference/filesystem.md +168 -0
  25. package/skills/evolve-evals/references/cli-reference/index.md +149 -0
  26. package/skills/evolve-evals/references/cli-reference/job.md +198 -0
  27. package/skills/evolve-evals/references/cli-reference/run.md +188 -0
  28. package/skills/evolve-evals/references/cli-reference/secrets.md +77 -0
  29. package/skills/evolve-evals/references/cli-reference/session.md +56 -0
  30. package/skills/evolve-evals/references/cli-reference/skill.md +52 -0
  31. package/skills/evolve-evals/references/cli-reference/skills.md +85 -0
  32. package/skills/evolve-evals/references/cli-reference/trial.md +115 -0
  33. package/skills/evolve-evals/references/cli-reference/upload.md +72 -0
  34. package/skills/evolve-evals/references/core-concepts/agents.md +101 -0
  35. package/skills/evolve-evals/references/core-concepts/analyze.md +143 -0
  36. package/skills/evolve-evals/references/core-concepts/check.md +116 -0
  37. package/skills/evolve-evals/references/core-concepts/compatibility.md +39 -0
  38. package/skills/evolve-evals/references/core-concepts/compose.md +103 -0
  39. package/skills/evolve-evals/references/core-concepts/datasets.md +234 -0
  40. package/skills/evolve-evals/references/core-concepts/index.md +52 -0
  41. package/skills/evolve-evals/references/core-concepts/jobs.md +223 -0
  42. package/skills/evolve-evals/references/core-concepts/models.md +73 -0
  43. package/skills/evolve-evals/references/core-concepts/multi-step.md +93 -0
  44. package/skills/evolve-evals/references/core-concepts/rewardkit.md +341 -0
  45. package/skills/evolve-evals/references/core-concepts/sandboxes.md +73 -0
  46. package/skills/evolve-evals/references/core-concepts/secrets.md +86 -0
  47. package/skills/evolve-evals/references/core-concepts/sharing.md +81 -0
  48. package/skills/evolve-evals/references/core-concepts/skills.md +100 -0
  49. package/skills/evolve-evals/references/core-concepts/task-config.md +169 -0
  50. package/skills/evolve-evals/references/core-concepts/task-environment.md +127 -0
  51. package/skills/evolve-evals/references/core-concepts/task-reference.md +191 -0
  52. package/skills/evolve-evals/references/core-concepts/task-verifiers.md +209 -0
  53. package/skills/evolve-evals/references/core-concepts/tasks.md +90 -0
  54. package/skills/evolve-evals/references/core-concepts/teams.md +128 -0
  55. package/skills/evolve-evals/references/core-concepts/trial-outputs.md +225 -0
  56. package/skills/evolve-evals/references/core-concepts/trials.md +129 -0
  57. package/skills/evolve-evals/references/core-concepts/upload-sdk-session.md +240 -0
  58. package/skills/evolve-evals/references/core-concepts/upload.md +166 -0
  59. package/skills/evolve-evals/references/dashboard/checks.md +54 -0
  60. package/skills/evolve-evals/references/dashboard/datasets.md +65 -0
  61. package/skills/evolve-evals/references/dashboard/jobs.md +106 -0
  62. package/skills/evolve-evals/references/dashboard/traces.md +54 -0
  63. package/skills/evolve-evals/references/dashboard/trial-viewer.md +77 -0
  64. package/skills/evolve-evals/references/getting-started/first-task.md +228 -0
  65. package/skills/evolve-evals/references/getting-started/installation.md +79 -0
  66. package/skills/evolve-evals/references/getting-started/quick-start.md +100 -0
  67. package/skills/evolve-evals/references/index.md +58 -0
  68. package/skills/evolve-evals/references/sdk/http.md +110 -0
  69. package/skills/evolve-evals/references/sdk/python.md +108 -0
  70. package/skills/evolve-evals/references/sdk/typescript.md +104 -0
  71. package/skills/evolve-evals/references/sdk-reference/agents.md +75 -0
  72. package/skills/evolve-evals/references/sdk-reference/analyses.md +125 -0
  73. package/skills/evolve-evals/references/sdk-reference/auth.md +171 -0
  74. package/skills/evolve-evals/references/sdk-reference/checks.md +146 -0
  75. package/skills/evolve-evals/references/sdk-reference/datasets.md +170 -0
  76. package/skills/evolve-evals/references/sdk-reference/error-codes.md +231 -0
  77. package/skills/evolve-evals/references/sdk-reference/errors.md +98 -0
  78. package/skills/evolve-evals/references/sdk-reference/filesystem.md +166 -0
  79. package/skills/evolve-evals/references/sdk-reference/index.md +161 -0
  80. package/skills/evolve-evals/references/sdk-reference/jobs.md +250 -0
  81. package/skills/evolve-evals/references/sdk-reference/meta.md +54 -0
  82. package/skills/evolve-evals/references/sdk-reference/methods/agents.md +154 -0
  83. package/skills/evolve-evals/references/sdk-reference/methods/analyses.md +211 -0
  84. package/skills/evolve-evals/references/sdk-reference/methods/auth.md +257 -0
  85. package/skills/evolve-evals/references/sdk-reference/methods/checks.md +462 -0
  86. package/skills/evolve-evals/references/sdk-reference/methods/datasets.md +687 -0
  87. package/skills/evolve-evals/references/sdk-reference/methods/filesystem.md +527 -0
  88. package/skills/evolve-evals/references/sdk-reference/methods/jobs.md +1023 -0
  89. package/skills/evolve-evals/references/sdk-reference/methods/meta.md +213 -0
  90. package/skills/evolve-evals/references/sdk-reference/methods/secrets.md +157 -0
  91. package/skills/evolve-evals/references/sdk-reference/methods/skills.md +125 -0
  92. package/skills/evolve-evals/references/sdk-reference/methods/trials.md +371 -0
  93. package/skills/evolve-evals/references/sdk-reference/secrets.md +104 -0
  94. package/skills/evolve-evals/references/sdk-reference/skills.md +66 -0
  95. package/skills/evolve-evals/references/sdk-reference/trials.md +164 -0
  96. package/skills/evolve-evals/references/sdk-reference/types.md +1255 -0
  97. package/skills/publish/SKILL.md +103 -79
  98. package/skills/rewardkit/SKILL.md +78 -23
  99. package/spec/openapi.yaml +164 -160
  100. package/skills/evolve-evals/references/cli-reference/agent.mdx +0 -79
  101. package/skills/evolve-evals/references/cli-reference/analysis.mdx +0 -160
  102. package/skills/evolve-evals/references/cli-reference/analyze.mdx +0 -84
  103. package/skills/evolve-evals/references/cli-reference/auth.mdx +0 -133
  104. package/skills/evolve-evals/references/cli-reference/check.mdx +0 -263
  105. package/skills/evolve-evals/references/cli-reference/dataset.mdx +0 -151
  106. package/skills/evolve-evals/references/cli-reference/index.mdx +0 -108
  107. package/skills/evolve-evals/references/cli-reference/job.mdx +0 -278
  108. package/skills/evolve-evals/references/cli-reference/run.mdx +0 -204
  109. package/skills/evolve-evals/references/cli-reference/secrets.mdx +0 -95
  110. package/skills/evolve-evals/references/cli-reference/skill.mdx +0 -61
  111. package/skills/evolve-evals/references/cli-reference/skills.mdx +0 -81
  112. package/skills/evolve-evals/references/cli-reference/trial.mdx +0 -181
  113. package/skills/evolve-evals/references/cli-reference/upload.mdx +0 -36
  114. package/skills/evolve-evals/references/core-concepts/agents.mdx +0 -106
  115. package/skills/evolve-evals/references/core-concepts/analyze.mdx +0 -86
  116. package/skills/evolve-evals/references/core-concepts/check.mdx +0 -64
  117. package/skills/evolve-evals/references/core-concepts/datasets.mdx +0 -138
  118. package/skills/evolve-evals/references/core-concepts/index.mdx +0 -42
  119. package/skills/evolve-evals/references/core-concepts/jobs.mdx +0 -151
  120. package/skills/evolve-evals/references/core-concepts/models.mdx +0 -68
  121. package/skills/evolve-evals/references/core-concepts/sandboxes.mdx +0 -52
  122. package/skills/evolve-evals/references/core-concepts/secrets.mdx +0 -41
  123. package/skills/evolve-evals/references/core-concepts/sharing.mdx +0 -35
  124. package/skills/evolve-evals/references/core-concepts/skills.mdx +0 -42
  125. package/skills/evolve-evals/references/core-concepts/tasks.mdx +0 -216
  126. package/skills/evolve-evals/references/core-concepts/teams.mdx +0 -36
  127. package/skills/evolve-evals/references/core-concepts/trial-outputs.mdx +0 -117
  128. package/skills/evolve-evals/references/core-concepts/trials.mdx +0 -103
  129. package/skills/evolve-evals/references/core-concepts/upload.mdx +0 -93
  130. package/skills/evolve-evals/references/dashboard/checks.mdx +0 -21
  131. package/skills/evolve-evals/references/dashboard/datasets.mdx +0 -24
  132. package/skills/evolve-evals/references/dashboard/jobs.mdx +0 -65
  133. package/skills/evolve-evals/references/dashboard/traces.mdx +0 -17
  134. package/skills/evolve-evals/references/dashboard/trial-viewer.mdx +0 -30
  135. package/skills/evolve-evals/references/getting-started/installation.mdx +0 -56
  136. package/skills/evolve-evals/references/getting-started/quick-start.mdx +0 -94
  137. package/skills/evolve-evals/references/index.mdx +0 -48
  138. package/skills/evolve-evals/references/sdk/python.mdx +0 -161
  139. package/skills/evolve-evals/references/sdk/typescript.mdx +0 -163
  140. package/skills/evolve-evals/references/sdk-reference/agents.mdx +0 -108
  141. package/skills/evolve-evals/references/sdk-reference/analyses.mdx +0 -222
  142. package/skills/evolve-evals/references/sdk-reference/auth.mdx +0 -116
  143. package/skills/evolve-evals/references/sdk-reference/checks.mdx +0 -300
  144. package/skills/evolve-evals/references/sdk-reference/datasets.mdx +0 -346
  145. package/skills/evolve-evals/references/sdk-reference/errors.mdx +0 -210
  146. package/skills/evolve-evals/references/sdk-reference/index.mdx +0 -60
  147. package/skills/evolve-evals/references/sdk-reference/jobs.mdx +0 -822
  148. package/skills/evolve-evals/references/sdk-reference/meta.mdx +0 -52
  149. package/skills/evolve-evals/references/sdk-reference/skills.mdx +0 -69
  150. package/skills/evolve-evals/references/sdk-reference/trials.mdx +0 -302
  151. package/skills/evolve-evals/references/sdk-reference/types.mdx +0 -274
  152. package/skills/evolve-evals/references/snippets/global-options.mdx +0 -13
  153. package/skills/evolve-evals/references/snippets/list-flags.mdx +0 -23
@@ -0,0 +1,462 @@
1
+ ---
2
+ title: "Checks methods"
3
+ description: "Create task quality checks and read each checker’s result."
4
+ ---
5
+
6
+ Create `client` with `checks()`. A **check id** identifies the group. Each `results[]` entry has a **task check id** identifying one checker run.
7
+
8
+ ```text
9
+ Check: check.id
10
+ └── Task check: check.results[].id
11
+ ├── Result and evidence
12
+ ├── Transcript and logs
13
+ └── Sandbox files
14
+ ```
15
+
16
+ Python returns check and task-check records as dictionaries. Use `check["id"]` and `check["results"]`.
17
+
18
+ | Work | Methods |
19
+ | --- | --- |
20
+ | Create and follow | [create](#create), [get](#get), [list](#list), [defaults](#defaults), [watch](#watch) |
21
+ | Read one checker | [task](#task), [transcript](#transcript), [artifact](#artifact) — TypeScript only |
22
+ | Files and sharing | [download](#download), [taskFilesystem](#taskfilesystem), [share](#share), [unshare](#unshare), [shares](#shares) |
23
+
24
+ ## create
25
+
26
+ Check a local task directory, a directory of tasks, or a published dataset. Returns the accepted `Check` immediately.
27
+
28
+ ### Signature
29
+
30
+ ```ts TypeScript signature
31
+ create(input: CreateCheckInput): Promise<Check>;
32
+ ```
33
+
34
+ ```python Python signature
35
+ async def create(
36
+ directory: Optional[str] = None,
37
+ *,
38
+ dataset: Optional[str] = None,
39
+ name: Optional[str] = None,
40
+ agent: Optional[str] = None,
41
+ model_name: Optional[str] = None,
42
+ rubric: Optional[Rubric] = None,
43
+ prompt: Optional[str] = None,
44
+ reasoning_effort: Optional[str] = None,
45
+ sandbox_provider: Optional[EvalSandboxProvider] = None,
46
+ n_concurrent: Optional[int] = None,
47
+ include_task_names: Optional[List[str]] = None,
48
+ exclude_task_names: Optional[List[str]] = None,
49
+ n_tasks: Optional[int] = None,
50
+ on_upload_progress: Optional[Callable[[int, int], None]] = None,
51
+ ) -> Check: ...
52
+ ```
53
+
54
+ ```ts TypeScript
55
+ const check = await client.create({
56
+ source: {
57
+ directory: "./tasks"
58
+ },
59
+ n_tasks: 2,
60
+ });
61
+ ```
62
+
63
+ ```python Python
64
+ check = await client.create(
65
+ './tasks',
66
+ n_tasks=2,
67
+ )
68
+ ```
69
+
70
+ | Source | Inputs |
71
+ | --- | --- |
72
+ | Local directory | TypeScript: `source.directory`. Python: `directory` or the first positional argument. |
73
+ | Published version | TypeScript: `source.dataset`. Python: `dataset`. Use `name@version`. |
74
+
75
+ Supply exactly one source. A local source must be a directory, not an archive. `include_task_names` and `exclude_task_names` are glob lists; `n_tasks` caps the selected set after filtering. `n_concurrent` is bounded by organization capacity.
76
+
77
+ Optional `onUploadProgress(sent, total)` / `on_upload_progress(sent, total)` reports local transfer bytes. All omitted policy settings use [defaults](#defaults). The accepted check records the resolved policy. Follow with `watch(check.id)` / `watch(check["id"])`.
78
+
79
+ ### Input fields
80
+
81
+ ```ts
82
+ interface CheckConfigInput {
83
+ name?: string;
84
+ agent?: string;
85
+ model_name?: string;
86
+ rubric?: Rubric;
87
+ prompt?: string;
88
+ reasoning_effort?: string;
89
+ sandbox_provider?: EvalSandboxProvider;
90
+ n_concurrent?: number;
91
+ include_task_names?: string[];
92
+ exclude_task_names?: string[];
93
+ n_tasks?: number;
94
+ }
95
+
96
+ interface CreateCheckInput extends CheckConfigInput {
97
+ source: { directory: string } | { dataset: string };
98
+ onUploadProgress?: (sentBytes: number, totalBytes: number) => void;
99
+ }
100
+ ```
101
+
102
+ ## get
103
+
104
+ Read a check at any status. Returns `Check`, including one task-check result per selected task.
105
+
106
+ ### Signature
107
+
108
+ ```ts TypeScript signature
109
+ get(checkId: string): Promise<Check>;
110
+ ```
111
+
112
+ ```python Python signature
113
+ async def get(check_id: str) -> Check: ...
114
+ ```
115
+
116
+ ```ts TypeScript
117
+ const check = await client.get(checkId);
118
+ ```
119
+
120
+ ```python Python
121
+ check = await client.get(check_id)
122
+ ```
123
+
124
+ Use the group’s check id. See [all check fields](/sdk-reference/types#analysis-and-check-results).
125
+
126
+ ## list
127
+
128
+ List visible checks, newest first. Returns a page or an iterable of `Check`.
129
+
130
+ ### Signature
131
+
132
+ ```ts TypeScript signature
133
+ list(options?: ListChecksOptions): CheckList;
134
+ ```
135
+
136
+ ```python Python signature
137
+ def list(
138
+ *,
139
+ scope: Optional[JobListScope] = None,
140
+ status: Optional[List[CheckStatus]] = None,
141
+ dataset: Optional[str] = None,
142
+ limit: Optional[int] = None,
143
+ cursor: Optional[str] = None,
144
+ ) -> _PaginatedList: ...
145
+ ```
146
+
147
+ ```ts TypeScript
148
+ const page = await client.list({
149
+ dataset: "my-tasks@1.0",
150
+ status: ["completed"]
151
+ });
152
+ ```
153
+
154
+ ```python Python
155
+ page = await client.list(
156
+ dataset='my-tasks@1.0',
157
+ status=['completed'],
158
+ )
159
+ ```
160
+
161
+ Optional `scope`: `my` (default), `shared`, or `org`; `status`: a list of `queued`, `running`, or `completed`; `dataset`: a bare name or pinned `name@version`. `limit` defaults to 50 (maximum 200); `cursor` continues a page.
162
+
163
+ ## defaults
164
+
165
+ Read `CheckDefaults`: current model, reasoning effort, sandbox provider, rubric, and unrendered prompt template.
166
+
167
+ ### Signature
168
+
169
+ ```ts TypeScript signature
170
+ defaults(): Promise<CheckDefaults>;
171
+ ```
172
+
173
+ ```python Python signature
174
+ async def defaults() -> CheckDefaults: ...
175
+ ```
176
+
177
+ ```ts TypeScript
178
+ const defaults = await client.defaults();
179
+ ```
180
+
181
+ ```python Python
182
+ defaults = await client.defaults()
183
+ ```
184
+
185
+ Python returns a dictionary. The check’s prompt uses `{task_path}`, `{file_tree}`, and `{criteria_guidance}`; the output contract is appended after your template.
186
+
187
+ ## watch
188
+
189
+ Wait until every task check has settled. Returns the final `Check`, which may contain failed task checks.
190
+
191
+ ### Signature
192
+
193
+ ```ts TypeScript signature
194
+ watch(
195
+ checkId: string,
196
+ options?: WatchCheckOptions
197
+ ): Promise<Check>;
198
+ ```
199
+
200
+ ```python Python signature
201
+ async def watch(
202
+ check_id: str,
203
+ *,
204
+ on_progress: Optional[Callable[[Check], None]] = None,
205
+ poll_interval_s: float = 2.0,
206
+ timeout_s: Optional[float] = None,
207
+ ) -> Check: ...
208
+ ```
209
+
210
+ ```ts TypeScript
211
+ const check = await client.watch(checkId, {
212
+ onProgress: c => console.log(c.status)
213
+ });
214
+ ```
215
+
216
+ ```python Python
217
+ check = await client.watch(
218
+ check_id,
219
+ on_progress=lambda c: print(c['status']),
220
+ )
221
+ ```
222
+
223
+ Optional `onProgress(check)` / `on_progress(check)` runs when per-task statuses change. `pollIntervalMs` / `poll_interval_s` defaults to 2 seconds, doubles while unchanged to 30 seconds, and resets on change. TypeScript accepts `signal`; Python accepts `timeout_s`.
224
+
225
+ ## task
226
+
227
+ TypeScript only. Read one checker’s `TaskCheck` result at any status.
228
+
229
+ ### Signature
230
+
231
+ ```ts TypeScript signature
232
+ task(taskCheckId: string): Promise<TaskCheck>;
233
+ ```
234
+
235
+ ```ts TypeScript
236
+ const result = await client.task(taskCheckId);
237
+ ```
238
+
239
+ Use `check.results[].id`, not the group’s id. Python reads the same result within `check["results"]`. The result contains `checks`, attempts, measured cost, and typed failure.
240
+
241
+ ## transcript
242
+
243
+ TypeScript only. Read one checker’s own activity. Returns `TaskCheckTranscript`.
244
+
245
+ ### Signature
246
+
247
+ ```ts TypeScript signature
248
+ transcript(
249
+ taskCheckId: string,
250
+ options?: AnalysisTranscriptOptions,
251
+ ): Promise<TaskCheckTranscript>;
252
+ ```
253
+
254
+ ```ts TypeScript
255
+ const transcript = await client.transcript(taskCheckId, {
256
+ since: 0
257
+ });
258
+ ```
259
+
260
+ Optional `since` skips that many events; default 0. No server pagination. `total` counts all stored events; `gateway_calls` is separate and returned whole. [Transcript fields](/sdk-reference/types#analysis-and-check-results) include the owning `check_id` and dataset.
261
+
262
+ ## artifact
263
+
264
+ TypeScript only. Read one checker’s stored stdout, stderr, or captured home.
265
+
266
+ ### Signature
267
+
268
+ ```ts TypeScript signature
269
+ artifact(
270
+ taskCheckId: string,
271
+ stream: Exclude<AnalysisArtifactStream, "agent-home">,
272
+ ): Promise<string | null>;
273
+ artifact(
274
+ taskCheckId: string,
275
+ stream: "agent-home",
276
+ ): Promise<Record<string, string> | null>;
277
+ ```
278
+
279
+ ```ts TypeScript
280
+ const stderr = await client.artifact(
281
+ taskCheckId,
282
+ "trace-stderr"
283
+ );
284
+ ```
285
+
286
+ Use the task check id. `trace-stdout` and `trace-stderr` return `string | null`; `agent-home` returns a path-to-text map or null. Null means not stored. Python can read stored evidence from `download(task_check_id)`.
287
+
288
+ ## download
289
+
290
+ Download a settled whole check or one task check as a `.tar.gz`. Both id forms use the same method.
291
+
292
+ ### Signature
293
+
294
+ ```ts TypeScript signature
295
+ download(id: string): Promise<Buffer>;
296
+ download(
297
+ id: string,
298
+ options: { to: string }
299
+ ): Promise<string>;
300
+ download(
301
+ id: string,
302
+ options: { stream: true }
303
+ ): Promise<ReadableStream<Uint8Array>>;
304
+ download(
305
+ id: string,
306
+ options?: DownloadJobOptions
307
+ ): Promise<Buffer | string | ReadableStream<Uint8Array>>;
308
+ ```
309
+
310
+ ```python Python signature
311
+ async def download(
312
+ id: str,
313
+ *,
314
+ to: Optional[str] = None,
315
+ ) -> bytes | str: ...
316
+ ```
317
+
318
+ ```ts TypeScript
319
+ const path = await client.download(checkId, {
320
+ to: "./results"
321
+ });
322
+ ```
323
+
324
+ ```python Python
325
+ path = await client.download(
326
+ check_id,
327
+ to='./results',
328
+ )
329
+ ```
330
+
331
+ Omit options for `Buffer` / `bytes`; use `to` for a saved file path. TypeScript also accepts `{ stream: true }`, a raw stream whose integrity the caller verifies. Python has no stream option. A live group or task check returns `check_not_terminal`. The group archive includes `check_report.json` and each checker’s wrapper trial.
332
+
333
+ ## taskFilesystem
334
+
335
+ Python: `task_filesystem`. Get one checker’s `RunFilesystem`. Requires both the group id and task check id.
336
+
337
+ ### Signature
338
+
339
+ ```ts TypeScript signature
340
+ taskFilesystem(
341
+ checkId: string,
342
+ taskCheckId: string
343
+ ): RunFilesystem;
344
+ ```
345
+
346
+ ```python Python signature
347
+ def task_filesystem(
348
+ check_id: str,
349
+ task_check_id: str,
350
+ ) -> 'RunFilesystem': ...
351
+ ```
352
+
353
+ ```ts TypeScript
354
+ const fs = client.taskFilesystem(checkId, taskCheckId);
355
+ ```
356
+
357
+ ```python Python
358
+ fs = client.task_filesystem(
359
+ check_id,
360
+ task_check_id,
361
+ )
362
+ ```
363
+
364
+ See [filesystem methods](/sdk-reference/methods/filesystem) for files, sandbox logs, and processes.
365
+
366
+ ## share
367
+
368
+ Grant read access to a check you created. Returns `JobShares`, the same share-state shape used by jobs.
369
+
370
+ A check can have up to 50 email grants.
371
+
372
+ ### Signature
373
+
374
+ ```ts TypeScript signature
375
+ share(
376
+ id: string,
377
+ request: JobShareRequest
378
+ ): Promise<JobShares>;
379
+ ```
380
+
381
+ ```python Python signature
382
+ async def share(
383
+ id: str,
384
+ *,
385
+ link: bool = False,
386
+ emails: Optional[List[str]] = None,
387
+ ) -> JobShares: ...
388
+ ```
389
+
390
+ ```ts TypeScript
391
+ const shares = await client.share(checkId, {
392
+ link: true
393
+ });
394
+ ```
395
+
396
+ ```python Python
397
+ shares = await client.share(
398
+ check_id,
399
+ link=True,
400
+ )
401
+ ```
402
+
403
+ Supply `link: true` / `link=True`, `emails: string[]` / `emails=[...]`, or both. New email grants send invitations. Recipients can read the check, its task checks, and downloads. They cannot operate it. [Share-state fields](/sdk-reference/types#sharing-and-deletion) describe the result.
404
+
405
+ ## unshare
406
+
407
+ Revoke a check’s link or email grants. Returns `JobShares`. Creator-only and idempotent.
408
+
409
+ ### Signature
410
+
411
+ ```ts TypeScript signature
412
+ unshare(
413
+ id: string,
414
+ request: JobShareRequest
415
+ ): Promise<JobShares>;
416
+ ```
417
+
418
+ ```python Python signature
419
+ async def unshare(
420
+ id: str,
421
+ *,
422
+ link: bool = False,
423
+ emails: Optional[List[str]] = None,
424
+ ) -> JobShares: ...
425
+ ```
426
+
427
+ ```ts TypeScript
428
+ const shares = await client.unshare(checkId, {
429
+ link: true
430
+ });
431
+ ```
432
+
433
+ ```python Python
434
+ shares = await client.unshare(
435
+ check_id,
436
+ link=True,
437
+ )
438
+ ```
439
+
440
+ Takes the same `link` and `emails` fields as `share`.
441
+
442
+ ## shares
443
+
444
+ Read the check’s whole share state: visibility, link, and email grants. Creator-only.
445
+
446
+ ### Signature
447
+
448
+ ```ts TypeScript signature
449
+ shares(id: string): Promise<JobShares>;
450
+ ```
451
+
452
+ ```python Python signature
453
+ async def shares(id: str) -> JobShares: ...
454
+ ```
455
+
456
+ ```ts TypeScript
457
+ const shares = await client.shares(checkId);
458
+ ```
459
+
460
+ ```python Python
461
+ shares = await client.shares(check_id)
462
+ ```